ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA TOÁN - TIN HỌC
Báo cáo Seminar chuyên ngành khoa học dữ liệu
Đề tài: recommendation system based on deep learning
Trang 21.2.3.2 Lọc dựa trên nội dung (Content-based Filtering) 6
1.2.3.3 Hệ thống gợi ý lai (Hybrid recommender systems) 7
1.2.4 Deep learning trong hệ thống gợi ý 8
Chương 2: Hệ thống tư vấn kết hợp dựa trên bert (HybridBERT4Rec) 9 Hình 1.1 Ma trận biểu diễn dữ liệu trong RS (user-item-rating matrix) 5
Hình 1.2 Tổng quan về các mô hình trong hệ thống tư vấn 6
Hình 1.3 Mô hình Collaborative-Based Fitering 7
Hình 1.4 Mô hình Content-Based Fitering 8
Hình 1.5 Mô hình Hybrid 9
Hình 1.1 Kiến trúc mô hình HybridBERT4Rec 10
Hình 2.2 Đầu vào của CF và CBF trong mô hình HybridBERT4Rec 11
Trang 3LỜI MỞ ĐẦU
Trong thập kỷ qua, Internet đã phát triển mạnh mẽ và trở thành nền tảng cho các dịch vụ trực tuyến quy mô lớn, thay đổi sâu sắc cách chúng ta giao tiếp, đọc tin tức, mua sản phẩm và xem phim hay tổng quát là cách chúng ta tương tác với những gì mà chúng ta quan tâm Sự phát triển này đã tạo ra một lượng lớn các mặt hàng trực tuyến, từ phim ảnh, tin tức, sách đến sản phẩm, đòi hỏi một hệ thống có khả năng giúp chúng ta khám phá các mặt hàng mà chúng ta mong muốn Đó là lý do tại sao hệ thống gợi ý, sử dụng các phương pháp lọc thông tin sâu sắc, đóng vai trò quan trọng trong việc hỗ trợ các dịch vụ được cá nhân hóa và cung cấp trải nghiệm phù hợp cho từng người dùng Để tìm hiểu về hệ thống gợi ý dựa trên các phương pháp lọc sử dụng deep learning, nhóm chúng em xem xét về mô hình HybridBert4Rec cũng như các cách tiếp cận chính để xây dựng hệ thống gợi ý Mô hình HybridBert4Rec kết hợp cả hai phương pháp lọc thông tin theo nội dung và lọc cộng tác, tận dụng sức mạnh của BERT để đưa ra các đề xuất cá nhân hóa hiệu quả
Các cách tiếp cận chính để xây dựng hệ thống gợi ý bao gồm nhóm giải thuật lọc theo nội dung sử dụng BERT và nhóm giải thuật lọc cộng tác sử dụng BERT Nhóm giải thuật lọc theo nội dung tập trung vào việc đề xuất các mặt hàng tương tự dựa trên nội dung của mặt hàng, trong khi nhóm giải thuật lọc cộng tác đề xuất dựa trên hành vi và phản hồi từ người dùng
Chúng ta sẽ đi sâu vào từng phương pháp trong các phần tiếp theo để hiểu rõ hơn về cách chúng hoạt động và ứng dụng của chúng trong việc xây dựng hệ thống gợi ý
Trang 4NỘI DUNG
Chương 1: Tổng quan về hệ thống gợi ý (recommender system) 1.1 Giới thiệu
Hệ thống gợi ý (Recommender Systems - RS) là một dạng của hệ thống lọc thông tin (information filtering), nó được sử dụng để dự đoán sở thích (preferences) hay xếp hạng (rating) mà người dùng có thể dành cho một mục thông tin (item) nào đó mà họ chưa xem xét tới trong quá khứ (item có thể là bài hát, bộ phim, đoạn video clip, sách, bài báo, )
Ví dụ, trong hệ thống bán hàng trực tuyến (chẳng hạn như Amazon), nhằm tối ưu hóa khả năng mua sắm của khách hàng (user), người ta quan tâm đến việc những khách hàng nào đã ‘yêu thích’ những sản phẩm (item) nào bằng cách dựa vào dữ liệu quá khứ của họ (dữ liệu này có thể là xếp hạng mà người dùng đã bình chọn trên sản phẩm, thời gian duyệt (browse) trên sản phẩm, số lần click chuột trên sản phẩm, ) từ đó hệ thống sẽ dự đoán được người dùng có thể thích sản phẩm nào và đưa ra những gợi ý phù hợp cho họ
Hệ thống gợi ý không chỉ đơn thuần là một dạng Hệ thống thông tin mà nó còn là cả một lĩnh vực nghiên cứu hiện đang rất được các nhà khoa học quan tâm Kể từ năm 2007 đến nay, hàng năm đều có hội thảo chuyên về hệ thống gợi ý của ACM (ACM RecSys) cũng như các tiểu bang dành riêng cho RS trong các hội nghị lớn khác như
ACM KDD, ACM CIKM,
1.2 Hệ thống gợi ý (recommender systems) 1.2.1 Các khái niệm chính
Trong Recommender system, thông thường người ta quan tâm đến ba thông tin chính là người dùng (user), mục tin (item, item có thể là sản phẩm, bộ phim, bài hát, bài báo, tùy hệ thống), và phản hồi (feedback) của người dùng trên mục tin đó (thường
là các xếp hạng/đánh giá – rating biểu diễn mức độ thích/quan tâm của họ) Các thông tin này được biểu diễn thông qua một ma trận như trong Hình 1.1
Trang 5Nhiệm vụ chính của hệ thống tư vấn là dựa vào các ô đã có giá trị trong ma trận trên (dữ liệu thu được từ quá khứ), thông qua mô hình đã được xây dựng, hệ thống tư vấn dự đoán các ô còn trống (của user hiện hành), sau đó sắp xếp kết quả dự đoán (ví dụ: từ cao xuống thấp) và chọn ra Top-N items theo thứ tự, từ đó gợi ý chúng cho người dùng
1.2.2 Thông tin phản hồi từ người dùng và hai dạng bài toán chỉnh trong hệ thống tư vấn
Trong hệ thống tư vấn, giá trị phản hồi (feedback) rui của mỗi người dùng trên mục tin sẽ được ghi nhận lại để làm cơ sở cho việc dự đoán các giá trị kế tiếp Tùy theo hệ thống mà giá trị này sẽ có ý nghĩa khác nhau, ví dụ nó có thể dùng để đo độ “phù hợp” hay “mức độ thích” (thường là các đánh giá trên các sản phẩm) trong các hệ thống thương mại điện tử hay “năng lực/kết quả thực hiện” của người dùng trong các hệ thống e-learning
Giá trị rui có thể được xác định một cách tường minh (explicit feedback) như thông qua việc đánh giá/xếp hạng (ví dụ, rating từ 1 sao đến 5 sao; hay like (1) và dislike
(0), …) mà người dùng u đã bình chọn cho item i; hoặc rui có thể được xác định một cách không tường minh (implicit feedback) thông qua số lần click chuột, thời gian mà
u đã duyệt/xem i, …
Có 2 dạng bài toán chính trong hệ thống tư vấn là dự đoán xếp hạng (rating
prediction) của các hệ thống có phản hồi tường minh như đã trình bày ở trên và dự đoán mục thông tin (item prediction/recommendation) là việc xác định xác suất mà người
dùng thích mục tin tương ứng
Hình 1.1 Ma trận biểu diễn dữ liệu trong RS (user-item-rating matrix)
Trang 61.2.3 Các kỹ thuật chính trong hệ thống tư vấn
Hiện tại, trong RS có rất nhiều giải thuật được đề xuất, tuy nhiên có thể gom chúng vào trong các nhóm chính: nhóm giải thuật lọc theo nội dung (content-based filtering), nhóm giải thuật lọc cộng tác (collaborative filtering), nhóm giải thuật lai ghép (hybrid filtering)
1.2.3.1 Lọc cộng tác (Collaborative Filtering)
Collaborative Filtering là mô hình xây dựng cơ sở dữ liệu tùy chọn của người dùng bằng cách sử dụng dữ liệu đánh giá của người dùng để dự đoán các mục phù hợp với sở thích của người dùng và sau đó sử dụng nó để đề xuất Mô hình này có thể được phân loại thành Memory-Based Collaborative Filtering và Model-Based Collaborative Filtering Memory-Based Collaborative Filtering có thể được chia thành User-Based Collaborative Filtering và Item-Based Collaborative Filtering User-Based Collaborative Filtering là mô hình so sánh sự tương đồng giữa những người dùng bằng cách so sánh dữ liệu đánh giá cho từng người dùng của cùng một mặt hàng, sau đó tạo và đề xuất danh sách N mặt hàng hàng đầu phù hợp với sở thích dựa trên xếp hạng của từng mặt hàng của một nhóm người dùng tương tự Item-Based Collaborative Filtering dự đoán một mục bằng cách sử dụng sự giống nhau giữa mục đó và mục do người dùng chọn bằng cách tạo ma trận xếp hạng của người dùng và mục đó Nói cách khác, Memory-Based Collaborative Filtering sử dụng các công nghệ như tương quan Pearson, tương quan vector Cosine và KNN để tạo ra các nhóm tương tự (nhóm lân cận) giữa
Hình 1.2 Tổng quan về các mô hình trong hệ thống tư vấn
Trang 7những người dùng và giới thiệu các mặt hàng cho người dùng trong cùng một nhóm Vì Memory-Based Collaborative Filtering đã được sử dụng trong các dịch vụ thương mại điện tử như Amazon, nên mô hình đề xuất Collaborative-based Filtering đã ngăn chặn tình trạng rời bỏ khách hàng và tăng doanh số bán hàng Tuy nhiên, nếu mô hình không bao gồm đủ dữ liệu, ba vấn đề có thể xảy ra: thưa thớt, khởi động nguội và grey sheep
1.2.3.2 Lọc dựa trên nội dung (Content-based Filtering)
Content-based Filtering là phương pháp đề xuất các mục có thuộc tính tương tự với thuộc tính mà người dùng thích và đề xuất chúng dựa trên thông tin của các mục Nghĩa là, đây là phương pháp đề xuất các mặt hàng tương tự dựa trên thông tin về các mặt hàng đã được người dùng lựa chọn trước đây Mô hình Content-based Filtering là mô hình cơ bản nhất trong mô hình hệ thống đề xuất tổng thể và được sử dụng chủ yếu trong thời kỳ đầu các hệ thống tư vấn Tuy nhiên, theo kết quả nghiên cứu của Salter et al, mô hình Content-based Filtering chỉ tư vấn dữ liệu liên quan đến các mục có liên quan chặt chẽ với các mục được đánh giá trước đó bởi người dùng, vì vậy hệ thống được biết đến với hạn chế là không thể đề xuất các mặt hàng mới Do vậy, có một nhược điểm là nó không cung cấp cho người dùng cơ hội truy cập nhiều nội dung khác nhau Do những hạn chế này nên mô hình này chủ yếu được sử dụng trong các dịch vụ đề xuất các mục hoặc các mục dữ liệu văn bản dễ đề xuất dựa trên thông tin mục và thông tin hồ sơ người dùng Nó chủ yếu được sử dụng trong các lĩnh vực ứng dụng khác nhau, chẳng hạn như đề xuất theo đặc tính của âm nhạc, đề xuất theo đặc tính của phim, đề xuất thương mại điện tử và đề xuất tài liệu giáo dục Mô hình Content-based Filtering
Hình 1.3 Mô hình Collaborative-Based Fitering
Trang 8sử dụng công nghệ khai thác văn bản để xác định sở thích của người dùng, phân tích
ngữ nghĩa, TF-IDF (nghịch đảo tần số), mạng thần kinh, Naive Bayes và SVM
1.2.3.3 Hệ thống gợi ý lai (Hybrid recommender systems)
Cả hai mô hình Filtering đều có những hạn chế vì mô hình lọc dựa trên nội dung dựa trên siêu dữ liệu về mặt hàng của người dùng và lọc cộng tác dựa trên dữ liệu xếp hạng mặt hàng của người dùng Một mô hình tư vấn lai đã được đề xuất để giải quyết những hạn chế của cả hai mô hình lọc khuyến nghị và cải thiện hiệu suất khuyến nghị Mô hình tư vấn lai được chia thành bảy loại: Weighted Hybridization, Switching Hybridization, Cascade Hybridization, Mixed Hybridization, Feature Combination, Feature-Augmentation và Meta-level, theo phương pháp kết hợp các kỹ thuật Filtering trong nghiên cứu của Burks Do mô hình tư vấn lai chủ yếu được thiết kế để giải quyết vấn đề thưa thớt nên mục tiêu chính của hầu hết các nghiên cứu liên quan đến mô hình tư vấn lai là bù đắp cho việc thiếu dữ liệu xếp hạng bằng cách tích hợp thông tin của các mô hình lọc dựa trên nội dung và lọc cộng tác
Hình 1.4 Mô hình Content-Based Fitering
Trang 91.2.4 Deep learning trong hệ thống gợi ý
Deep Learning (DL) là một chủ đề nóng trong cộng đồng học máy Sự phổ biến của việc áp dụng học sâu vào hệ thống gợi ý là tương đối chậm, vì chủ đề này chỉ trở nên phổ biến trong năm 2016, với hội thảo Deep Learning for recommender Systems tại ACM RecSys 2016
Việc mô hình hóa mối quan tâm của người dùng dựa trên lịch sử hành động vi là rất quan trọng đối với mọi hệ thống tư vấn Các phương pháp trước đây sử dụng các sequential neural network để encode lịch sử tương tác của người dùng từ trái sang phải thành các biểu diễn ẩn để thực hiện gợi ý Mặc dù có những hiệu quả nhất định, tuy nhiên cách làm này vẫn tồn tại một số hạn chế:
Khả năng định hướng đơn cấu trúc biểu tượng cho người dùng ẩn chuỗi hành động
Thường dựa trên một giả định không hoạt động về thứ tự trong chuỗi, điều này là không thực tế
Trong hệ thống tư vấn, sự chính xác trong việc hiểu ý định của người dùng và đề xuất thông tin phù hợp là quan trọng Sử dụng BERT(Bidirectional Encoder Representations Transformer) trong hệ thống tư vấn có thể mang lại nhiều lợi ích BERT có khả năng xử lý các mẫu ngôn ngữ phức tạp, giúp hiểu rõ yêu cầu của người dùng ngay cả khi chúng được biểu diễn qua các cấu trúc câu phức tạp Sự tích hợp của BERT cũng giúp hệ thống tư vấn hiểu được ngữ cảnh và mối liên quan giữa các từ, cung cấp các gợi ý và đề xuất tối ưu
Hình 1.5 Mô hình Hybrid
Trang 10Với khả năng mô hình hóa ngữ cảnh mạnh mẽ của mình, BERT có thể được tích hợp vào hệ thống tư vấn để cải thiện sự hiểu biết về ý định của người dùng, tăng cường khả năng đề xuất thông tin phù hợp, và nâng cao trải nghiệm người dùng Sự sáng tạo trong việc sử dụng BERT trong hệ thống tư vấn mở ra những triển vọng mới trong việc tối ưu hóa tương tác giữa người dùng và hệ thống, đồng thời nâng cao độ chính xác và độ phức tạp của quá trình tư vấn
Chương 2: Hệ thống tư vấn kết hợp dựa trên bert (HybridBERT4Rec) 2.1 Gợi ý tuần tự
Hầu hết các hệ thống tư vấn đều xem xét toàn bộ lịch sử tương tác của người dùng, điều này hạn chế độ chính xác của chúng Điều này là do hành vi hiện tại của người dùng phụ thuộc vào sở thích hiện tại của họ Do đó, tư vấn tuần tự xem xét thứ tự các tương tác lịch sử của người dùng, đã được đề xuất và trở nên phổ biến Hầu hết các hệ thống tư vấn tuần tự dựa trên mạng RNN và các biến thể của chúng như Long Short-Term Memory (LSTM) hoặc Gated Recurrent Units (GRUs)
Ý tưởng cơ bản của những phương pháp này là tạo ra một biểu diễn bằng cách mã hóa các bản ghi lịch sử của người dùng thành các vector theo cách khác nhau Ví dụ, trong cả DREAM và MV-RNN, mục tiêu của các mô hình là tạo ra một danh sách gợi ý các mục mà người dùng có thể muốn mua DREAM áp dụng một RNN bằng cách đưa vào một biểu diễn của các mục được thu thập từ các bản ghi lịch sử của người dùng để học một biểu diễn về sở thích của người dùng tại các thời điểm khác nhau Điều này sau đó được sử dụng để tính điểm đánh giá cho mỗi người dùng đối với tất cả các mục ở mỗi bước thời gian Thay vì chỉ sử dụng việc định danh mục (ID) để biểu diễn các mục, như trong DREAM, MV-RNN sử dụng một biểu diễn mục bao gồm các đặc trưng ẩn (ID mục) và các đặc trưng quan sát trực tiếp (hình ảnh và mô tả văn bản) như một đầu vào cho LSTM để bắt kịp sở thích của người dùng
Nhiều mô hình dựa trên GRU đã được đề xuất để mô hình hóa biểu diễn người dung Ví dụ, mô hình GRU dựa trên người dùng tích hợp thông tin người dùng vào một loại mới của GRU để tạo ra một biểu diễn người dùng cá nhân hiệu quả Một số mô hình học sâu khác đã được đề xuất cho tư vấn tuần tự, như mô hình tư vấn tuần tự với mạng nhớ người dùng (RUM) RUM áp dụng MF để dự đoán điểm đánh giá cho người
Trang 11dùng và mục Thay vì sử dụng nhúng người dùng và nhúng mục truyền thống như đầu vào cho MF, RUM kết hợp bản ghi lịch sử của người dùng và nhúng người dùng truyền thống để tạo ra nhúng người dùng của mình
2.2 Mô hình HybridBert4Rec
Kiến trúc của HybridBERT4Rec gồm 3 phần chính là Content-based filtering (CBF), Collaborative-filtering (CF) và lớp dự đoán Đầu vào cho Content-based filtering là chuỗi lịch sử các item mà người dùng mục tiêu đã tương tác để lấy giá trị tương đồng của các item trong chuỗi này với item mục tiêu Trong khi đó đầu vào của Collaborative filtering là chuỗi các người dùng đã đánh giá item mục tiêu để nhận được một tập các người dùng lân cận của người dùng mục tiêu Kết quả của hai phần này sẽ được đưa vào lớp dự đoán dựa trên NCF để đưa ra điểm đánh giá dự đoán cuối cùng
Hình 2.1 Kiến trúc mô hình HybridBERT4Rec
Trang 122.2.1 Các lớp của mô hình
Cả hai phần CBF và CF đều bao gồm 3 lớp chính là Item/user Masking, Embedding và Attention
Item/User Masking: Trong CF, mục tiêu là trích xuất biểu diễn item mục tiêu chứa mức
độ tương đồng giữa người dùng hàng xóm và người dùng mục tiêu Trong quá trình đào tạo, sử dụng phương pháp che ngẫu nhiên người dùng nhằm cho phép mô hình tái tạo người dùng đã che gần giống nhất với phần embedding ban đầu Trong quá trình kiểm thử, việc xây xây dựng biểu diễn item mục tiêu được thực hiện bằng cách che người dùng mục tiêu và thêm vào cuối chuỗi người dùng Trái ngược lại, với CBF mục tiêu là trích xuất biểu diễn người dùng thể hiện sở thích của người dùng mục tiêu đối với item mục tiêu Trong quá trình đào tạo, che ngẫu nhiên item trong chuỗi trình tự các item, mục đích của item bị che này cũng là cho phép mô hình tái tạo lại item được che gần giống nhất với phần embedding ban đầu Trong quá trình kiểm thử, che item mục tiêu và cho nó vào cuối chuỗi các item nhằm dự đoán hồ sơ người dùng mục tiêu đối với item mục tiêu
Embedding layer: dù thứ tự người dùng/item theo trình tự có ý nghĩa quan trọng trong
cả CF và CBF nhưng bộ encoder transformer trong HybridBERT4Rec không thể dùng phép lặp hoặc tích chập nên không thể tính đến thứ tự chuỗi đầu vào Giải quyết vấn đề này bằng cách nhúng vị trí vào chuỗi người dùng được che và chuỗi item được che, do đó lớp embedding này là tổng của nhúng vị trí các người dùng trong chuỗi và nhúng
Hình 2.2 Đầu vào của CF và CBF trong mô hình HybridBERT4Rec