Phương phápCác phương pháp sử dụng Nội dung Tổng quan 1 Đối tượng, mục tiêu, ý nghĩa 3 Các vấn đềCấu trúc và dữ liệu 4 Tổng kếtKết luận về hệ thống 2 5 Demo sản phẩm Chạy sản phẩm... Phư
Trang 1Hệ thống gợi ý
Recommendation System
Nhóm 7 – INT3507 6 Thành viên:
Nguyễn Trần Nhật Anh: 19020240
Nguyễn Tiến Đàn : 19020240
Trường Hoàng Sơn : 19020420
Trang 2Phương pháp
Các phương pháp sử dụng
Nội dung
Tổng quan
1 Đối tượng, mục tiêu, ý nghĩa 3 Các vấn đềCấu trúc và dữ liệu
4 Tổng kếtKết luận về hệ thống
2
5 Demo sản phẩm
Chạy sản phẩm
Trang 3Tổng quan
1
Đối tượng, mục tiêu, ý nghĩa
Trang 4Tổng quan
Đối tượng
Website bán sách online
Mục tiêu
Sử dụng phương pháp lọc cộng tác
để đưa ra gợi ý
Ý nghĩa
Tăng doanh thu, trải nghiệm người dùng
Trang 5Phương pháp
2
Phương pháp, công nghệ sử dụng
Trang 6Phương pháp lọc cộng tác
Phương pháp lọc cộng tác là phương pháp phân tích dữ liệu
người dùng để tìm ra mối tương quan giữa các đối tượng người dùng
Trang 7Chuẩn hóa dữ liệu
Chuẩn hóa dữ liệu bằng cách trừ đi trung bình cộng của mỗi cột
khiến trong trong mỗi cột có những giá trị dương và âm
• Những giá trị dương: user
thích item
• Những giá trị âm: user
không thích item
• Những giá trị bằng 0:
chưa xác định
Trang 8Tìm mức độ giống nhau giữa các user
Sử dụng cosine_similarity, tức là hàm tính cos của góc giữa 2 vector u1 và u2 Vector u1 và u2 tương ứng với user 1 và user 2
Trang 9Dự đoán đánh giá của người dùng
• Trong đó: N(u, i) là tập hợp k user có mức độ giống nhau cao nhất với user đang xét mà đã đánh giá sản phẩm đang dự đoán
• yi,uj là là đánh giá của k user trên với sản phẩm đang dự đoán
• sim(u, uj) là giá trị mức độ giống nhau của k user với user đang xét
Trang 10Recommend sản phẩm
Sau khi dự đoán đánh giá, để recommend sản phẩm cho user ta chỉ cần chọn những sản phẩm mà user đó chưa đánh giá mà có điểm dự đoán đánh giá lớn hơn 0
Ở trong dự án: recommend 6 sản phẩm có điểm dự đoán cao nhất cho user
Trang 11Công nghệ ứng dụng
Sử dụng thuật toán xây dựng ma trận tính toán độ
tương tự giữa các người dùng
FrontEnd BackEnd
Database ORM
Sequelize HTML, CSS, JS
Trang 12Các vấn đề
3
Cấu trúc và dữ liệu
Trang 13Lược đồ cơ sở dữ liệu
Trang 14Tổng kết
4
Kết luận về hệ thống
Trang 15Kết luận
Điểm yếu
• Không thể gợi ý nếu khách hàng chưa có dữ liệu về lịch sử tương tác mặt hàng
• Trên thực tế, số lượng users luôn lớn hơn số lượng items rất nhiều
• Ma trận đánh giá mức độ giống nhau của user là rất lớn, khiến cho việc lưu trữ ma trận này trong nhiều trường hợp là không khả thi
• Rất nhiều cột của ma trận này sẽ chỉ có một vài phần tử khác 0 Lý do là users thường lười đánh giá
• Một khi user đó thay đổi đánh giá hoặc rate thêm items, trung bình cộng các đánh giá cũng như vector chuẩn hoá tương ứng với user này thay đổi nhiều
• Kéo theo đó, việc tính toán ma trận mức độ giống nhau, vốn tốn nhiều bộ nhớ và thời gian, cũng cần được thực hiện lại
Trang 16Demo sản phẩm
5
Chạy sản phẩm
Trang 17Thanks!