ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA HỆ THỐNG THÔNG TIN
------------
LUẬN VĂN TỐT NGHIỆP
Tên đề tài:
HỆ THỐNG KHUYẾN NGHỊ DỰA TRÊN BỐI
CẢNH
Cán bộ hướng dẫn: Th.s Huỳnh Hữu Việt
Sinh viên thực hiện:
Huỳnh Tùng - 07520505
Nguyễn Thị Kim Quy – 07520493
Tp.HCM, ngày tháng năm 2011
LỜI CÁM ƠN
Trước tiên, chúng tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới
Thạc sĩ Huỳnh Hữu Việt người đã tận tình chỉ bảo và hướng dẫn nhóm trong suốt quá
trình thực hiện khoá luận tốt nghiệp.
Chúng tôi chân thành cảm ơn các thầy, cô đã tạo cho tôi những điều kiện thuận
lợi để nhóm chúng tôi học tập, nghiên cứu tại trường Đại Học Công Nghệ Thông Tin.
Cuối cùng, chúng tôi muốn gửi lời cảm tới gia đình và bạn bè đã luôn bên cạnh
và động viên chúng tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp.
Nhóm sinh viên thực hiện
2
NHẬN XÉT CỦA GIÁO VIÊN HƯỜNG DẪN
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
DANH MỤC HÌNH
4
DANH MỤC BẢNG
DANH MỤC CÁC THUẬT NGỮ, TỪ VIẾT TẮT
5
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1. Đặt vấn đề
Cùng với nhu cầu tìm kiếm thông tin trên Internet ngày càng trở nên phổ biến là
một lượng lớn thông tin được đưa lên Internet hằng ngày. Vì thế một nhu cầu mới
đặt ra là một thông tin nên hay không nên được đọc, chia sẻ đến cho một đối tượng
người sử dụng Internet? Thông tin nào sẽ có khả năng được đánh giá cao bởi một
đối tượng người sử dụng? Và làm thế nào để xác định được là thông tin đó có khả
năng được người dùng đánh giá cao hay thấp?
Để giải quyết vấn đề trên đã rất nhiều bài nghiên cứu đã được thực hiện trên các
lĩnh vực khác nhau, đối tượng thông tin khác nhau. Kết quả của các bài nghiên cứu
đó nhằm hỗ trợ đưa ra một Hệ thống khuyến nghị (Recommender Systems) phù
hợp nhất. Hệ thống khuyến nghị có thể là một chương trình, một tập hợp các kỹ
thuật nhằm đưa ra các khuyến nghị về các đối tượng cho người dùng mà có khả năng
được người dùng sử dụng nhất. Quá trình đưa ra các khuyến nghị là một chuỗi các
quá trình đưa ra các quyết định cho nhiều loại đối tượng. Ví dụ như: Khách hàng A
nên mua các sản phẩm nào của siêu thị, khách hàng B nên ăn món ăn gì ở khu vực
Quận Tân Bình, TP HCM…
Hệ thống khuyến nghị đưa ra các khuyến nghị dựa trên quá trình thu thập, xử lý
và phân tích dữ liệu mà người dùng. Dữ liệu đó được chia làm 2 loại là tường minh
và ngầm định. Dữ liệu tường minh do người dùng cung cấp thông qua các bài nhận
xét, bình luận, đánh giá theo thang điểm, cảm nhận thích hoặc không thích cho một
sản phẩm, một bài hát, một món ăn. Dữ liệu ngầm định bao gồm mức độ quan tâm
đến sản phẩm, số lần xem, thời gian xem tin…
Trong quá trình nghiên cứu và thực nghiệm Hệ thống khuyến nghị thì có các vấn
đề xuất hiện như sau:
o Ngữ cảnh: là tập hợp bao gồm các yếu tố.
Thời gian: Bao gồm thời gian trong ngày, ngày trong tuần và mùa
trong năm.
Vị trí, khoảng cách: Vị trí của người dùng, khoảng cách xa, gần.
Người đi cùng: đi một mình, đi với người yêu, đi với bạn bè, đi
với gia đình và đi với đối tác trong công việc.
Trạng thái của nhà hàng: Thể hiện nhà hàng đang có các chương
trình khuyến mãi hay không.
1.4. Phương pháp nghiên cứu và nội dung thực hiện
• Cách tiếp cận: Sử dụng 2 phương pháp
o Memory-Based:
o Model-Based:
• Nội dung thực hiện:
o Khảo sát nghiên cứu các vấn đề liên quan đến Hệ thống khuyến nghị, tập
trung vào phương pháp Lọc cộng tác (Colaborative Filtering – CF).
o Tìm hiểu so sánh 2 phương pháp Memory-Based và Model Based.
o Thu thập dữ liệu nhà hàng, món ăn, các Bài chia sẻ kinh nghiệm ăn uống
từ người dùng.
o Tìm hiểu các thuật toán liên quan đến 2 phương pháp Memory-Based và
Model-Based.
o Đề ra phương pháp áp dụng vào Hệ thống khuyến nghị.
o Xây dựng một Hệ thống khuyến nghị mẫu.
o Tiến hành kiểm thử kết quả, đánh giá và báo cáo.
1.5. Kết quả dự kiến:
• Xây dựng thành công thuật toán nhằm đưa ra các khuyến nghị về món ăn/ nhà
hàng phù hợp với người dùng trong một ngữ cảnh nhất định.
• Xây dựng một Hệ thống nhỏ để áp dụng thuật toán và tương tác với người dùng
thông qua đó:
o Đầu vào:
Người dùng sẽ đăng nhập hệ thống, chia sẽ các sở thích của mình
dụng nổi tiếng về hệ thống khuyến nghị như: khuyến nghị sản phầm của Amazon.com
[paper của amazon], hệ tư vấn phim của NetFlix…[paper của về Netflix] Hệ thống
khuyến nghị đã chứng minh được ý nghĩa to lớn: giúp cho người sử dụng trực tuyến đối
phó với tình trạng quá tải thông tin. Hệ khuyến nghị trở thành một trong những công cụ
mạnh mẽ và phổ biến trong thương mại điện tử.
Trong hầu hết các trường hợp, bài toán khuyến nghị được coi là bài toán ước
lượng trước hạng (rating) của các sản phẩm (phim, cd, nhà hàng …) chưa được người
dùng xem xét. Việc ước lượng này thường dựa trên những đá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 để khuyến nghị.
Bài toán khuyến nghị được mô tả như sau:
Gọi U là tập tất cả người dùng (users); I là tập tất cả các sản phẩm (items) có thể
tư vấn. 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 sản phẩm i với user u:
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 sản phẩm i I sao cho hàm r (u, i) đạt giá trị lớn nhất.∈
r: U x I → R
2.1.2 Các chức năng của hệ thống khuyến nghị
Hệ thống khuyến nghị là công cụ phần mềm với các đề xuất cho người dùng
những sản phầm, dịch vụ mà họ có thể muốn sử dụng. Dưới đây là một số chức năng
của hệ thống:
Tăng số lượng các mặt hàng bán ra cho các hệ thống thương mại điện tử:
Đây có lẽ là chức năng quan trọng nhất của hệ thống khuyến nghị. Thay vì người dùng
chỉ mua một sản phẩm mà họ cần, họ được khuyến nghị mua những sản phẩm ‘có thể
họ cũng quan tâm’ mà bản thân họ không nhận ra. Hệ thống khuyến nghị tìm ra những
‘mối quan tâm ẩn’. Bằng cách đó, hệ thống khuyến nghị làm gia tăng nhu cầu của người
dùng và gia tăng số lượng mặt hàng bán ra.Tương tự đối với các hệ thống phi thương
mại (như các trang báo), hệ thống khuyến nghị sẽ giúp người dùng tiếp cận với nhiều