Tải bản đầy đủ (.pdf) (81 trang)

Hệ thống đề xuất địa điểm sử dụng phương pháp lai (hybrid) trên dữ liệu foody vn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.1 MB, 81 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------

NGUYỄN MINH KHÔI

HỆ THỐNG ĐỀ XUẤT ĐỊA ĐIỂM SỬ DỤNG
PHƯƠNG PHÁP LAI (HYBRID) TRÊN DỮ LIỆU
FOODY.VN
LUẬN VĂN THẠC SĨ
Chuyên ngành : Công nghệ Thông tin
Mã số ngành : 60480201

TP. HỒ CHÍ MINH, tháng 04 năm 2015


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------

NGUYỄN MINH KHÔI

HỆ THỐNG ĐỀ XUẤT ĐỊA ĐIỂM SỬ DỤNG
PHƯƠNG PHÁP LAI (HYBRID) TRÊN DỮ LIỆU
FOODY.VN
LUẬN VĂN THẠC SĨ
Chuyên ngành : Công nghệ Thông tin
Mã số ngành : 60480201
CÁN BỘ HƯỚNG DẪN KHOA HỌC: TS NGUYỄN THỊ THANH SANG


TP. HỒ CHÍ MINH, tháng 04 năm 2015


CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

Cán bộ hướng dẫn khoa học : TS. Nguyễn Thị Thanh Sang

Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Công nghệ TP. HCM ngày 11
tháng 04 năm 2015.
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ Luận văn Thạc sĩ)
TT

Họ và tên

Chủ tịch Hội đồng

1

GS.TSKH. Hoàng Văn Kiếm

Chủ tịch

2

TS. Võ Đình Bảy

Phản biện 1


3

TS. Lư Nhật Vinh

Phản biện 2

4

PGS.TSKH. Nguyễn Xuân Huy

5

TS. Nguyễn Văn Mùi

Ủy viên
Ủy viên, Thư ký

Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã được sửa chữa
(nếu có).
Chủ tịch Hội đồng đánh giá LV


TRƯỜNG ĐH CÔNG NGHỆ TP. HCM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

PHÒNG QLKH – ĐTSĐH

Độc lập – Tự do – Hạnh phúc
TP. HCM, ngày..11…tháng…04.. năm 2015


NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: ...........NGUYỄN MINH KHÔI.........................Giới tính: ..Nam ...........
Ngày, tháng, năm sinh: 20-12-1987...............................................Nơi sinh:....Long An....
Chuyên ngành: .............Công nghệ thông tin.................................MSHV:1341860007....
I- Tên đề tài:
HỆ THỐNG ĐỀ XUẤT ĐỊA ĐIỂM SỬ DỤNG PHƯƠNG PHÁP LAI (HYBRID)
TRÊN DỮ LIỆU FOODY.VN ...........................................................................................
II- Nhiệm vụ và nội dung:
- Nghiên cứu và xây dựng Hệ thống đề xuất dựa trên kết hợp giữa đặc trưng của dữ
liệu địa điểm và đánh giá của người dùng và kết hợp với dữ liệu về địa lý để loại trừ các
kết quả không thực tế về mặt không gian.
+ Đưa ra kết quả đề xuất dựa vào đặc trưng của địa điểm.
+ Đưa ra kết quả dựa vào đánh giá của người dùng.
+ Kết hợp các kết quả trên và loại trừ các kết quả không phù hợp với vị trí
địa lý hiện tại của người dùng.
+ So sánh kết quả khi không có và có kết hợp với vị trí địa lý.
III- Ngày giao nhiệm vụ: 08-08-2014
IV- Ngày hoàn thành nhiệm vụ: 11-04-2014 ....................................................................
V- Cán bộ hướng dẫn: .........................................................................................................
……………TS NGUYỄN THỊ THANH SANG ................................................................
CÁN BỘ HƯỚNG DẪN
(Họ tên và chữ ký)

KHOA QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký)


i


LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả nêu
trong Luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác.
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này
đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc.

Học viên thực hiện Luận văn
(Ký và ghi rõ họ tên)


ii

LỜI CÁM ƠN
Lời cảm ơn chân thành chúng tôi xin gởi đến Ban Giám Hiệu, toàn thể cán bộ nhân viên,
giảng viên trường Đại Học HUTECH, Ban lãnh đạo Phòng Quản Lý Khoa Học và Đào Tạo
Sau Đại Học, khoa Công Nghệ Thông Tin đã tạo điều kiện thuận lợi cho chúng tôi học tập và
nghiên cứu trong suốt học trình cao học.
Chúng tôi xin chân thành tri ân đến các thầy cô đã trực tiếp động viên, hướng dẫn chúng
tôi trong suốt học trình: PGS.TS Lê Hoài Bắc, PGS.TS Nguyễn Xuân Huy, TS Nguyễn An
Khương, TS Nguyễn Chánh Thành, TS Nguyễn Thị Thanh Sang, TS Tân Hạnh, TS Nguyễn
Đình Thuân, TS Lê Mạnh Hải, TS Nguyễn Tuấn Đăng, TS Lư Nhật Vinh.
Với lòng tri ân sâu sắc, chúng tôi muốn nói lời cảm ơn chân thành đến cô TS Nguyễn
Thị Thanh Sang đã rất tận tụy và nghiêm túc hướng dẫn chúng tôi trong quá trình thực hiện
nghiên cứu này.
Cuối cùng nhưng cũng là một yếu tố quan trọng giúp chúng tôi hoàn thành nghiên cứu
này, đó là gia đình. Chúng tôi muốn nói lời tri ân chân thành đến mẹ, em chúng tôi đã động
viên và chia sẻ mọi hoàn cảnh với chúng tôi trong suốt học trình này.
Nguyễn Minh Khôi



iii

TÓM TẮT
Hiện nay Smart Phone ngày càng phổ biến. Các Smart Phone được tích hợp định vị
GPS. Với chức năng này kết hợp với ứng dụng mạng xã hội địa điểm người dùng có thể
chia sẻ những nơi mình biết hay đã tới. Trong số đó Foody.vn là mạng xã hội địa điểm lớn
nhất Việt Nam. Sau một thời gian phát triển, số lượng địa điểm được chia sẻ trên Foody.vn
trở nên quá nhiều làm cho người dùng bị quá tải. Cần thiết phải nghiên cứu Hệ thống đề
xuất (Recommender System - RS) có thể áp dụng trên dữ liệu địa điểm.
Trong bài toán đề xuất địa điểm cần phải kết hợp giữa đặc trưng của địa điểm, đánh
giá của người dùng và vị trí địa lý của địa điểm với vị trí của người dùng có khả năng tới.
Với những lý do trên tôi chọn đề tài: “Hệ thống đề xuất địa điểm sử dụng phương
pháp lai (Hybrid) trên dữ liệu Foody.vn”
Các yêu cầu cần thực hiện trong đề tài là: Nghiên cứu Hệ thống đề xuất dựa trên kết
hợp giữa đặc trưng của dữ liệu địa điểm, đánh giá của người dùng và vị trí địa lý để loại trừ
các kết quả không thực tế về mặt không gian.
- Cụ thể:
+ Đưa ra kết quả đề xuất dựa vào đặc trưng của địa điểm.
+ Đưa ra kết quả dựa vào đánh giá của người dùng.
+ Kết hợp các kết quả trên và loại trừ các kết quả không phù hợp với khu vực
địa lý mà người dùng hay đến.
+ So sánh kết quả khi không có và có kết hợp với khu vực địa lý.


iv

ABSTRACT
The Smart Phone technology is becoming more innovative. All Smart Phones now
contain a GPS tracking device. With this function and the ability to browse the World Wide

Web, a person can share their current as well as previous locations. Vide Web Foody.vn is
one of the most popular social network of attractions in Vietnam. After a period time of
Web development, the number of interesting locations shared on Foody.vn drastically
increases and overloads customers. Therefore, the RS needs to be used for attractive places
recommendation on Web, which can be utilized with the smart phone devices. The
concerning problem is how to effectively combine the recognition of locations, consumers’
reports, destinations, and user profiles for the best recommendation results.
With all reasons above, we decide to make the topic: "The places recommender
system using Hybric method on Foody.vn data."
The recommender system is proposed based on the features of places combined with
user ratings and geographic location in Foody.vn website. In particular, the objectives of
this thesis are listed as follows:
+ Giving the recommendation results based on the features of places
+ Giving the recommendation results based on the user ratings.
+ Combining all above results and eliminating unrealistic results with present
geographic location of users
+ Comparing and evaluating the experimental results.


v
MỤC LỤC
DANH MỤC CÁC THUẬT NGỮ VÀ CHỮ VIẾT TẮT .................................................. vii
DANH MỤC CÁC HÌNH .................................................................................................... ix
DANH MỤC CÁC BẢNG ................................................................................................... x
CHƯƠNG 1 MỞ ĐẦU ......................................................................................................... 1
1.1 Giới thiệu ..................................................................................................................... 1
1.2 Lý do chọn đề tài ......................................................................................................... 1
1.3 Mục tiêu của đề tài ....................................................................................................... 2
1.4 Đối tượng và phạm vi nghiên cứu ............................................................................... 3
1.5 Tổ chức của luận văn ................................................................................................... 3

CHƯƠNG 2 TỔNG QUAN VỀ HỆ THỐNG ĐỀ XUẤT ................................................... 5
2.1 Hệ thống đề xuất .......................................................................................................... 5
2.1.1 Khái niệm .............................................................................................................. 5
2.1.2 Phát biểu bài toán đề xuất ..................................................................................... 6
2.1.3 Nguồn dữ liệu sử dụng trong hệ thống đề xuất ..................................................... 6
2.1.4 Cách tiếp cận được dùng trong RS. ...................................................................... 7
2.2 Mô hình hệ thống đề xuất ............................................................................................ 9
2.3 Một vài hệ đề xuất nổi tiếng ........................................................................................ 9
2.4 Phương pháp lọc cộng tác .......................................................................................... 10
2.4.1 Giới thiệu: ........................................................................................................... 10
2.4.2 Phát biểu bài toán: ............................................................................................... 11
2.4.3 Các phương pháp lọc cộng tác: ........................................................................... 11
2.5 Phương pháp lọc dựa trên nội dung ........................................................................... 12
2.5.1 Giới thiệu............................................................................................................. 12
2.5.2 Phát biểu bài toán ................................................................................................ 14
2.5.3 Các phương pháp trong lọc theo nội dung .......................................................... 14
2.6 Phương pháp lai ......................................................................................................... 15
2.7 Đồ thị hai phía trong hệ thống đề xuất ...................................................................... 16
2.7.1 Đồ thị hai phía (Biparties Graph) ........................................................................ 16


vi
2.7.2 Tổng quan về tình hình nghiên cứu .................................................................... 16
2.7.3 Sử dụng đồ thị hai phía trong hệ thống đề xuất .................................................. 18
2.7.4 Phương pháp lọc theo nội dung sử dụng đồ thị kết hợp 2 đồ thị hai phía .......... 33
CHƯƠNG 3 HỆ THỐNG ĐỀ XUẤT ĐỊA ĐIỂM FOODY .............................................. 35
3.1 Mô hình hệ thống đề xuất cho FOODY .................................................................... 35
3.2 Chương trình Demo ................................................................................................... 36
3.3 Thu thập dữ liệu ......................................................................................................... 41
3.4 Cài đặt Lọc cộng tác .................................................................................................. 45

3.5 Cài đặt Lọc theo nội dung.......................................................................................... 48
3.6 Cài đặt Kết hợp .......................................................................................................... 49
3.7 Cài đặt bổ sung vị trí địa lý........................................................................................ 51
CHƯƠNG 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ ................................................................ 56
4.1 Thực nghiệm .............................................................................................................. 56
4.1.1 Dữ liệu thực nghiệm............................................................................................ 56
4.1.2 Phương pháp đánh giá ......................................................................................... 56
4.1.3 So sánh và đánh giá thực nghiệm........................................................................ 56
4.2 Phân tích kết quả ........................................................................................................ 60
CHƯƠNG 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN..................................................... 62
5.1 Đánh giá kết quả đạt được ......................................................................................... 62
5.2 Hạn chế của đề tài ...................................................................................................... 63
5.3 Hướng phát triển ........................................................................................................ 64
TÀI LIỆU THAM KHẢO................................................................................................... 65


vii

DANH MỤC CÁC THUẬT NGỮ VÀ CHỮ VIẾT TẮT
Viết tắt

Tiếng Việt

Tiếng Anh

GPS

Hệ thống Định vị Toàn cầu

Global Positioning System


CF

Lọc cộng tác

Collaborative filtering

CBF

Lọc theo nội dung

Content based filtering

HF

Phương pháp lai

Hybrid filtering

IR

Hệ thống truy xuất thông tin

Information Retrieval

RS

Hệ thống đề xuất

Recommender System


Hybrid

Hệ thống lai

Hybrid Recommender Systems

Thông tin/nội dung

Content

Người dùng

User

Lọc cộng tác dựa vào bộ nhớ

CSQuery

Memory Based Collaborative
Filtering

Lọc cộng tác dựa vào mô

Model Based Collaborative

hình

Filtering


Đồ thị hai phía

Biparties Graph

Đánh dấu nơi đã tới

check-in

Thư viện lập trình trích xuất

CSS selector engine, HTML

dữ liệu web

parser, and jQuery

Xây dựng hồ sơ người dùng

User profile builder

Xem

Watch

Theo dõi

Subscribe


viii

Bình chọn

Vote

Lỗi xử lý đề xuất

Recommendation Core

Phương pháp lọc

Filtering

Xếp hạng

Ranking

Mã người dùng

User ID

Tên đăng nhập của người
dùng

User Name

Tên hiển thị của người dùng

Display Name

Sản phẩm


Products

Vĩ độ

Latitude

Kinh độ

Longitude

Lọc dựa vào người dùng

UserBased

Lọc dựa vào sản phẩm

ItemBased


ix

DANH MỤC CÁC HÌNH
Hình 2. 1: Hệ thống đề xuất .................................................................................................. 5
Hình 2. 2: Mô hình dữ liệu cho hệ thống đề xuất ................................................................. 7
Hình 2. 3: Sơ đồ các phương pháp trong hệ thống đề xuất ................................................... 8
Hình 2. 4: Mô hình hệ thống đề xuất .................................................................................... 9
Hình 2. 5: Minh họa Phương pháp lọc cộng tác ................................................................. 10
Hình 2. 6: Minh họa lọc theo nội dung ............................................................................... 13
Hình 2. 7: Mô hình đồ thị hai phía ...................................................................................... 16

Hình 2. 8: Ví dụ đồ thị hai phía .......................................................................................... 17
Hình 2. 9: Mô hình đồ thị hai phía chuyển đổi từ đồ thị đánh giá ...................................... 19
Hình 2. 10: Đồ thị hai phía trọng số dương ........................................................................ 20
Hình 2. 11: Đồ thị hai phía trọng số âm .............................................................................. 21
Hình 2. 12: Đồ thị hai phía sản phẩm và nội dung ............................................................. 33
Hình 2. 13: Mô hình đồ thị kết hợp..................................................................................... 34
Hình 3. 1: Mô hình hệ thống đề xuất cho FOODY ............................................................. 35
Hình 3. 2: Giao diện thành phần thu thập dữ liệu ............................................................... 36
Hình 3. 3: Danh sách tỉnh thành.......................................................................................... 36
Hình 3. 4: Tên địa điểm ...................................................................................................... 37
Hình 3. 5: Đánh giá của người dùng ................................................................................... 37
Hình 3. 6: Check-in của người dùng ................................................................................... 37
Hình 3. 7: Đặc trưng của địa điểm ...................................................................................... 38
Hình 3. 8: Giao diện thành phần tạo đề xuất....................................................................... 39
Hình 3. 9: Kết quả đề xuất cho người dùng chưa đăng nhập .............................................. 40
Hình 3. 10: Giao diện thành phần web hiển thị đề xuất...................................................... 40
Hình 3. 11: Dữ liệu thu thập ............................................................................................... 41
Hình 3. 12: Mô tả đề xuất trên dữ liệu check-in ................................................................. 52
Hình 4. 1: Biểu đồ so sánh độ chính xác............................................................................. 60


x

DANH MỤC CÁC BẢNG
Bảng 2. 1: Ví dụ ma trận đánh giá ...................................................................................... 11
Bảng 2. 2: Ví dụ ma trận trọng số của đồ thị hai phía [6]................................................... 16
Bảng 2. 3: Ma trận đánh giá ................................................................................................ 18
Bảng 2. 4: Ma trận biến đổi từ ma trận đánh giá ................................................................ 19
Bảng 2. 5: Ma trận đánh giá trọng số dương ...................................................................... 20
Bảng 2. 6: Ma trận đánh giá trọng số âm ............................................................................ 21

Bảng 2. 7: Tổng trọng số tất cả các đường đi trên đồ thị G+ .............................................. 22
Bảng 2. 8: Tổng trọng số tất cả các đường đi trên đồ thị G- ............................................... 24
Bảng 2. 9: Tổng trọng số tất cả các đường đi trên đồ thị G+ và G- không theo User ......... 26
Bảng 2. 10: Tổng trọng số tất cả các đường đi trên đồ thị G+ và G- theo User .................. 27
Bảng 2. 11: Ma trận sản phẩm nội dung ............................................................................. 33
Bảng 2. 12: Ma trận người dùng sản phẩm ......................................................................... 34
Bảng 3. 1: Trích 10 mẫu dữ liệu người dùng ...................................................................... 41
Bảng 3. 2: Trích 10 mẫu dữ liệu địa điểm .......................................................................... 42
Bảng 3. 3: Trích 10 mẫu dữ liệu đánh giá........................................................................... 43
Bảng 3. 4: Trích 10 mẫu dữ liệu đặc trưng địa điểm .......................................................... 44
Bảng 3. 5: Trích 10 mẫu dữ liệu check-in .......................................................................... 44
Bảng 3. 6: Trích dẫn 10 mẫu kết quả đề xuất trên dữ liệu đánh giá dương ........................ 45
Bảng 3. 7: Trích dẫn 10 mẫu kết quả đề xuất trên dữ liệu đánh giá âm ............................. 46
Bảng 3. 8: Đại số quan hệ truy vấn kết quả của lọc cộng tác ............................................. 46
Bảng 3. 9: Trích dẫn 10 mẫu kết quả đề xuất bằng phương pháp lọc cộng tác .................. 47
Bảng 3. 10: Đại số quan hệ truy vấn kết quả của lọc theo nội dung ................................... 48
Bảng 3. 11: Trích dẫn 10 mẫu kết quả tính trọng số địa điểm và đặc trưng ....................... 49
Bảng 3. 12: Đại số quan hệ truy vấn kết quả của lọc kết hợp ............................................. 49
Bảng 3. 13: Trích dẫn 10 mẫu kết quả kết hợp lọc cộng tác và lọc theo nội dung ............. 50
Bảng 3. 14: Đại số quan hệ truy vấn kết quả của lọc kết hợp có bổ sung kết quả lọc dựa
vào quan hệ check-in........................................................................................................... 53
Bảng 3. 15: Trích dẫn 10 mẫu kết quả phương pháp lai kết hợp với check-in ................... 54


xi
Bảng 4. 1: Thông số bộ dữ liệu đánh giá ............................................................................ 56
Bảng 4. 2: Danh sách 10 đề xuất có trọng số cao nhất cho người dùng mới ...................... 57
Bảng 4. 3: Chi tiết quá trình đánh giá ................................................................................. 57
Bảng 4. 4: So sánh độ chính xác ......................................................................................... 59



1

CHƯƠNG 1
MỞ ĐẦU
1.1 Giới thiệu
Hằng ngày một lượng lớn thông tin/nội dung được tạo ra. Chúng ta đang quá
tải bởi: Hàng ngàn bài báo tin tức và các bài blog mỗi ngày; Hàng triệu phim ảnh,
sách và các bài nhạc trực tuyến; Quá nhiều kênh truyền hình, hàng ngàn chương trình.
Tuy nhiên chúng ta thực sự chỉ cần một vài trong số chúng. Đặt ra vấn đề là nội dung
nào cần thiết, nội dung nào không hoặc xa hơn là nội dung nào sẽ cần thiết hơn nội
dung nào đối với một đối tượng người dùng (User) cụ thể. Để giải quyết vấn đề trên
cần nghiên cứu hệ thống hỗ trợ đưa ra gợi ý các nội dung mà có khả năng được người
dùng sử dụng nhất.
1.2 Lý do chọn đề tài
Foody.vn ứng dụng web và phần mềm di động mạng xã hội địa điểm có lượng
dữ liệu lớn nhất Việt Nam với hơn 70.000 địa điểm và 12.000.000 người sử dụng và
đang tiếp tục gia tăng về số lượng địa điểm và người dùng.
Mỗi ngày trên ứng dụng Foody.vn một lượng lớn đánh giá, địa điểm mới được
tạo ra một cách rời rạc. Đặt ra vấn đề về khai thác những dữ liệu rời rạc trên để cung
cấp những địa điểm phù hợp với sở thích, thói quen của từng người dùng cụ thể. Hệ
thống hỗ trợ đưa ra các gợi ý cho người dùng được gọi là Hệ thống đề xuất (RS) sẽ
giúp giải quyết vấn đề.
Một địa điểm khi đề xuất cho người dùng phải tính đến vị trí của nó so với vị
trí khu vực của người dùng thường hay đến nếu không sẽ dẫn đến những đề xuất mà
khoảng cách quá xa và người dùng không thể đến được. Do đó, trong bài toán đề xuất
phải kết hợp giữa đặc trưng của địa điểm, đánh giá của người dùng với vị trí địa lý
của khu vực địa điểm mà người dùng hay tới để đạt được kết quả tốt nhất.



2

Với những lý do trên tôi chọn đề tài: “Hệ thống đề xuất địa điểm sử dụng
phương pháp lai (Hybrid) trên dữ liệu Foody.vn”.
1.3 Mục tiêu của đề tài
Với những lý do nêu trên cần thiết nghiên cứu Hệ thống đề xuất dựa trên kết
hợp giữa đặc trưng của dữ liệu địa điểm và đánh giá của người dùng, và kết hợp với
dữ liệu về địa lý để hạn chế tối đa các kết quả không thực tế về mặt không gian,
khoảng cách.
Do hạn chế về kiến thức và thời gian chúng tôi chỉ đặt mục tiêu đạt được kết
quả đề xuất ở mức độ chính xác tối đa 5 số lẻ hàng thập phân của trọng số, lượng User
tối đa 1000 và bỏ qua vấn đề về thời gian xử lý của thuật toán.
Mục tiêu cụ thể:
+ Đưa ra kết quả dựa vào đánh giá của người dùng.
+ Đưa ra kết quả đề xuất dựa vào đặc trưng của địa điểm.
+ Kết hợp các kết quả trên và loại trừ các kết quả không phù hợp với
khu vực địa lý mà người dùng hay đến.
+ So sánh kết quả khi không có và có kết hợp với khu vực địa lý.
Để đạt được mục tiêu trên chúng tôi đề xuất mô hình đồ thị hai phía để xếp
hạng địa điểm theo trọng số. Trong phương pháp lọc cộng tác, chúng tôi xây dựng
mô hình đồ thị hai phía, một bên là người dùng một bên là địa điểm và tính trọng số
dựa vào mối quan hệ là dữ liệu đánh giá của người dùng với địa điểm. Trong phương
pháp lọc theo nội dung chúng tôi xây dựng mô hình đồ thị hai phía một bên là địa
điểm một bên là đặc trưng của địa điểm và tính trọng số dựa vào quan hệ này. Sử
dụng mối quan hệ check-in giữa một bên là người dùng một bên là địa điểm và xây
dựng mô hình hai phía tính trọng số dựa vào quan hệ này, để xếp hạng địa điểm gần
khu vực người dùng thường hay đến.


3


Những đóng góp của luận văn
Từ những mục tiêu trên qua quá trình tìm hiểu và nghiên cứu những kết quả
đóng góp chính của đề tài là:
- Nghiên cứu phương pháp lọc cộng tác, lọc theo nội dung, phương pháp lai để
xây dựng hệ thống đề xuất.
- Vận dụng kết quả nghiên cứu xây dựng hệ thống đề xuất sử dụng dữ liệu của
Việt Nam đem lại lợi ích thiết thực.
Ý nghĩa khoa học và thực tiễn
- Về mặt khoa học: Đề tài nghiên cứu phương pháp lọc cộng tác, phương pháp
lọc theo nội dung và phương pháp lai sử dụng mô hình đồ thị hai phía từ đó xây dựng
được hệ thống đề xuất.
- Về mặt thực tiễn: Đề tài ứng dụng kết quả nghiên cứu vào bộ dữ liệu địa điểm
FOODY của Việt Nam để xây dựng hệ thống đề xuất địa điểm, đem lại lợi ích thiết
thực cho người sử dụng.
1.4 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu luận văn gồm khái niệm về Hệ thống đề xuất, khái niệm
về Lọc cộng tác, Lọc theo nội dung, Lọc kết hợp, khái niệm về đồ thị hai phía, thuật
toán duyệt và tính trọng số tất cả các đường đi trong đồ thị hai phía.
Ứng dụng phương pháp lọc kết hợp áp dụng trên dữ liệu Foody.vn để xếp hạng
các địa điểm theo trọng số. Xếp hạng lại khi kết hợp với dữ liệu khoảng cách.
Sử dụng phép đo Precision để đánh giá kết quả thu được.
1.5 Tổ chức của luận văn
Luận văn có cấu trúc như sau:
• Chương 1 Mở đầu: Trình bày lý do chọn đề tài, nêu mục tiêu cần quan tâm
những đóng góp và tính ứng dụng vào thực tiễn, nêu rõ đối tượng và phạm vi nghiên
cứu. Sau cùng là cách tổ chức của luận văn.


4


• Chương 2 Tổng quan về hệ thống đề xuất: Trình bày tổng quan về hệ thống
đề xuất, trình bày mô hình của hệ thống đề xuất. Trình bày cơ sở lý thuyết và các công
trình nghiên cứu về hệ thống đề xuất Web. Trình bày phương pháp Lọc cộng tác sử
dụng mô hình đồ thị hai phía. Trình bày phương pháp Lọc theo nội dung sử dụng mô
hình đồ thị hai phía. Trình bày phương pháp Lai.
• Chương 3 Hệ thống đề xuất địa điểm FOODY: Trình bày xây dựng lọc
cộng tác với dữ liệu đánh giá FOODY. Trình bày lọc theo nội dung. Trình bày tổng
hợp kết quả của lọc cộng tác và lọc theo nội dung. Chương trình demo.
• Chương 4 Thực nghiệm và đánh giá kết quả đạt được: Trình bày các đánh
giá kết quả đạt được dựa vào các độ đo.
• Chương 5 Kết luận và hướng phát triển: Nhận xét kết quả đạt được của
đề tài. Đồng thời cũng đưa ra hướng phát triển trong tương lai.


5

CHƯƠNG 2
TỔNG QUAN VỀ HỆ THỐNG ĐỀ XUẤT
2.1 Hệ thống đề xuất
2.1.1 Khái niệm

Hệ thống đề xuất là một phân lớp của hệ thống lọc thông tin. Mục đích là để
cung cấp những gợi ý cho người dùng về một sản phẩm, dịch vụ nào đó trên Internet
như phim ảnh, âm nhạc, tin tức, sách, bài báo nghiên cứu, truy vấn tìm kiếm ...Cũng
có những hệ thống đề xuất cho các chuyên gia, nhà hàng, dịch vụ tài chính, bảo hiểm
nhân thọ… Một vài ứng dụng nổi tiếng về hệ thống đề xuất như: đề xuất sản phẩm
của Amazon.com, hệ đề xuất phim của NetFlix… Hệ thống đề xuất giúp giải quyết
được tình trạng quá tải thông tin. Hệ thống đề xuất là một trong những công cụ mạnh
mẽ và phổ biến trong thương mại điện tử.


Dữ liệu người
dùng

Hệ thống đề xuất

Kết quả đề
xuất

Người dùng

Hình 2. 1: Hệ thống đề xuất
Theo Adomavicius và Tuzhilin [5] bài toán đề xuất được coi là bài toán xếp
hạng các sản phẩm (phim, cd, nhà hàng …). Xếp hạng này thường dựa trên những


6

đánh giá đã có của chính người dùng đó hoặc những người dùng khác. Những sản
phẩm có hạng cao nhất sẽ được dùng để đề xuất.
2.1.2 Phát biểu bài toán đề xuất
Gọi U là tập tất cả người dùng (users); I là tập tất cả các đối tượng (items) đề
nghị. Tập I có thể rất lớn, từ hàng trăm ngàn (sách, cd…) đến hàng triệu (như website).
Hàm r (u, i) đo độ phù hợp (hay hạng) của đối tượng i với user u [11]:
r: U x I → R
Trong đó R là tập các đánh giá (rating) được sắp thứ tự. Với mỗi người dùng
u ∈ U, cần tìm đối tượng i ∈ I sao cho hàm r (u, i) đạt giá trị lớn nhất.
2.1.3 Nguồn dữ liệu sử dụng trong hệ thống đề xuất
+ Hành vi trong quá khứ của người dùng như đánh giá sản phẩm, mua sản
phẩm….

+ Hành vi trong quá khứ của những người dùng tương tự.
VD người dùng tương tự: Người dùng cùng đánh giá sản phần, cùng
mua sản phẩm…
+ Dựa vào nội dung.
Vd nội dung: Với film là thể loại film, diễn viên…Với sản phẩm như
quần áo thì kích cở, màu sắc…


7

+ Dựa vào tất cả các cách trên để đưa ra kết quả đề xuất.

Hình 2. 2: Mô hình dữ liệu cho hệ thống đề xuất
2.1.4 Cách tiếp cận được dùng trong RS.
Có nhiều cách tiếp cận [11], trong đó chủ đạo là:
+ Phương pháp lọc cộng tác - Collaborative Filtering: Khai thác
thông tin về những hoạt động trong quá khứ hoặc đánh giá của cộng đồng người dùng
để dự đoán những sản phẩm mà người dùng hiện tại có thể thích [8]. Hướng tiếp cận
này được sử dụng phổ biến hơn bởi sự đơn giản và không phụ thuộc vào nội dung đặc
trưng của sản phẩm mà người dùng đã đánh giá.
+ Phương pháp lọc dựa trên nội dung - Content Based Filtering:
Dựa vào nội dung của sản phẩm đưa ra những kết quả tư vấn là những sản phẩm có


8

nhiều đặc trưng tương tự với những sản phẩm mà họ đã thích trong quá khứ [9].
Hướng tiếp cận này thực hiện hiệu quả trên các đối tượng dữ liệu biểu diễn dưới dạng
văn bản nhưng rất khó thực hiện trên các dạng thông tin đa phương tiện (ví dụ: Phim,
nhạc, ảnh …). Bên cạnh đó nó còn phụ thuộc nhiều vào phương pháp trích xuất nội

dung đặc trưng của sản phẩm và đó cũng là một trong những hạn chế của phương
pháp.
+ Phương pháp lai – Hybrid Filtering: Một hướng giải quyết khác là
kết hợp lọc cộng tác với hướng tiếp cận dựa trên nội dung [10]. Tận dụng kết quả của
cả hai phương pháp giúp kết quả đề xuất chính xác hơn.

Hình 2. 3: Sơ đồ các phương pháp trong hệ thống đề xuất


9

2.2 Mô hình hệ thống đề xuất
Dưới đây là mô hình hệ thống đề xuất
Watch

Filtering

Subscribe

Final
Recommendations
Vote

Ranking

User behaviors

Recommendation Core

User Profile Builder


Hình 2. 4: Mô hình hệ thống đề xuất
- User profile builder: Khi người dùng đầu tiên đến với hệ thống đề xuất,
chúng ta sẽ xây dựng bộ hồ sơ người dùng của họ bao gồm các hành vi như: xem
(watch), theo dõi (đăng ký), bình chọn (vote)…
- Recommendation Core: Sau khi tạo danh sách hồ sơ của người dùng, chúng
ta sẽ sử dụng để phát sinh đề xuất bằng các phương pháp lọc (Filtering) sao đó xếp
hạng (Ranking) kết quả đề xuất để cung cấp cho người dùng những kết quả tốt nhất.
+ Filtering: Là thành phần quan trọng nhất của hệ thống đề xuất, phát
sinh kết quả đề xuất [4]
+ Ranking: Xếp hạng kết quả từ thành phần Filtering đưa qua.
2.3 Một vài hệ đề xuất nổi tiếng [12]
+ Phim / TV/ âm nhạc: Youtube, MovieLens, EachMovie, Morse, Firefly,
Flycasting, Ringo…
+ Tin tức / báo chí: Tapestry, GroupLens, Lotus Notes, Anatagonomy…
+ Sách / Tài liệu: Amazon.com, Foxtrot, InfoFinder…


10

+ Web: Phoaks, Gab, Fab, IfWeb, Let's Browse …
+ Nhà hàng: Adaptive Place Advisor, Polylens, Pocket restaurent finder…
+ Du lịch: Dietorecs, LifestyleFinder …
2.4 Phương pháp lọc cộng tác
2.4.1 Giới thiệu:
Phương pháp Lọc cộng tác tập hợp các đánh giá (điểm) của người dùng trên
các sản phẩm, nhận dạng sự tương đồng giữa các người dùng trên cơ sở các đánh giá
của họ và phát sinh ra những đề xuất mới cho người dùng.

Điểm


Đánh giá

Điểm

Cùng sở thích

Người dùng

Người dùng khác

Hình 2. 5: Minh họa Phương pháp lọc cộng tác
Trong phương pháp này, hệ thống thường xây dựng các ma trận đánh giá của
người dùng lên các đối tượng. Từ đó tính toán độ tương tự giữa những người dùng
này.


×