Hệ thống gợi ý sử dụng bản đồ tương tác và mạng tích chập hướng lọc cộng tác

57 6 0
Hệ thống gợi ý sử dụng bản đồ tương tác và mạng tích chập hướng lọc cộng tác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Hệ thống gợi ý sử dụng đồ tương tác mạng tích chập hướng lọc cộng tác VŨ NHẬT ANH anh.vn140261@sis.hust.edu.vn Ngành Hệ thống thông tin Giảng viên hướng dẫn: TS Vũ Tuyết Trinh Chữ ký GVHD Viện: Công nghệ thông tin & truyền thông HÀ NỘI, 10/2020 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ Họ tên tác giả luận văn: Vũ Nhật Anh Đề tài luận văn: Hệ thống gợi ý sử dụng đồ tương tác mạng tích chập hướng lọc cộng tác Chuyên ngành: Hệ thống thông tin Mã số SV: CBC19017 Tác giả, Người hướng dẫn khoa học Hội đồng chấm luận văn xác nhận tác giả sửa chữa, bổ sung luận văn theo biên họp Hội đồng ngày 31/10/2020 với nội dung sau: STT Yêu cầu hội đồng Nội dung chỉnh sửa, bổ sung Một số hình ảnh chưa có trích dẫn Bổ sung trích dẫn cho bổ sung vào Cụ thể Hình số hình ảnh trang 2, Hình Hình trang 14 luận văn Tác giả bổ sung thêm trích dẫn phần tài liệu tham khảo trang 38-41 Có nên thay thuật Tác giả luận văn xin phép giữ nguyên ngữ “Bản đồ tương thuật ngữ tiếng việt “Bản đồ tương tác” thuật ngữ tác”, thuật ngữ tiếng anh khác? “Interaction Map” Cập nhật lại diễn đạt phần kết luận Tác giả diễn đạt lại điểm hạn chế trang 36 phần Kết luận Ngày 23 tháng 11 năm 2020 Giáo viên hướng dẫn Tác giả luận văn TS Vũ Tuyết Trinh Vũ Nhật Anh CHỦ TỊCH HỘI ĐỒNG PGS.TS Lê Thanh Hương ĐỀ TÀI LUẬN VĂN Mã đề tài: 19BCLC-HTTT04 Theo QĐ số 24/QĐ-ĐHBK-ĐT-SĐH Hiệu trưởng Trường Đại học Bách Khoa Hà Nội ký ngày 11 tháng năm 2019 Họ tên học viên: Vũ Nhật Anh MSHV: CBC19017 Chuyên ngành: Hệ thống thông tin Lớp: Hệ thống thông tin (KH) Người hướng dẫn: TS Vũ Tuyết Trinh Đơn vị: Viện Công nghệ Thông tin Truyền thông, Trường Đại học Bách Khoa Hà Nội Tên đề tài (tiếng Việt): Hệ thống gợi ý sử dụng đồ tương tác mạng tích chập hướng lọc cộng tác Tên đề tài (tiếng Anh): Collaborative filtering recommender system using interaction map and convolutional neural network Giáo viên hướng dẫn Ký ghi rõ họ tên Lời cảm ơn Đầu tiên, xin gửi lời cảm ơn chân thành đến cô Vũ Tuyết Trinh thầy cô giáo Viện Công Nghệ Thông Tin Truyền Thơng (SOICT) hướng dẫn ân cần, tận tình tạo động lực cho tơi thực luận văn thạc sĩ Tôi muốn bày tỏ lòng biết ơn sâu sắc đến bố mẹ đồng nghiệp công ty AWL Việt Nam hỗ trợ, tạo điều kiện tốt cho tơi làm luận văn Luận văn có lẽ khơng thể hồn thành thiếu họ Do thời gian kiến thức có hạn nên luận văn khơng tránh khỏi thiếu sót Tơi mong nhận đóng góp q báu thầy bạn Tôi xin gửi lời chúc sức khỏe, hạnh phúc tới thầy cơ, gia đình bạn bè Học viên: Vũ Nhật Anh, CBC19017, khố 2019B, lớp CLC2019B Tóm tắt nội dung luận văn Luận văn thạc sĩ đề xuất việc sử dụng kĩ thuật xếp chồng biểu diễn phép tích ngoại để tạo dạng đồ tương tác (interaction map) người dùng - mục tin (user-item), sau xây dựng mơ hình gợi ý nhằm cải thiện hiệu chất lượng gợi ý cách tiếp cận lọc cộng tác CF (Collaborative Filtering [1]) Phương pháp đề xuất sử dụng mạng tích chập CNN (Convolutional Neural Network [2]) nhằm trích xuất mối tương quan user-item từ đồ tương tác, nhiều khía cạnh mối quan hệ, từ cục toàn Việc sử dụng mạng tích chập CNN thay cho lớp mạng liên kết đầy đủ cải thiện chất lượng gợi ý, đồng thời làm giảm đáng kể kích thước tăng tính mở rộng mơ hình Các mơ hình gợi ý đề xuất có tên SeNCF SeConvNCF, SeConvNCF mơ hình kết hợp SeNCF với mơ hình ConvNCF [3] Các kết thực nghiệm liệu thực tế MovieLens1M [4] Pinterest [5] cho thấy cải thiện từ 1.7-5.6% thông số đánh giá 𝐻𝑅@10 - tỉ lệ item mà user tương tác nằm top-10 items gợi ý hệ thống Việc áp dụng thành tựu mạng tích chập CNN lĩnh vực xử lý ảnh vào hệ gợi ý mở nhiều cánh cửa nghiên cứu tương lai MỤC LỤC CHƯƠNG 1: ĐẶT VẤN ĐỀ 1.1 Phát biểu toán 1.2 Một số nghiên cứu dựa hướng tiếp cận lọc cộng tác 1.3 Mục tiêu đóng góp luận văn 1.4 Bố cục luận văn 10 CHƯƠNG 2: BIỂU DIỄN DỮ LIỆU VÀ BẢN ĐỒ TƯƠNG TÁC 11 2.1 Biểu diễn one-hot encoding vector 11 2.2 Biểu diễn embedding vector 12 2.3 Bản đồ tương tác 15 2.3.1 Phương pháp xếp chồng biểu diễn 15 2.3.2 Phép tốn tích ngoại 17 2.4 Phương pháp lấy mẫu tiêu cực đối phó với vấn đề thiếu hụt liệu tương tác (missing data) 17 CHƯƠNG 3: MƠ HÌNH GỢI Ý STACKED EMBEDDING NETWORK COLLABORATIVE FILTERING 19 3.1 Mơ hình Stacked embedding Neural Collaborative Filtering 19 3.2 Mơ hình kết hợp SeNCF ConvNCF 23 3.4 Các thơng số để đánh giá mơ hình 26 3.4.1 Tỉ lệ hit (HR) 26 3.4.2 Độ lợi luỹ kế khấu hao chuẩn hoá (NDCG) 27 CHƯƠNG 4: CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ 28 4.1 Thiết kế thí nghiệm 28 4.1.1 Tập liệu thử nghiệm 28 4.1.2 Một số phương pháp trước dùng để so sánh 29 4.1.3 Tham số mơ hình 30 4.2 Kết thử nghiệm so sánh phương pháp khác 31 4.2.1 Thử nghiệm với tham số K đặc trưng ẩn 31 4.2.2 Thử nghiệm với tham số X số lượng feature map mạng CNN 33 4.2.3 So sánh đánh giá 34 CHƯƠNG 5: KẾT LUẬN 36 5.1 Kết đạt 36 5.2 Những điểm hạn chế 36 5.3 Hướng phát triển 37 TÀI LIỆU THAM KHẢO 38 PHỤ LỤC 42 A Framework NCF 42 B Framework ONCF 42 C Phương pháp xếp chồng embedding 43 D Mơ hình SeNCF 43 E Mơ hình SeConvNCF 43 F Các bước chạy thí nghiệm 44 DANH MỤC HÌNH VẼ Hình 1: Ma trận tương tác user-item Hình 2: Framework Neural Collaborative Filtering (NCF [7]) Hình 3: Mơ hình MLP (Multi-Layer Perceptron) trước (a) sau kết hợp thêm metadata hàm chuẩn hoá (l2 regularization) (b) Hình 4: Mơ hình DNCF mở rộng từ NeuMF Hình 5: Framework Outer product-based NCF (ONCF [10]) Hình 6: Embedding vector 3706 movies tập MovieLens1M 14 Hình 7: Embedding vector 3706 movies tập MovieLens1M nhóm theo rating 14 Hình 8: Xếp chồng embedding user item 16 Hình 9: Mơ hình SeNCF 21 Hình 10: Mơ hình SeConvNCF kết hợp mơ hình SeNCF mơ hình ConvNCF 24 Hình 11: Giá trị HR@10, NDCG@10 mơ hình SeConvNCF theo số step cơng cụ trực quan TensorboardX 31 Hình 12: So sánh mơ hình framework NCF mơ hình 35 DANH MỤC BẢNG Bảng 1: So sánh kĩ thuật dựa lọc cộng tác (CF) Bảng 2: Một số thông tin liệu sử dụng 29 Bảng 3: So sánh kết gợi ý HR@10 mơ hình thay đổi 32 Bảng 4: So sánh kết gợi ý HR@10 mơ hình thay đổi số lượng X feature map mạng CNN 33 DANH MỤC TỪ VIẾT TẮT VÀ THUẬT NGỮ Từ viết tắt, Từ đầy đủ Ý nghĩa ĐATN Đồ án tốt nghiệp Đồ án tốt nghiệp RS Recommender System Hệ thống gợi ý CF Colarborative Filtering Lọc cộng tác CBF Content-based Filtering Lọc nội dung MF Matrix Factorization Phân rã ma trận thuật ngữ GMF MLP NCF NeuMF DNCF ONCF SeConvNCF SeNCF Generalized Matrix Factorization Tổng quát hoá phân rã ma trận Multi-Layers Perceptron Mạng neuron đa lớp Neural Collaborative Filtering Kiến trúc mạng neuron hướng framework lọc cộng tác Neural Matrix Factorization Mạng neuron dựa phân rã ma trận Deep Neural Mạng học sâu neuron đa lớp Colarborative Filtering hướng lọc cộng tác Outer product-based Neural Kiến trúc mạng neuron tích chập Collaborative Filtering hướng lọc cộng tác dựa phép framework tích ngoại Stacked embedding Mạng neuron tích chập hướng lọc Convolutional Neural cộng tác sử dụng xếp chồng Collaborative Filtering embedding Stacked embedding Neural Mạng neuron hướng lọc cộng tác sử Collaborative Filtering dụng xếp chồng embedding - NeuMF [9]: kết hợp hai mơ hình GMF MLP, nhằm tăng cường lẫn việc mơ hình tương tác user-item - DNCF [11]: mơ hình mở rộng NeuMF, sử dụng thêm embedding user/item metadata đầu vào mơ hình MLP, bổ sung thêm lớp ẩn liên kết đầy đủ mơ hình GMF để cải thiện khả mơ hình hố tương tác phức tạp user-item tận dụng đặc trưng có ý nghĩa khác từ metadata Tuy nhiên, thông tin metadata không sử dụng để tạo so sánh công phương pháp - ConvNCF [3]: sử dụng phép tích chập biểu diễn embedding user/item để tạo nên đồ tương tác, áp dụng mạng tích chập để trích xuất đặc trưng tương quan cục bộ-toàn cục Lưu ý tác giả sử dụng cố định số lượng đặc trưng ẩn 𝐾 = 64, số lượng feature maps 𝑋 = 32 tối ưu mơ hình theo chiến lược huấn luyện theo cặp điểm liệu (pairwise training) 4.1.3 Tham số mô hình Như trình bày, mơ hình SeNCF mơ hình SeConvNCF có tham số số lượng feature map, số lượng đặc trưng ẩn (latent feature), số lượng lấy mẫu ngẫu nhiên phản hồi tiêu cực từ missing data Tất tham số mơ hình khởi tạo theo phân phối Gaussian 𝒩(0, 0.01) với trung bình độ lệch chuẩn 0.01 Do mơ hình ConvNCF sử dụng chiến lược tối ưu theo cặp điểm liệu (pairwise training) liệu sử dụng liệu thưa, áp dụng tối ưu theo cặp dễ dẫn đến kết tồi khơng đủ liệu Do đó, áp dụng chiến lược huấn luyện tối ưu theo điểm liệu (pointwise training) sử dụng đồng hàm log-loss (9) tất mô hình Tốc độ học (learning rate) sử dụng 0.001 sử dụng phương phám Adam [38] để tối ưu hàm mát Ngoài ra, số lượng lấy mẫu phản hồi tiêu cực 4, áp dụng giống với tất mơ hình kết nghiên cứu trước cho thấy mơ hình đạt kết tốt với giá trị Sau đó, tơi đánh giá hiệu chất lượng mơ hình top-k với 𝑘 = 10 Ở nghiên cứu trước, việc áp dụng tiền huấn luyện (pre-training) embedding vector giúp cải thiện hiệu mơ hình, tơi áp 30 dụng kĩ thuật tiền huấn luyện mô hình lựa chọn kết tốt từ việc có/khơng sử dụng kĩ thuật Lưu ý: Mơ hình ConvNCF đổi lại tối ưu chiến lược huấn luyện theo điểm liệu pointwise training (các thông số cịn lại giữ ngun mơ hình gốc) kí hiệu ConvNCF* 4.2 Kết thử nghiệm so sánh phương pháp khác Tôi thực thí nghiệm: - 𝐸𝑥1 : Thử nghiệm ảnh hưởng số lượng đặc trưng ẩn K tới hiệu mơ hình - 𝐸𝑥2 : Thử nghiệm ảnh hưởng số lượng feature map X lớp tích chập tới hiệu mơ hình 4.2.1 Thử nghiệm với tham số K đặc trưng ẩn Hình 11 kết trực quan thông số 𝐻𝑅@10 𝑁𝐷𝐶𝐺@10 mơ hình SeConvNCF với 𝐾 = 64, 𝑋 = 64 Có thể thấy mơ hình đạt trạng thái tối ưu tốt khoảng 𝑠𝑡𝑒𝑝 = 7000, 𝐻𝑅@10 = 0.78 𝐻𝑅@10 = 0.52 Sau đó, mơ hình có xu hướng giảm kết testing set, ta sử early- stopping để kết thúc sớm q trình huấn luyện mơ hình khoảng 𝑠𝑡𝑒𝑝 = [7000 .8000] Hình 11: Giá trị HR@10, NDCG@10 mơ hình SeConvNCF theo số step cơng cụ trực quan TensorboardX 31 Bảng so sánh kết mơ hình thay đổi số lượng 𝐾 đặc trưng ẩn (lúc số lượng feature map 𝑋 mơ hình sử dụng mạng CNN khơng đổi, 𝑋 = 32) Một số mơ hình khơng có đầy đủ số liệu giữ nguyên thiết kế gốc tác giả (ConvNCF), có số lượng đặc trưng ẩn không đổi 𝐾 = 64, không sử dụng thông số đặc trưng ẩn (ItemPop) Bảng 3: So sánh kết gợi ý HR@10 mơ hình thay đổi số lượng K đặc trưng ẩn HR@10 Tập liệu K Movilens1M ItemPop 16 32 64 Tập liệu K 0.237 32 MLP NeuMF DNCF 0.684 0.677 0.688 0.686 0.697 0.684 0.705 0.709 0.705 0.697 0.721 0.727 0.714 0.708 0.731 0.742 ConvNCF* SeNCF SeConNCF 0.690 X 0.725 X 0.746 0.767 0.773 0.781 ConvNCF* SeNCF SeConNCF Pinterest ItemPop 16 GMF 0.288 64 GMF MLP NeuMF DNCF 0.842 0.854 0.866 0.878 0.845 0.857 0.867 0.880 0.846 0.859 0.871 0.879 0.847 0.855 0.870 0.877 0.850 X 0.861 X 0.873 0.894 0.885 0.902 Nhận xét: - Có thể thấy, mơ hình cho kết tốt nhiều so với phương pháp ItemPop phương pháp ItemPop khơng phải phương pháp gợi ý mang tính cá nhân hố Do đó, nên tìm cách mơ hình tương tác user-item qua nhiều góc nhìn, khía cạnh khác - Trên liệu thực tế Movilens1M Pinterest, phương pháp sử dụng mạng tích chập dựa framework ONCF để trích xuất mối tương quan cho kết tốt mơ hình sử dụng mạng liên kết đầy đủ dựa framework NCF, đặc biệt 𝐾 lớn Điều hợp lý số chiều embedding biểu diễn user/item tăng lên, mơ hình sử dụng mạng CNN có xu hướng trích xuất tốt mối tương quan user-item, mô hình dựa NCF có xu hướng hội tụ dễ đánh tính tổng quát (trường hợp liệu Pinterest) 32 - Mơ hình ConvNCF có nhỉnh mơ hình SeNCF chút số lượng K nhỏ (do biểu diễn tích ngoại trích xuất nhiều tương quan theo cặp số chiều nhỏ), nhiên 𝐾 > 32, hiệu hai mơ hình tương đồng K lớn độ chênh lệch mơ hình khơng rõ rệt Đối với tập liệu Pinterest, việc tăng số lượng đặc trưng ẩn không cải thiện nhiều kết quả, cho thấy không nên sử dụng số lượng đặc trưng ẩn lớn tập liệu Số lượng đặc trưng ẩn phụ thuộc số lượng user item hệ thống, với hệ - thống bé/ liệu liệu thưa, ta nên sử dụng 𝐾 < 100 Mơ hình SeConvNCF cho kết tốt mơ hình, cho thấy việc kết hợp mơ hình lại với thực cải thiện hiệu mơ hình 4.2.2 Thử nghiệm với tham số X số lượng feature map mạng CNN Bảng so sánh kết mơ hình thay đổi số lượng 𝑋 số lượng feature map lớp mạng CNN mơ hình dựa framework ONCF Ta thử thay đổi kiến trúc mơ hình gốc ConvNCF chút việc thay đổ số lượng feature map, vector đầu mơ hình ConvNCF có số chiều × 𝑋 Mơ hình SeConvNCF có 𝑋 feature map lớp tích chập mơ hình SeNCF Bảng 4: So sánh kết gợi ý HR@10 mơ hình thay đổi số lượng X feature map mạng CNN HR@10 Tập liệu X Movilens1M ItemPop GMF MLP NeuMF DNCF 16 32 64 Tập liệu X 16 0.237 0.714 0.708 0.731 0.742 ConvNCF* SeNCF SeConNCF 0.701 0.697 0.708 0.741 0.734 0.758 0.767 0.764 0.781 0.770 0.772 0.787 ConvNCF* SeNCF SeConNCF 0.825 0.811 0.831 0.851 0.838 0.867 Pinterest ItemPop GMF MLP NeuMF 0.288 0.846 0.857 0.871 DNCF 0.880 33 32 0.894 0.872 0.901 64 0.902 0.894 0.905 Nhận xét: - Từ bảng 4, thấy liệu thực tế Movilens1M Pinterest, tăng số lượng feature map 𝑋 phương pháp sử dụng mạng tích chập dựa framework ONCF, mơ hình có khả trích xuất nhiều khía cạnh mối tương quan phức tạp Tuy nhiên, nên tăng số lượng feature map (𝑋 < 100) làm việc liệu Movielens1M Pinterest Việc tăng số lượng feature map từ 32 lên 64 có giúp mơ hình cải thiện khả khơng đáng kể liệu - Mô hình SeNCF cho kết tương đồng với mơ hình ConvNCF 4.2.3 So sánh đánh giá Xét mặt số lượng tham số, mơ hình SeConvNCF có lượng tham số nhiều so với mơ hình dựa framework NCF (ít 2-4 triệu tham số so với mơ hình NeuMF [6], DNCF [11]) Nếu sử dụng mơ hình MLP có hidden layer sau đồ tương tác làm phẳng (flatten), số lượng tham số lên tới gần 8,2 triệu tham số Có thấy, việc áp dụng mạng tích chập CNN giúp tối ưu hố kích thước mơ hình tăng tính tổng qt hố so với mơ hình MLP thơng thường, đồng thời giúp ổn định đối phó với liệu thưa (sparse data) Biểu đồ hình 12 cho thấy phương pháp sử dụng mạng tích chập để mơ hình hố tương quan user-item cho kết tốt so với mơ hình sử dụng mạng liên kết đầy đủ dựa framework NCF liệu thực tế Cụ thể, mô hình SeConvNCF cải thiện khoảng 5.6% so với mơ hình NeuMF 4.5% so với mơ hình DNCF thông số 𝐻𝑅@10 xét liệu MovieLens1M Đối với liệu Pinterest, mơ hình SeConvNCF cải thiện từ 2.5%-3.4% so sánh với mơ hình DNCF NeuMF Ngồi ra, mơ hình kết hợp SeConvNCF cải thiện khoảng 1,5%2% thông số 𝐻𝑅@10 so sánh với mơ hình ConvNCF, SeNCF 34 Hình 12: So sánh mơ hình framework NCF mơ hình frameworkONCF Như vậy, mối tương quan user-item biểu diễn qua đồ tương tác nhờ phép tích chập phép xếp chồng khai thác, mơ hình hố hiệu so với phương pháp trước Mơ hình dựa mạng CNN dễ dàng sâu có lượng tham số đáng kể sử dụng chung trọng số kernel trích mối tương quan user-item từ cục tới toàn cục Tuy nhiên, cần thực nhiều thử nghiệm để thiết kế xác định thông số tối ưu cho lớp mạng tích chập, mã hố thêm thơng tin khác vào tương tác để trích xuất tốt quan hệ user-item 35 CHƯƠNG 5: KẾT LUẬN 5.1 Kết đạt Trong trình làm luận văn, nghiên cứu, học hỏi thực nghiệm mơ hình hệ gợi ý state-of-the-art số kỹ thuật xử lý, biểu diễn liệu, kĩ thuật phân rã ma trận, giảm chiều liệu Từ việc đặt toán xác định vấn đề cụ thể, biết cách chọn phương pháp phù hợp để giải vấn đề, cụ thể với đề tài mơ hình hệ thống gợi y hướng lọc cộng tác Tôi biết cách tự thiết kế mơ hình gợi ý, dựa thành tựu mơ hình, phương pháp trước Các kết thử nghiệm cho thấy mơ hình giải số vấn đề như: biểu diễn tốt mối tương quan user-item nhờ áp dụng phương pháp xếp chồng embedding áp dụng phép tích ngoại Việc kết hợp mơ hình để tạo mơ hình kết hợp cải thiện 1.7-5.6% kết gợi ý so với mơ hình sở Ngồi ra, q trình làm luận văn giúp sử dụng thành thạo thư viện Pytorch, hỗ trợ mạnh mẽ cho việc nghiên cứu xây dựng mơ hình mạng neural Deep Learning thư viện, công cụ trực quan Tensorboard, seaborn,… Đó cơng cụ hữu ích bước đường nghề nghiệp 5.2 Những điểm hạn chế Với hệ thống lớn thực tế, lượng liệu có nhiều nhiễu việc xử lý liệu thô vấn đề đặt Trong luận văn này, việc xử lý nhiễu liệu chưa coi trọng Hơn nữa, thông tin hữu ích khác (user/item metadata, tags …) chưa sử dụng để kiểm tra khả nâng cao chất lượng gợi ý hệ thống Các kết mô hình đề xuất cải thiện so với nghiên cứu trước, nhiên cần nghiên cứu áp dụng thêm tư tưởng phương pháp gần dựa đồ thị mạng neuron (graph-based neural network), cho kết tốt liệu mạng xã hội 36 Do thời gian khả tơi cịn hạn chế chưa có điều kiện thực nghiệm mơ hình đề xuất nhiều tập sở liệu khác có nội dung phức tạp hơn, để kiểm chứng mơ hình có phù hợp với đa số liệu phần liệu đặc thù 5.3 Hướng phát triển Từ kết đạt hạn chế nêu trên, hướng phát triển cho luận văn cải thiện độ xác mơ hình gợi ý việc áp dụng kĩ thuật phân tích ngữ nghĩa tương tác người dùng kĩ thuật attention-based để lọc nhiễu tập trung vào tương tác Ngoài ra, việc thu thập liệu thực tế từ người dùng đóng vai trò quan trọng Việc tự động phân loại trích xuất đặc trưng từ liệu thơ mà hệ thống tự động thu thập góp phần cải thiện khả hệ thống 37 TÀI LIỆU THAM KHẢO Schafer J.B., Frankowski D., Herlocker J., et al (2007) Collaborative filtering recommender systems The adaptive web Springer, 291–324 Simard P.Y., Steinkraus D., and Platt J.C (2003) Best practices for convolutional neural networks applied to visual document analysis Icdar He X., Du X., Wang X., et al (2018) Outer product-based neural collaborative filtering ArXiv Prepr ArXiv180803912 (2015) MovieLens 1M Dataset GroupLens, , accessed: 10/21/2020 pinterest recommendation data , accessed: 10/21/2020 Lops P., De Gemmis M., and Semeraro G (2011) Content-based recommender systems: State of the art and trends Recommender systems handbook Springer, 73–105 Schafer J.B., Frankowski D., Herlocker J., et al (2007) Collaborative filtering recommender systems The adaptive web Springer, 291–324 Figure 5.3 User-item ratings matrix for collaborative filtering ResearchGate, , accessed: 11/22/2020 Koren Y., Bell R., and Volinsky C (2009) Matrix factorization techniques for recommender systems Computer, 42(8), 30–37 10 He X., Liao L., Zhang H., et al (2017) Neural collaborative filtering Proceedings of the 26th international conference on world wide web, 173– 182, 173–182 11 Vũ Nhật Anh., TS.V.T.T (2019) Đồ án tốt nghiệp kỹ sư - Hệ gợi ý sử dụng mạng học sâu neuron đa lớp hướng lọc cộng tác 12 Xue H.-J., Dai X., Zhang J., et al (2017) Deep Matrix Factorization Models for Recommender Systems IJCAI, Melbourne, Australia, 3203–3209, 3203– 3209 13 Song B., Yang X., Cao Y., et al (2018) Neural Collaborative Ranking ArXiv180804957 Cs 38 14 (2020) Graphics processing unit Wikipedia, , accessed: 10/20/2020 15 (2020) CUDA Wikipedia, , accessed: 10/20/2020 16 Barkan O and Koenigstein N (2016) ITEM2VEC: Neural item embedding for collaborative filtering 2016 IEEE 26th International Workshop on Machine Learning for Signal Processing (MLSP), Vietri sul Mare, Salerno, Italy, IEEE, 1–6, 1–6 17 Studer R (2020) The Difference Between Model- and Memory-Based Recommenders Medium, , accessed: 10/20/2020 18 Zhao Z.-D and Shang M.-S (2010) User-based collaborative-filtering recommendation algorithms on hadoop 2010 Third International Conference on Knowledge Discovery and Data Mining, IEEE, 478–481, 478–481 19 Zhao Z.-D and Shang M.-S (2010) User-based collaborative-filtering recommendation algorithms on hadoop 2010 Third International Conference on Knowledge Discovery and Data Mining, IEEE, 478–481, 478–481 20 Sarwar B., Karypis G., Konstan J., et al (2001) Item-based collaborative filtering recommendation algorithms Proceedings of the 10th international conference on World Wide Web, 285–295, 285–295 21 Wold S., Esbensen K., and Geladi P (1987) Principal component analysis Chemom Intell Lab Syst, 2(1–3), 37–52 22 De Lathauwer L., De Moor B., and Vandewalle J (2000) A multilinear singular value decomposition SIAM J Matrix Anal Appl, 21(4), 1253–1278 23 He X., Liao L., Zhang H., et al (2017) Neural collaborative filtering Proceedings of the 26th international conference on world wide web, 173– 182, 173–182 24 Rendle S., Freudenthaler C., Gantner Z., et al (2012) BPR: Bayesian personalized ranking from implicit feedback ArXiv Prepr ArXiv12052618 39 25 He X., He Z., Du X., et al (2018) Adversarial personalized ranking for recommendation The 41st International ACM SIGIR Conference on Research & Development in Information Retrieval, 355–364, 355–364 26 Wu Y., DuBois C., Zheng A.X., et al (2016) Collaborative denoising autoencoders for top-n recommender systems Proceedings of the Ninth ACM International Conference on Web Search and Data Mining, 153–162, 153– 162 27 Shams B and Haratizadeh S (2017) Graph-based Collaborative Ranking Expert Syst Appl, 67, 59–70 28 Ordinal and One-Hot Encodings for Categorical Data , accessed: 10/21/2020 29 Gupta S (2019) Collaborative Filtering and Embeddings — Part Medium, , accessed: 11/22/2020 30 (2020) t-distributed stochastic neighbor embedding Wikipedia, , accessed: 10/21/2020 31 Zhang Y., Ai Q., Chen X., et al (2017) Joint representation learning for topn recommendation with heterogeneous information sources Proceedings of the 2017 ACM on Conference on Information and Knowledge Management, 1449–1458, 1449–1458 32 (PDF) Contrasting Convolutional Neural Network (CNN) with Multi-Layer Perceptron (MLP) for Big Data Analysis ResearchGate, , accessed: 10/21/2020 33 Ben Driss S., Soua M., Kachouri R., et al (2017) A comparison study between MLP and convolutional neural network models for character recognition Anaheim, California, United States, 1022306, 1022306 40 34 Maas A.L., Hannun A.Y., and Ng A.Y (2013) Rectifier nonlinearities improve neural network acoustic models Proc icml, 3, 35 (2020) Activation function Wikipedia, , accessed: 10/21/2020 36 Ruder S (2016) An overview of gradient descent optimization algorithms ArXiv Prepr ArXiv160904747 37 Bottou L (2010) Large-scale machine learning with stochastic gradient descent Proceedings of COMPSTAT’2010 Springer, 177–186 38 Kingma D.P and Ba J (2014) Adam: A method for stochastic optimization ArXiv Prepr ArXiv14126980 39 Kingma D.P and Ba J (2014) Adam: A method for stochastic optimization ArXiv Prepr ArXiv14126980 40 Horikawa S., Furuhashi T., and Uchikawa Y (1992) On fuzzy modeling using fuzzy neural networks with the back-propagation algorithm IEEE Trans Neural Netw, 3(5), 801–806 41 Steck H (2011) Item popularity and recommendation accuracy Proceedings of the fifth ACM conference on Recommender systems, Chicago, Illinois, USA, Association for Computing Machinery, 125–132, 125–132 41 PHỤ LỤC A Framework NCF B Framework ONCF 42 C Phương pháp xếp chồng embedding D Mơ hình SeNCF E Mơ hình SeConvNCF 43 F Các bước chạy thí nghiệm Bước 1: Cài đặt Python3 (khuyến nghị phiên từ 3.7): https://www.python.org/downloads/ Bước 2: Tải (clone) source code từ link github: https://github.com/anhnktp/master_thesis_recsys.git Bước 3: Chuẩn bị liệu đầu vào MovieLens1M Pinterest qua xử lý từ link: https://drive.google.com/drive/folders/1HZ9VKsC3E5BluWa3PvLTf1Ur0 djVQkCZ?usp=sharing Sau giải nén liệu đặt folder /data Bước 4: Cài đặt thư viện lệnh: pip3 install numpy,tensorboardX,tensorflow,pytorch,pandas,matplotlib Bước 5: Cấu hình tham số mơ hình: “model_type”, “dataset_name”, “batch_size”, “num_epoch”, “mf_pretrain”, “num_neg”, “num_fm”, “num_factor”, “learner”, “lr”, “lr_scheduler”, “l2reg”, “dropout”, “top_k”… file train.py Có thể bỏ qua bước truyền trực tiếp tham số câu lệnh bước năm Bước 5: Gõ lệnh sau để bắt đầu xử lý liệu huấn luyện mơ hình (sử dụng tham số mặc định tuỳ chỉnh từ bước 4): python train.py Nếu muốn thay đổi tham số mặc định, truyền trực tiếp tham số câu lệnh: python train.py model_type SeNCF dataset_name ml-1m top_k 10 batch_size 256 num_epoch 30 num_neg num_fm 64 num_factor 64 Gõ lệnh sau để biết tất tham số: python train.py help Bước 6: Gõ lệnh để theo dõi trực quan (visualize) kết tensorboardX tensorboard logdir runs/ port 5000 host 0.0.0.0 Sau mở localhost:5000 để theo dõi kết Loss, HR NDCG cửa sổ scalar tensorboard 44 ... thông, Trường Đại học Bách Khoa Hà Nội Tên đề tài (tiếng Việt): Hệ thống gợi ý sử dụng đồ tương tác mạng tích chập hướng lọc cộng tác Tên đề tài (tiếng Anh): Collaborative filtering recommender...

Ngày đăng: 07/12/2021, 23:17

Mục lục

    TÀI LIỆU THAM KHẢO

Tài liệu cùng người dùng

Tài liệu liên quan