Mở đầu vể recommender system

Giới thiệu về Hệ thống Gợi ý (Recommender system)

"Nhiều người nhận lời khuyên, chỉ những người khôn ngoan mới có lợi từ nó." Harper Lee

1.1 Giới thiệu

Tầm quan trọng ngày càng tăng của Web như một phương tiện cho các giao dịch điện tử và kinh doanh đã đóng vai trò như một động lực cho sự phát triển của công nghệ hệ thống gợi ý. Một chất xúc tác quan trọng trong vấn đề này là sự dễ dàng mà Web cho phép người dùng cung cấp phản hồi về sở thích hoặc không thích của họ.
Ví dụ, hãy xem xét một trường hợp của một nhà cung cấp nội dung như Netflix. Trong những trường hợp như vậy, người dùng có thể dễ dàng cung cấp phản hồi chỉ với một cú nhấp chuột. Một phương pháp điển hình để cung cấp phản hồi là dưới dạng đánh giá, trong đó người dùng chọn các giá trị số từ một hệ thống đánh giá cụ thể (ví dụ: hệ thống đánh giá năm sao) để chỉ ra sở thích và không thích của họ về các mặt hàng khác nhau.
Các hình thức phản hồi khác không rõ ràng như vậy nhưng lại dễ thu thập hơn trong mô hình tập trung vào Web. Ví dụ, hành động đơn giản của một người dùng mua hoặc duyệt một mặt hàng có thể được xem như một sự ủng hộ cho mặt hàng đó. Những hình thức phản hồi như vậy thường được các doanh nghiệp trực tuyến như Amazon.com sử dụng, và việc thu thập loại dữ liệu này hoàn toàn không tốn công sức về mặt tương tác cần thiết từ phía khách hàng.
Ý tưởng cơ bản của các hệ thống gợi ý là sử dụng các nguồn dữ liệu khác nhau để suy luận về sở thích của khách hàng. Thực thể mà gợi ý được cung cấp được gọi là người dùng (user), và sản phẩm được gợi ý cũng được gọi là một mặt hàng (Item). Do đó, phân tích gợi ý thường dựa trên sự tương tác trước đó giữa người dùng và các mặt hàng, vì sở thích và xu hướng trong quá khứ thường là những chỉ báo tốt cho các lựa chọn trong tương lai.
Một ngoại lệ đáng chú ý là trường hợp của các hệ thống gợi ý dựa trên kiến thức, trong đó các gợi ý được đề xuất dựa trên các yêu cầu do người dùng chỉ định thay vì lịch sử quá khứ của người dùng.
Vậy, nguyên tắc cơ bản nào nằm ở nền tảng của việc hoạt động của các thuật toán gợi ý?
Nguyên tắc cơ bản của các gợi ý là có sự phụ thuộc đáng kể giữa hoạt động của người dùng và mặt hàng.
Ví dụ, một người dùng quan tâm đến một bộ phim tài liệu lịch sử có khả năng cao hơn sẽ quan tâm đến một bộ phim tài liệu lịch sử sẽ tương tự một chương trình giáo dục, thay vì một bộ phim hành động. Trong nhiều trường hợp, các danh mục khác nhau của mặt hàng có thể cho thấy sự tương quan đáng kể, điều này có thể được tận dụng để đưa ra các gợi ý chính xác hơn. Ngược lại, các sự phụ thuộc có thể xuất hiện ở mức độ chi tiết hơn của từng mặt hàng thay vì các danh mục.
Các sự phụ thuộc này có thể được học theo cách dựa trên dữ liệu từ ma trận đánh giá, và mô hình kết quả được sử dụng để đưa ra dự đoán cho các người dùng mục tiêu. Số lượng mặt hàng đã được đánh giá lớn hơn và có sẵn cho một người dùng, thì việc đưa ra dự đoán vững chắc về hành vi trong tương lai của người dùng sẽ dễ dàng hơn. Nhiều mô hình học khác nhau có thể được sử dụng để thực hiện nhiệm vụ này. Ví dụ, hành vi mua sắm hoặc đánh giá tập thể của nhiều người dùng khác nhau có thể được tận dụng để tạo ra các nhóm người dùng tương tự quan tâm đến các sản phẩm tương tự. Sở thích và hành động của các nhóm này có thể được tận dụng để đưa ra các gợi ý cho từng thành viên trong nhóm.
Mô tả đã đề cập ở trên dựa trên một khái niệm rất đơn giản của các thuật toán gợi ý, được gọi là các mô hình lân cận. Mô hình này thuộc về một lớp mô hình rộng hơn, được gọi là lọc hợp tác. Thuật ngữ "lọc hợp tác" đề cập đến việc sử dụng các đánh giá từ nhiều người dùng theo cách hợp tác để dự đoán các đánh giá bị thiếu. Trong thực tế, các hệ thống gợi ý có thể phức tạp hơn và giàu dữ liệu, với nhiều loại dữ liệu bổ sung khác nhau. Ví dụ, trong các hệ thống gợi ý dựa trên nội dung, nội dung đóng vai trò chính trong quá trình gợi ý, trong đó các đánh giá của người dùng và các mô tả thuộc tính của mặt hàng được tận dụng để đưa ra dự đoán. Ý tưởng cơ bản là, sở thích của người dùng có thể được mô hình hóa dựa trên các thuộc tính (hoặc đặc điểm) của các mặt hàng mà họ đã đánh giá hoặc truy cập trong quá khứ.
Một khuôn khổ khác là của các hệ thống dựa trên kiến thức, trong đó người dùng tương tác chỉ định sở thích của họ, và sự chỉ định của người dùng được kết hợp với kiến thức miền để cung cấp các gợi ý.
Trong các mô hình tiên tiến, dữ liệu ngữ cảnh, chẳng hạn như thông tin tạm thời, kiến thức bên ngoài, thông tin vị trí, thông tin xã hội, hoặc thông tin mạng, có thể được sử dụng. Cuốn sách này sẽ nghiên cứu tất cả các loại hệ thống cơ bản, bao gồm các hệ thống hợp tác, dựa trên nội dung, và dựa trên kiến thức.
Chúng tôi cũng sẽ thảo luận cả các mô hình cơ bản và các mô hình nâng cao của các hệ thống gợi ý trong các lĩnh vực khác nhau. Chúng tôi sẽ nghiên cứu nhiều khía cạnh của độ vững chắc của các hệ thống gợi ý, chẳng hạn như các mô hình tấn công, và việc xây dựng các mô hình đáng tin cậy. Ngoài ra, một loạt các mô hình đánh giá và lai ghép cho các hệ thống gợi ý sẽ được nghiên cứu một cách kỹ lưỡng.
Trong chương này, mục tiêu là cung cấp một cái nhìn tổng quan về sự đa dạng rộng lớn của công việc trong lĩnh vực các hệ thống gợi ý, và cũng liên kết các chủ đề khác nhau với các chương riêng lẻ của cuốn sách này.
Chương này được tổ chức như sau.
Mục 1.2 thảo luận về các mục tiêu chính của các hệ thống gợi ý.
Mục 1.3 sẽ giới thiệu các mô hình cơ bản và các phương pháp đánh giá được sử dụng trong các hệ thống gợi ý.
Việc sử dụng các hệ thống gợi ý trong các lĩnh vực dữ liệu khác nhau được thảo luận trong mục 1.4.
Các mô hình tiên tiến cho các hệ thống gợi ý được thảo luận trong mục 1.5.
Mục 1.6 thảo luận về các kết luận và tóm tắt.

1.2 Mục tiêu của các hệ thống gợi ý

Trước khi thảo luận về các mục tiêu của các hệ thống gợi ý, chúng tôi giới thiệu các cách khác nhau mà vấn đề về hệ thống gợi ý có thể được hình thành. Có hai mô hình chính như sau:
Phiên bản dự đoán của vấn đề: Cách tiếp cận đầu tiên là dự đoán giá trị đánh giá cho một sự kết hợp người dùng-mặt hàng. Giả định rằng dữ liệu huấn luyện có sẵn, chỉ ra sở thích của người dùng đối với các mặt hàng. Đối với m người dùng và n mặt hàng, điều này tương ứng với một ma trận m x n không đầy đủ, trong đó các giá trị được chỉ định (hoặc quan sát) được sử dụng để huấn luyện. Các giá trị thiếu (hoặc không quan sát) được dự đoán bằng cách sử dụng mô hình huấn luyện này. Vấn đề này cũng được gọi là vấn đề hoàn thành ma trận vì chúng ta có một ma trận giá trị không được chỉ định đầy đủ, và các giá trị còn lại được dự đoán bởi thuật toán.
Phiên bản xếp hạng của vấn đề: Trong thực tế, không cần thiết phải dự đoán các đánh giá của người dùng cho các mặt hàng cụ thể để đưa ra gợi ý cho người dùng. Thay vào đó, một thương nhân có thể muốn gợi ý các mặt hàng hàng đầu cho một người dùng cụ thể, hoặc xác định các người dùng hàng đầu để nhắm đến cho một mặt hàng cụ thể. Việc xác định các mặt hàng hàng đầu là phổ biến hơn so với việc xác định các người dùng hàng đầu, mặc dù các phương pháp trong hai trường hợp là hoàn toàn tương tự. Trong suốt cuốn sách này, chúng tôi sẽ chỉ thảo luận về việc xác định các mặt hàng hàng đầu, vì đây là bối cảnh phổ biến hơn. Vấn đề này cũng được gọi là vấn đề gợi ý top đầu, và nó là hình thức xếp hạng của vấn đề gợi ý. Trong trường hợp thứ hai, các giá trị tuyệt đối của các đánh giá dự đoán không quan trọng. Hình thức đầu tiên là tổng quát hơn, vì các giải pháp cho trường hợp thứ hai có thể được suy ra bằng cách giải quyết hình thức đầu tiên cho các sự kết hợp người dùng-mặt hàng khác nhau và sau đó xếp hạng các dự đoán. Tuy nhiên, trong nhiều trường hợp, dễ dàng và tự nhiên hơn để thiết kế các phương pháp cho việc giải quyết phiên bản xếp hạng của vấn đề trực tiếp. Các phương pháp như vậy sẽ được thảo luận trong Chương 13.
Tăng doanh số sản phẩm là mục tiêu chính của một hệ thống gợi ý. Các hệ thống gợi ý, sau cùng, được sử dụng bởi các thương nhân để tăng lợi nhuận của họ. Bằng cách gợi ý các mặt hàng được chọn lọc cẩn thận cho người dùng, các hệ thống gợi ý mang lại các mặt hàng liên quan đến sự chú ý của người dùng. Điều này làm tăng khối lượng doanh số và lợi nhuận cho thương nhân. Mặc dù mục tiêu chính của một hệ thống gợi ý là tăng doanh thu cho thương nhân, điều này thường đạt được theo những cách ít rõ ràng hơn so với những gì có thể thấy ở cái nhìn đầu tiên. Để đạt được mục tiêu kinh doanh rộng hơn là tăng doanh thu, các mục tiêu hoạt động và kỹ thuật chung của các hệ thống gợi ý như sau:
Sự liên quan: Mục tiêu hoạt động rõ ràng nhất của một hệ thống gợi ý là gợi ý các mặt hàng có liên quan đến người dùng hiện tại. Người dùng có khả năng tiêu thụ các mặt hàng mà họ thấy thú vị. Mặc dù sự liên quan là mục tiêu hoạt động chính của một hệ thống gợi ý, nhưng nó không đủ khi đứng một mình. Do đó, chúng tôi thảo luận về một số mục tiêu thứ cấp dưới đây, mà không quan trọng bằng sự liên quan nhưng vẫn đủ quan trọng để có tác động đáng kể.
Sự mới mẻ: Các hệ thống gợi ý thực sự hữu ích khi mặt hàng được gợi ý là một cái gì đó mà người dùng chưa thấy trong quá khứ. Ví dụ, các bộ phim phổ biến của một thể loại ưa thích sẽ hiếm khi là mới mẻ đối với người dùng. Việc gợi ý lặp đi lặp lại các mặt hàng phổ biến cũng có thể dẫn đến sự giảm đa dạng trong doanh số.
Sự tình cờ: Một khái niệm liên quan là sự tình cờ, trong đó các mặt hàng được gợi ý là một chút bất ngờ, và do đó có một yếu tố may mắn khi khám phá, trái ngược với các gợi ý rõ ràng. Sự tình cờ khác với sự mới lạ ở chỗ các gợi ý thực sự gây ngạc nhiên cho người dùng, thay vì chỉ đơn giản là điều mà họ chưa biết trước đó. Có thể thường là trường hợp một người dùng cụ thể chỉ tiêu thụ các mặt hàng của một loại cụ thể, mặc dù có thể tồn tại một sở thích tiềm ẩn về các mặt hàng của các loại khác mà người dùng có thể tự thấy ngạc nhiên. Khác với sự mới lạ, các phương pháp tình cờ tập trung vào việc khám phá các gợi ý như vậy.
Ví dụ, nếu một nhà hàng Ấn Độ mới mở ở một khu phố, thì việc gợi ý nhà hàng đó cho một người dùng thường ăn món Ấn là mới lạ nhưng không nhất thiết là tình cờ. Mặt khác, khi cùng một người dùng được gợi ý món ăn Ethiopia, và họ không biết rằng món ăn đó có thể hấp dẫn với họ, thì gợi ý đó là tình cờ. Sự tình cờ có tác dụng phụ tích cực là tăng cường sự đa dạng trong doanh số hoặc bắt đầu một xu hướng mới về sở thích của người dùng. Tăng cường sự tình cờ thường có lợi ích lâu dài và chiến lược cho thương nhân vì khả năng khám phá các lĩnh vực sở thích hoàn toàn mới. Mặt khác, các thuật toán cung cấp các gợi ý tình cờ thường có xu hướng gợi ý các mặt hàng không liên quan. Trong nhiều trường hợp, lợi ích lâu dài và chiến lược của các phương pháp tình cờ vượt trội hơn những bất lợi ngắn hạn này.
Tăng cường sự đa dạng trong gợi ý: Các hệ thống gợi ý thường đề xuất một danh sách các mặt hàng hàng đầu. Khi tất cả các mặt hàng được gợi ý rất giống nhau, điều này làm tăng nguy cơ rằng người dùng có thể không thích bất kỳ mặt hàng nào trong số đó. Mặt khác, khi danh sách gợi ý chứa các mặt hàng của các loại khác nhau, có nhiều khả năng hơn rằng người dùng có thể thích ít nhất một trong số các mặt hàng đó. Sự đa dạng có lợi ích là đảm bảo rằng người dùng không cảm thấy nhàm chán bởi việc gợi ý lặp đi lặp lại các mặt hàng tương tự.
Ngoài những mục tiêu cụ thể này, một số mục tiêu mềm cũng được đáp ứng bởi quá trình gợi ý từ cả góc độ của người dùng và thương nhân. Từ góc độ của người dùng, các gợi ý có thể giúp cải thiện sự hài lòng tổng thể của người dùng với trang web. Ví dụ, một người dùng thường xuyên nhận được các gợi ý liên quan từ Amazon.com sẽ hài lòng hơn với trải nghiệm và có khả năng sử dụng trang web đó một lần nữa. Điều này có thể cải thiện lòng trung thành của người dùng và tăng doanh số tại trang web. Tại phía thương nhân, quá trình gợi ý có thể cung cấp những hiểu biết về nhu cầu của người dùng và giúp tùy chỉnh trải nghiệm của người dùng hơn nữa.
Cuối cùng, việc cung cấp cho người dùng một lời giải thích về lý do tại sao một mặt hàng cụ thể được gợi ý thường rất hữu ích. Ví dụ, trong trường hợp của Netflix, các gợi ý được cung cấp cùng với các bộ phim đã xem trước đó. Như chúng ta sẽ thấy sau này, một số thuật toán gợi ý phù hợp hơn với việc cung cấp các lời giải thích so với những thuật toán khác. Có một sự đa dạng rộng rãi trong các loại sản phẩm được gợi ý bởi các hệ thống như vậy. Một số hệ thống gợi ý, chẳng hạn như Facebook, không trực tiếp gợi ý sản phẩm. Thay vào đó, họ có thể gợi ý các kết nối xã hội, điều này có lợi ích gián tiếp cho trang web bằng cách tăng tính khả dụng và lợi nhuận quảng cáo. Để hiểu bản chất của những mục tiêu này, chúng ta sẽ thảo luận về một số ví dụ phổ biến của các hệ thống gợi ý lịch sử và hiện tại. Những ví dụ này cũng sẽ thể hiện sự đa dạng rộng lớn của các hệ thống gợi ý được xây dựng dưới dạng nguyên mẫu nghiên cứu, hoặc hiện có ngày nay như các hệ thống thương mại trong các bối cảnh vấn đề khác nhau.

Hệ Thống Gợi Ý GroupLens: GroupLens là một hệ thống gợi ý tiên phong, được xây dựng như một nguyên mẫu nghiên cứu cho việc gợi ý tin tức Usenet. Hệ thống đã thu thập các đánh giá từ người đọc Usenet và sử dụng chúng để dự đoán liệu các người đọc khác có thích một bài viết trước khi họ đọc hay không. Một số thuật toán lọc cộng tác tự động sớm nhất đã được phát triển trong bối cảnh GroupLens. Các ý tưởng chung được phát triển bởi nhóm này cũng đã được mở rộng sang các bối cảnh sản phẩm khác như sách và phim. Các hệ thống gợi ý tương ứng được gọi là BookLets và MovieLens, tương ứng. Ngoài những đóng góp tiên phong của nó cho nghiên cứu lọc cộng tác, nhóm nghiên cứu GroupLens còn nổi bật vì đã phát hành một số bộ dữ liệu trong những năm đầu của lĩnh vực này, khi mà các bộ dữ liệu không dễ dàng có sẵn để kiểm tra. Các ví dụ nổi bật bao gồm ba bộ dữ liệu từ hệ thống gợi ý MovieLens. Các bộ dữ liệu này có kích thước tăng dần, và chúng chứa 10^5, 10^6, và 10^7 đánh giá, tương ứng.
HỆ THỐNG GỢI Ý AMAZON.COM: Amazon.com cũng là một trong những người tiên phong trong các hệ thống gợi ý, đặc biệt là trong bối cảnh thương mại. Trong những năm đầu, nó là một trong số ít các nhà bán lẻ có tầm nhìn để nhận ra tính hữu ích của công nghệ này. Ban đầu được thành lập như một nhà bán lẻ sách trực tuyến, doanh nghiệp đã mở rộng sang hầu hết tất cả các hình thức sản phẩm. Do đó, Amazon.com hiện bán hầu như tất cả các loại sản phẩm như sách, CD, phần mềm, điện tử, và nhiều thứ khác. Các gợi ý trong Amazon.com được cung cấp dựa trên các đánh giá được cung cấp rõ ràng, hành vi mua sắm, và hành vi duyệt web. Các đánh giá trong Amazon.com được chỉ định trên thang điểm 5, với đánh giá thấp nhất là 1 sao, và đánh giá cao nhất là 5 sao. Dữ liệu mua sắm và duyệt web cụ thể của khách hàng có thể dễ dàng được thu thập khi người dùng đăng nhập với một cơ chế xác thực tài khoản được hỗ trợ bởi Amazon. Các gợi ý cũng được cung cấp cho người dùng trên trang web chính của trang, bất cứ khi nào họ đăng nhập vào tài khoản của mình. Trong nhiều trường hợp, các giải thích cho các gợi ý được cung cấp. Ví dụ, mối quan hệ của một mục được gợi ý với các mục đã mua trước đó có thể được bao gồm trong giao diện hệ thống gợi ý.
Hành vi mua sắm hoặc duyệt web của một người dùng có thể được xem như một loại đánh giá ngầm, trái ngược với một đánh giá rõ ràng, được chỉ định bởi người dùng. Nhiều hệ thống thương mại cho phép tính linh hoạt trong việc cung cấp gợi ý dựa trên cả phản hồi rõ ràng và ngầm. Thực tế, một số mô hình đã được thiết kế để tính toán đồng thời phản hồi rõ ràng và ngầm trong quá trình gợi ý. Một số thuật toán được sử dụng bởi các phiên bản sớm của hệ thống gợi ý Amazon.com được thảo luận.
HỆ THỐNG GỢI Ý PHIM NETFLIX: Netflix được thành lập như một công ty cho thuê đĩa video kỹ thuật số (DVD) qua đường bưu điện của các bộ phim và chương trình truyền hình, mà cuối cùng đã được mở rộng sang việc phát trực tuyến. Hiện tại, hoạt động kinh doanh chính của Netflix là cung cấp dịch vụ phát trực tuyến các bộ phim và chương trình truyền hình trên cơ sở đăng ký. Netflix cung cấp cho người dùng khả năng đánh giá các bộ phim và chương trình truyền hình trên thang điểm 5. Hơn nữa, các hành động của người dùng trong việc xem các mục khác nhau cũng được Netflix lưu trữ. Các đánh giá và hành động này sau đó được Netflix sử dụng để đưa ra các gợi ý. Netflix làm rất tốt việc cung cấp các giải thích cho các mục được gợi ý. Nó cung cấp rõ ràng các ví dụ về các gợi ý dựa trên các mục cụ thể mà người dùng đã xem. Thông tin như vậy cung cấp cho người dùng thêm thông tin để quyết định xem có nên xem một bộ phim cụ thể hay không. Việc trình bày các giải thích có ý nghĩa là quan trọng để cung cấp cho người dùng một sự hiểu biết về lý do tại sao họ có thể thấy một bộ phim cụ thể thú vị. Cách tiếp cận này cũng làm cho người dùng có khả năng hành động theo gợi ý hơn và thực sự cải thiện trải nghiệm của người dùng. Cách tiếp cận thú vị này cũng có thể giúp cải thiện lòng trung thành và sự giữ chân khách hàng.
Netflix đã đóng góp đáng kể cho cộng đồng nghiên cứu nhờ vào cuộc thi Netflix Prize. Cuộc thi này được thiết kế để cung cấp một diễn đàn cho sự cạnh tranh giữa các thuật toán lọc cộng tác khác nhau do các thí sinh đóng góp. Một tập dữ liệu về đánh giá phim của Netflix đã được phát hành, và nhiệm vụ là dự đoán các đánh giá của các kết hợp người dùng-mặt hàng cụ thể. Để mục đích này, Netflix đã cung cấp cả một tập dữ liệu huấn luyện và một tập dữ liệu đủ điều kiện. Tập dữ liệu huấn luyện chứa 100,480,507 đánh giá mà 480,189 người dùng đã đưa ra cho 17,770 bộ phim. Tập huấn luyện bao gồm một tập con nhỏ hơn chứa 1,408,395 đánh giá. Tập con này dựa trên các đánh giá gần đây hơn so với phần còn lại của dữ liệu huấn luyện, và nó có tính chất thống kê tương tự như phần của tập dữ liệu có các đánh giá ẩn. Phần này của tập dữ liệu được gọi là tập dữ liệu đủ điều kiện, và nó chứa hơn 2,817,131 bộ ba có dạng (Người dùng, Phim, Ngày Đánh Giá). Lưu ý rằng bộ ba này không chứa đánh giá thực tế, mà chỉ được biết đến với các giám khảo. Người dùng cần dự đoán các đánh giá trong tập dữ liệu đủ điều kiện dựa trên các mô hình của tập dữ liệu huấn luyện. Dự đoán này được chấm điểm bởi các giám khảo (hoặc một hệ thống tự động tương đương), và người dùng được (thường xuyên) thông báo về kết quả dự đoán chỉ trên một nửa tập dữ liệu đủ điều kiện trên bảng xếp hạng. Nửa này của tập dữ liệu đủ điều kiện được gọi là tập câu hỏi. Nửa còn lại được sử dụng làm tập kiểm tra để tính toán điểm số cuối cùng và xác định người chiến thắng giải thưởng. Điểm số của nửa còn lại không bao giờ được tiết lộ cho người dùng cho đến cuối cùng. Hơn nữa, không có thông tin nào được tiết lộ cho các thí sinh về bộ ba nào trong tập đủ điều kiện thuộc về tập câu hỏi, và bộ ba nào thuộc về tập kiểm tra. Lý do cho sự sắp xếp bất thường này trên tập kiểm tra là để đảm bảo rằng người dùng không tận dụng điểm số trên bảng xếp hạng để điều chỉnh quá mức các thuật toán của họ cho tập kiểm tra. Các vấn đề liên quan đến việc điều chỉnh quá mức sẽ được mô tả trong Chương 7 về các thuật toán đánh giá. Thực tế, cách làm việc của Netflix để xử lý các bài dự thi là một ví dụ xuất sắc về thiết kế đánh giá đúng đắn của các thuật toán gợi ý. Tập con, tập câu hỏi và tập kiểm tra được thiết kế để có các đặc điểm thống kê tương tự. Giải thưởng được trao dựa trên sự cải thiện của thuật toán gợi ý của chính Netflix, được gọi là Cinematch, hoặc bằng cách cải thiện điểm số tốt nhất trước đó theo một ngưỡng nhất định. Nhiều thuật toán gợi ý nổi tiếng, chẳng hạn như các mô hình yếu tố tiềm ẩn, đã được phổ biến nhờ vào cuộc thi Netflix. Cuộc thi Netflix Prize nổi bật với nhiều đóng góp cho nghiên cứu gợi ý.
HỆ THỐNG CÁ NHÂN HÓA TIN TỨC CỦA GOOGLE: Hệ thống cá nhân hóa tin tức của Google có khả năng gợi ý tin tức cho người dùng dựa trên lịch sử nhấp chuột của họ. Các nhấp chuột được liên kết với các người dùng cụ thể dựa trên các cơ chế nhận dạng được kích hoạt bởi tài khoản Gmail. Trong trường hợp này, các bài báo tin tức được coi là các mặt hàng. Hành động của một người dùng nhấp vào một bài báo tin tức có thể được xem như một đánh giá tích cực cho bài báo đó. Các đánh giá như vậy có thể được xem như các đánh giá đơn, trong đó có một cơ chế cho người dùng thể hiện sự ưa thích của họ đối với một mặt hàng, nhưng không có cơ chế nào để họ thể hiện sự không thích. Hơn nữa, các đánh giá là ngầm, vì chúng được suy ra từ các hành động của người dùng thay vì được chỉ định rõ ràng bởi người dùng. Tuy nhiên, các biến thể của cách tiếp cận này cũng có thể được áp dụng cho các trường hợp mà các đánh giá được chỉ định rõ ràng. Các thuật toán gợi ý cộng tác được áp dụng cho các đánh giá đã thu thập, để từ đó có thể rút ra các suy luận về chúng.
Bảng 1.1: Ví dụ về các sản phẩm được gợi ý bởi các hệ thống gợi ý thực tế khác nhau

các bài viết cá nhân hóa cho người dùng cụ thể. Một mô tả về một hệ thống lọc hợp tác cho Google News được cung cấp trong . Thêm chi tiết về động cơ cá nhân hóa Google News được thảo luận trong phần 13.8.1.2 của Chương 13.

Gợi ý bạn bè Facebook: Các trang mạng xã hội thường gợi ý bạn bè tiềm năng cho người dùng nhằm tăng số lượng kết nối xã hội tại trang web. Facebook là một ví dụ như vậy của một trang web mạng xã hội. Loại gợi ý này có mục tiêu hơi khác so với gợi ý sản phẩm. Trong khi gợi ý sản phẩm trực tiếp tăng lợi nhuận của thương nhân bằng cách tạo điều kiện cho việc bán sản phẩm, việc tăng số lượng kết nối xã hội cải thiện trải nghiệm của người dùng tại một mạng xã hội. Điều này, đến lượt nó, khuyến khích sự phát triển của mạng xã hội. Các mạng xã hội phụ thuộc nhiều vào sự phát triển của mạng để tăng doanh thu quảng cáo của họ. Do đó, việc gợi ý bạn bè tiềm năng (hoặc liên kết) cho phép sự phát triển và kết nối tốt hơn của mạng. Vấn đề này cũng được gọi là dự đoán liên kết trong lĩnh vực phân tích mạng xã hội. Các hình thức gợi ý như vậy dựa trên các mối quan hệ cấu trúc hơn là dữ liệu đánh giá. Do đó, bản chất của các thuật toán cơ bản hoàn toàn khác nhau. Vấn đề gợi ý liên kết được khám phá chi tiết trong Chương 10. Mối quan hệ của quảng cáo tính toán với công nghệ hệ thống gợi ý được thảo luận trong Chương 13.

1.2.1 Phổ ứng dụng gợi ý

Trong phần tiếp theo, chúng tôi sẽ cung cấp một cái nhìn tổng quan ngắn gọn về các mục tiêu cụ thể của ứng dụng được hoàn thành bởi các triển khai khác nhau của các hệ thống gợi ý. Một cái nhìn tổng quan ngắn gọn về các sản phẩm được gợi ý và các mục tiêu đạt được bởi các hệ thống gợi ý khác nhau được minh họa trong Bảng 1.1. Nhiều hệ thống gợi ý này tập trung vào các ứng dụng thương mại điện tử truyền thống cho các sản phẩm khác nhau, bao gồm sách, phim, video, du lịch và các hàng hóa và dịch vụ khác. Tính khả dụng rộng rãi hơn của các hệ thống gợi ý cho các ứng dụng thương mại điện tử sẽ được thảo luận. Tuy nhiên, các hệ thống gợi ý đã mở rộng ra ngoài lĩnh vực truyền thống của các gợi ý sản phẩm. Điều đáng chú ý là một số hệ thống trong Bảng 1.1có thể không gợi ý các sản phẩm cụ thể. Một ví dụ là ứng dụng tìm kiếm Google, mà có thể quảng cáo các sản phẩm cùng với các kết quả tìm kiếm. Đây là lĩnh vực quảng cáo tính toán, mà là một lĩnh vực riêng biệt trong chính nó, nhưng nó vẫn liên quan chặt chẽ đến các hệ thống gợi ý. Lĩnh vực này được thảo luận chi tiết trong phần 13.8.2 của Chương 13. Tương tự, Facebook gợi ý bạn bè, và các trang tuyển dụng trực tuyến gợi ý nhà tuyển dụng và người tìm việc cho nhau. Hệ thống cuối cùng trong số này cũng được gọi là một hệ thống gợi ý tương hỗ. Các mô hình cho một số trong số các thuật toán gợi ý này khá khác biệt so với các hệ thống gợi ý truyền thống. Cuốn sách này sẽ nghiên cứu nhiều trong số các biến thể này một cách chi tiết.

1.3 Các Mô Hình Cơ Bản Của Các Hệ Thống Gợi Ý

Các mô hình cơ bản cho các hệ thống gợi ý làm việc với hai loại dữ liệu, đó là (i) các tương tác giữa người dùng và sản phẩm, chẳng hạn như hành vi đánh giá hoặc hành vi mua sắm, và (ii) thông tin thuộc tính về người dùng và sản phẩm chẳng hạn như hồ sơ văn bản hoặc từ khóa liên quan. Các phương pháp sử dụng loại dữ liệu đầu tiên được gọi là các phương pháp rung lắc hợp tác, trong khi các phương pháp sử dụng loại dữ liệu thứ hai được gọi là các phương pháp gợi ý dựa trên nội dung. Lưu ý rằng các hệ thống dựa trên nội dung cũng sử dụng ma trận đánh giá trong hầu hết các trường hợp, mặc dù mô hình thường tập trung vào các đánh giá của một người dùng duy nhất thay vì của tất cả người dùng. Trong các hệ thống gợi ý dựa trên kiến thức, các gợi ý được dựa trên các yêu cầu của người dùng được chỉ định rõ ràng. Thay vì sử dụng dữ liệu đánh giá hoặc lịch sử mua sắm, các cơ sở kiến thức bên ngoài và các ràng buộc được sử dụng để tạo ra gợi ý. Một số hệ thống gợi ý kết hợp các khía cạnh khác nhau này để tạo ra các hệ thống lai. Các hệ thống lai có thể kết hợp các điểm mạnh của nhiều loại hệ thống gợi ý khác nhau để tạo ra các kỹ thuật có thể hoạt động mạnh mẽ hơn trong nhiều bối cảnh khác nhau.
Trong phần tiếp theo, chúng ta sẽ thảo luận về các mô hình cơ bản này một cách ngắn gọn, và cũng cung cấp các chỉ dẫn đến các chương liên quan trong cuốn sách nơi chúng được thảo luận kỹ hơn.

1.3.1 Các Mô Hình Lọc Hợp Tác

Các mô hình lọc hợp tác sử dụng sức mạnh hợp tác của các đánh giá được cung cấp bởi nhiều người dùng để đưa ra gợi ý. Thách thức chính trong việc thiết kế các phương pháp lọc hợp tác là các ma trận đánh giá cơ sở thường thưa. Hãy xem xét một ví dụ về một ứng dụng phim trong đó người dùng chỉ định các đánh giá cho thấy sự thích hoặc không thích của họ đối với các bộ phim cụ thể. Hầu hết người dùng sẽ chỉ xem một phần nhỏ trong vũ trụ lớn của các bộ phim có sẵn. Kết quả, hầu hết các đánh giá đều không được chỉ định. Các đánh giá được chỉ định cũng được gọi là các đánh giá quan sát. Trong suốt cuốn sách này, các thuật ngữ "được chỉ định" và "quan sát" sẽ được sử dụng một cách thay thế cho nhau. Các đánh giá không được chỉ định sẽ được gọi là "không quan sát" hoặc "thiếu". 
Ý tưởng cơ bản của các phương pháp lọc hợp tác là các đánh giá không được chỉ định này có thể được suy ra vì các đánh giá quan sát thường có sự tương quan cao giữa các người dùng và sản phẩm khác nhau. Ví dụ, hãy xem xét hai người dùng tên là Alice và Bob, những người có sở thích rất giống nhau. Nếu các đánh giá, mà cả hai đều đã chỉ định, rất giống nhau, thì sự tương đồng của họ có thể được xác định bởi thuật toán cơ sở. Trong những trường hợp như vậy, rất có khả năng rằng các đánh giá mà chỉ một trong số họ đã chỉ định một giá trị, cũng có khả năng tương tự cho người còn lại. Sự tương đồng này có thể được sử dụng để đưa ra các suy diễn về các giá trị chưa được chỉ định đầy đủ.

Hầu hết các mô hình cho lọc hợp tác tập trung vào việc tận dụng hoặc các tương quan giữa các sản phẩm hoặc các tương quan giữa các người dùng cho quá trình dự đoán. Một số mô hình sử dụng cả hai loại tương quan. Hơn nữa, một số mô hình sử dụng các kỹ thuật tối ưu được thiết kế cẩn thận để tạo ra một mô hình huấn luyện theo cách tương tự cách mà một bộ phân loại tạo ra một mô hình đào tạo từ dữ liệu đã được gán nhãn. Mô hình này sau đó được sử dụng để ước lượng các giá trị bị thiếu trong ma trận, theo cách tương tự như một bộ phân loại ước lượng các nhãn kiểm tra bị thiếu. Có hai loại phương pháp thường được sử dụng trong lọc hợp tác, được gọi là phương pháp dựa trên bộ nhớ và phương pháp dựa trên mô hình:
Phương pháp dựa trên bộ nhớ: Phương pháp dựa trên bộ nhớ cũng được gọi là các thuật toán rung lắc hợp tác dựa trên khu vực lân cận. Đây là một trong những thuật toán lọc hợp tác sớm nhất, trong đó các đánh giá của các kết hợp người dùng-mặt hàng được dự đoán dựa trên các khu vực lân cận của chúng. Các khu vực lân cận này có thể được định nghĩa theo một trong hai cách:
Lọc hợp tác dựa trên người dùng: Trong trường hợp này, các đánh giá được cung cấp bởi những người dùng có cùng sở thích với người dùng mục tiêu A được sử dụng để đưa ra các gợi ý cho A. Do đó, ý tưởng cơ bản là xác định những người dùng tương tự với người dùng mục tiêu A, và gợi ý các đánh giá cho các đánh giá chưa quan sát của A bằng cách tính toán các trung bình có trọng số của các đánh giá của nhóm đồng đẳng này. Do đó, nếu Alice và Bob đã đánh giá các bộ phim theo cách tương tự trong quá khứ, thì có thể sử dụng các đánh giá đã quan sát của Alice về bộ phim Terminator để dự đoán các đánh giá chưa quan sát của Bob về bộ phim này. Nói chung, những người dùng tương tự nhất với Bob có thể được sử dụng để đưa ra các dự đoán đánh giá cho Bob. Các hàm tương tự được tính toán giữa các hàng của ma trận đánh giá để phát hiện những người dùng tương tự.
Lọc hợp tác dựa trên mặt hàng: Để đưa ra các dự đoán đánh giá cho mặt hàng mục tiêu B bởi người dùng A, bước đầu tiên là xác định một tập hợp S các mặt hàng mà tương tự nhất với mặt hàng mục tiêu B. Các đánh giá trong tập hợp mặt hàng S, được chỉ định bởi A, được sử dụng để dự đoán xem người dùng A có thích mặt hàng B hay không. Do đó, các đánh giá của Bob về các bộ phim khoa học viễn tưởng tương tự như Alien và Predator có thể được sử dụng để dự đoán đánh giá của anh ấy về Terminator. Các hàm tương tự được tính toán giữa các cột của ma trận đánh giá để phát hiện các mặt hàng tương tự. Các lợi thế của các kỹ thuật dựa trên bộ nhớ là chúng đơn giản để triển khai và các gợi ý kết quả thường dễ giải thích. Mặt khác, các thuật toán dựa trên bộ nhớ không hoạt động tốt với các ma trận đánh giá thưa thớt. Ví dụ, có thể khó tìm được những người dùng tương tự đủ với Bob, những người đã đánh giá Gladiator. Trong những trường hợp như vậy, rất khó để dự đoán một cách chắc chắn đánh giá của Bob về Gladiator. Nói cách khác, các phương pháp như vậy có thể thiếu sự bao phủ đầy đủ của các dự đoán đánh giá. Tuy nhiên, sự thiếu sót về bao phủ thường không phải là vấn đề, khi chỉ cần các mặt hàng hàng đầu-k. Các phương pháp dựa trên bộ nhớ được thảo luận chi tiết trong Chương 2.

Phương pháp dựa trên mô hình: Trong các phương pháp dựa trên mô hình, các phương pháp học máy và khai thác dữ liệu được sử dụng trong bối cảnh của các mô hình dự đoán. Trong các trường hợp mà mô hình được tham số hóa, các tham số của mô hình này được học trong bối cảnh của một khung tối ưu hóa. Một số ví dụ về các phương pháp dựa trên mô hình như cây quyết định, các mô hình dựa trên quy tắc, các phương pháp Bayes và các mô hình yếu tố tiềm ẩn. Nhiều phương pháp trong số này, chẳng hạn như các mô hình yếu tố tiềm ẩn, có mức độ bao phủ cao ngay cả đối với các ma trận đánh giá thưa thớt. Các thuật toán lọc hợp tác dựa trên mô hình được thảo luận trong Chương 3.
Mặc dù các thuật toán lọc hợp tác dựa trên bộ nhớ được đánh giá cao vì tính đơn giản của chúng, nhưng chúng có xu hướng mang tính chất heuristic, và chúng không hoạt động tốt trong tất cả các cài đặt. Tuy nhiên, sự phân biệt giữa các phương pháp dựa trên bộ nhớ và dựa trên mô hình là hơi nhân tạo, vì các phương pháp dựa trên bộ nhớ cũng có thể được coi là các mô hình dựa trên sự tương đồng, mặc dù là các mô hình heuristic.
Trong phần 2.6 của Chương 2, cũng sẽ được chỉ ra rằng một số biến thể của các phương pháp dựa trên khu vực có thể được diễn đạt chính thức như là các mô hình dựa trên hồi quy.


Hình 1.1: Ví dụ về đánh giá theo thang 5 điểm
Hình 1.2: Ví dụ về đánh giá thứ tự được sử dụng trong đánh giá khóa học của Đại học Stanford
Các mô hình yếu tố tiềm ẩn đã được phổ biến trong những năm sau này như một kết quả của cuộc thi Giải thưởng Netflix, mặc dù các thuật toán tương tự đã được đề xuất từ rất sớm trong bối cảnh của các tập dữ liệu (chung) không đầy đủ gần đây, đã được chỉ ra rằng một số tổ hợp của các phương pháp dựa trên bộ nhớ và dựa trên mô hình cung cấp kết quả rất chính xác.

1.3.1.1 Các loại đánh giá

Thiết kế của các thuật toán gợi ý bị ảnh hưởng bởi hệ thống được sử dụng để theo dõi đánh giá.
Các đánh giá thường được chỉ định trên một thang đo cho thấy mức độ thích hoặc không thích cụ thể của mục đang xem. Có thể có các đánh giá là các giá trị liên tục, chẳng hạn như trong trường hợp của động cơ gợi ý trò đùa Jester 1228, 689], trong đó các đánh giá có thể nhận bất kỳ giá trị nào giữa -10 và 10.
Tuy nhiên, điều này là tương đối hiếm. Thông thường, các đánh giá dựa trên khoảng, nơi một tập hợp các số thứ tự rời được sử dụng để định lượng thích hoặc không thích. Các đánh giá như vậy được gọi là đánh giá dựa trên khoảng. Ví dụ, một thang đánh giá 5 điểm có thể được rút ra từ tập {-2, -1, 0, 1, 2}, trong đó một đánh giá -2 cho thấy sự không thích cực đoan, và một đánh giá 2 cho thấy sự yêu thích mạnh mẽ đối với mục. Các hệ thống khác có thể rút các đánh giá từ tập {1, 2, 3, 4, 5}.
Số lượng các đánh giá có thể thay đổi tùy thuộc vào hệ thống đang sử dụng. Việc sử dụng các đánh giá 5 điểm, 7 điểm, và 10 điểm là đặc biệt phổ biến. Hệ thống đánh giá 5 sao, được minh họa trong Hình 1.1, là một ví dụ về đánh giá theo khoảng. Dọc theo mỗi đánh giá có thể có, chúng tôi đã chỉ ra một cách diễn giải ngữ nghĩa về mức độ quan tâm của người dùng. Cách diễn giải này có thể thay đổi một chút giữa các thương nhân khác nhau, chẳng hạn như Amazon hoặc Netflix.
Ví dụ, Netflix sử dụng một hệ thống đánh giá 5 sao trong đó điểm 4 sao tương ứng với "thực sự thích nó," và điểm 3 sao trung tâm tương ứng với "thích nó". Do đó, có ba đánh giá thuận lợi và hai đánh giá không thuận lợi trong Netflix, điều này dẫn đến một thang đánh giá không cân bằng.
Trong một số trường hợp, có thể có một số lượng chẵn các đánh giá có thể, và đánh giá trung lập có thể bị thiếu. Cách tiếp cận này được gọi là hệ thống đánh giá lựa chọn bắt buộc. Một người cũng có thể sử dụng các giá trị phân loại có thứ tự như {Rất không đồng ý, Không đồng ý, Trung lập, Đồng ý, Rất đồng ý} để đạt được các mục tiêu tương tự. Nói chung, các đánh giá như vậy được gọi là đánh giá thứ bậc, và thuật ngữ này được lấy từ khái niệm thuộc tính thứ bậc. Một ví dụ về các đánh giá thứ bậc, được sử dụng trong các mẫu đánh giá khóa học của Đại học Stanford, được minh họa trong Hình 1.2. Trong các đánh giá nhị phân, người dùng có thể chỉ thể hiện sự thích hoặc không thích đối với mục và không có gì khác. Ví dụ, các đánh giá có thể là 0, 1, hoặc các giá trị không xác định. Các giá trị không xác định cần được dự đoán thành các giá trị 0-1. Một trường hợp đặc biệt của các đánh giá là các đánh giá đơn, trong đó có một cơ chế cho người dùng chỉ định sự thích đối với một mục nhưng không có cơ chế để chỉ định sự không thích. Các đánh giá đơn đặc biệt phổ biến, đặc biệt trong trường hợp của các tập dữ liệu phản hồi ngầm . Trong những trường hợp này, sở thích của khách hàng được suy ra từ các hoạt động của họ thay vì từ các đánh giá được chỉ định rõ ràng. Ví dụ, hành vi mua sắm của một khách hàng có thể được chuyển đổi thành các đánh giá đơn. Khi một khách hàng mua một mặt hàng, điều này có thể được coi là một sở thích đối với mặt hàng đó. Tuy nhiên, hành động không mua một mục từ một vũ trụ lớn các khả năng không phải lúc nào cũng chỉ ra sự không thích. Tương tự, nhiều mạng xã hội, chẳng hạn như Facebook, sử dụng các nút "thích", cho phép thể hiện sự thích đối với một mục. Tuy nhiên, không có cơ chế nào để chỉ định sự không thích đối với một mục. Cài đặt phản hồi ngầm có thể được coi là tương tự như hoàn thành ma trận của vấn đề học tập dương-không gán nhãn (PU) trong phân loại dữ liệu.

Ví dụ về Đánh giá Rõ ràng và Ngầm

Một ví dụ định lượng về các đánh giá rõ ràng được minh họa trong Hình 1.3(a). Trong trường hợp này, có 6 người dùng, được gán nhãn U1, ..., U6, và 6 bộ phim với các tiêu đề được chỉ định. Các đánh giá cao hơn chỉ ra phản hồi tích cực hơn trong Hình 1.3(a). Các mục bị thiếu tương ứng với các sở thích không xác định. Ví dụ trong hình này đại diện cho một ví dụ nhỏ. Nói chung, các đánh giá có thể được biểu diễn dưới dạng một ma trận m x n, trong đó m và n thường rất lớn và có thể dao động trong khoảng hàng trăm nghìn. Mặc dù ví dụ cụ thể này sử dụng một ma trận 6 x 6, các giá trị của m và n thường không giống nhau trong các kịch bản thực tế. Một ma trận đánh giá đôi khi được gọi là ma trận tiện ích, mặc dù hai cái này có thể không luôn giống nhau. Nói một cách chính xác, khi tiện ích đề cập đến số lượng lợi nhuận, thì tiện ích của một sự kết hợp giữa người dùng và mục đề cập đến số lượng lợi nhuận phát sinh từ việc gợi ý mục đó cho người dùng cụ thể. Trong khi các ma trận tiện ích thường được thiết lập giống như các ma trận đánh giá, có thể cho phép ứng dụng chuyển đổi rõ ràng các đánh giá thành các giá trị tiện ích dựa trên các tiêu chí cụ thể của miền. Tất cả các thuật toán lọc cộng tác sau đó được áp dụng cho ma trận tiện ích thay vì ma trận đánh giá. Tuy nhiên, cách tiếp cận như vậy hiếm khi được sử dụng trong thực tế, và hầu hết các thuật toán lọc cộng tác hoạt động trực tiếp với ma trận đánh giá.

Một ví dụ về ma trận đánh giá đơn được minh họa trong Hình 1.3(b). Đối với các trường hợp mà các đánh giá là đơn, ma trận được gọi là ma trận tiện ích sở thích tích cực; vì nó chỉ cho phép chỉ định các sở thích tích cực. Hai ma trận trong Hình 1.3 có cùng tập hợp các mục quan sát được, nhưng chúng cung cấp những hiểu biết rất khác nhau. Ví dụ, người dùng U1 và U3 rất khác nhau trong Hình 1.3(a) vì họ có các đánh giá rất khác nhau cho các mục được chỉ định lẫn nhau. Mặt khác, những người dùng này sẽ được coi là rất giống nhau trong Hình 1.3(b) vì những người dùng này đã thể hiện một sở thích tích cực đối với cùng một mục. Tiện ích dựa trên đánh giá cung cấp một cách cho người dùng thể hiện các sở thích tiêu cực đối với các mục. Ví dụ, người dùng U1 không thích bộ phim Gladiator trong Hình 1.3(a). Không có cơ chế nào để chỉ định điều này trong ma trận tiện ích sở thích tích cực của Hình 1.3(b) vì




Hình 1.3: Ví dụ về ma trận tiện ích
một mối quan hệ tương đối mơ hồ mục bị thiếu. Nói cách khác, ma trận trong Hình 1.3(b) ít biểu đạt hơn. Trong khi Hình 1.3(b) cung cấp một ví dụ về ma trận nhị phân, có thể các mục không bằng 0 là các giá trị dương tùy ý. Ví dụ, chúng có thể tương ứng với số lượng hàng hóa được mua bởi các người dùng khác nhau. Nói chung, các ma trận đơn được tạo ra bởi các hành động của người dùng như mua một mặt hàng, và do đó cũng được gọi là ma trận phản hồi ngầm.
Các đánh giá đơn có ảnh hưởng đáng kể đến thuật toán gợi ý hiện tại, vì không có thông tin nào về việc người dùng không thích một mặt hàng. Trong trường hợp các ma trận đơn, thường được khuyến nghị để thực hiện phân tích theo cách đơn giản bằng cách coi các mục bị thiếu là 0 trong giai đoạn ban đầu. Tuy nhiên, giá trị dự đoán cuối cùng bởi thuật toán học có thể lớn hơn nhiều so với 0, đặc biệt nếu mặt hàng phù hợp với sở thích của người dùng. Các mặt hàng được gợi ý do đó dựa trên các mục có sai số dự đoán dương lớn nhất so với giả định "không" ban đầu. Thực tế, nếu các mục bị thiếu không được thay thế bằng 0, có thể xảy ra hiện tượng quá khớp đáng kể. Loại quá khớp này là một sản phẩm của thực tế rằng thường không có đủ mức độ phân biệt giữa các giá trị quan sát khác nhau của các đánh giá. Trong các ma trận phản hồi rõ ràng, các đánh giá tương ứng với (các sở thích được phân biệt cao) , trong khi trong các ma trận phản hồi ngầm, các đánh giá tương ứng với (các sự tự tin ít phân biệt) . Trong một chương sau, chúng tôi sẽ cung cấp một ví dụ cụ thể về hiện tượng quá khớp với các ma trận phản hồi ngầm khi các mục bị thiếu không được coi là số không (xem phần 3.6.6.2 của Chương 3).
Việc thay thế trước các đánh giá bị thiếu không được khuyến nghị trong các ma trận đánh giá rõ ràng. Trong các ma trận đánh giá rõ ràng với cả sở thích và không thích, việc thay thế các mục bị thiếu bằng bất kỳ giá trị nào (như 0 hoặc trung bình hàng/ cột/ dữ liệu) luôn dẫn đến một lượng thiên lệch đáng kể trong phân tích. Trong trường hợp đơn, việc thay thế các mục bị thiếu bằng 0 cũng dẫn đến một số thiên lệch, mặc dù thường là nhỏ vì giả định mặc định trong dữ liệu phản hồi ngầm, chẳng hạn như dữ liệu mua sắm, là người dùng sẽ không mua hầu hết các mặt hàng.

Người ta thường sẵn sàng chấp nhận thiên lệch này trong trường hợp đơn, vì một lượng đáng kể của hiện tượng quá khớp được giảm bằng việc thay thế. Cũng có một số hiệu ứng tính toán thú vị từ những lựa chọn như vậy. Những sự đánh đổi này được thảo luận trong các Chương 2 và 3.
1.3. MÔ HÌNH CƠ BẢN CỦA CÁC HỆ THỐNG GỢI Ý

Hình 1.4: So sánh vấn đề phân loại truyền thống với lọc cộng tác. Các mục được tô bóng là thiếu và cần được dự đoán.

1.3.1.2 Mối Quan Hệ Với "Phân Tích Giá Trị Thiếu"

Các mô hình lọc cộng tác có mối quan hệ chặt chẽ với phân tích giá trị thiếu. Tài liệu truyền thống về phân tích giá trị thiếu nghiên cứu vấn đề ước lượng các mục trong một ma trận dữ liệu được xác định hoàn toàn. Lọc cộng tác có thể được xem như một trường hợp (khó) đặc biệt của vấn đề này trong đó ma trận dữ liệu cơ bản rất lớn và thưa thớt. Nhiều phương pháp này cũng có thể được sử dụng cho các hệ thống gợi ý, mặc dù một số trong số chúng có thể yêu cầu các điều chỉnh chuyên biệt cho các ma trận rất lớn và thưa thớt. Thực tế, một số lớp mô hình gần đây cho các hệ thống gợi ý, chẳng hạn như các mô hình yếu tố tiềm ẩn, đã được nghiên cứu trước đó trong bối cảnh phân tích giá trị thiếu. Các phương pháp tương tự đã được đề xuất độc lập trong bối cảnh các hệ thống gợi ý. Nói chung, nhiều phương pháp ước lượng giá trị thiếu cổ điển cũng có thể được sử dụng cho lọc cộng tác.

1.3.1.3 Lọc Cộng Tác Như Một Sự Tổng Quát Của Phân Loại Và Mô Hình Hồi Quy

Các phương pháp lọc cộng tác có thể được xem như là sự tổng quát của phân loại và mô hình hồi quy. Trong các vấn đề phân loại và mô hình hồi quy, biến lớp/biến phụ thuộc có thể được xem như một thuộc tính có giá trị thiếu. Các cột khác được coi là các đặc trưng/các biến độc lập. Vấn đề lọc cộng tác có thể được xem như một sự tổng quát của khung này vì bất kỳ cột nào cũng được phép có giá trị thiếu thay vì (chỉ) biến lớp. Trong vấn đề gợi ý, một sự phân biệt rõ ràng không tồn tại giữa các biến lớp và các biến đặc trưng vì mỗi đặc trưng đóng vai trò kép của một biến phụ thuộc và một biến độc lập. Sự phân biệt này chỉ tồn tại trong bài toán phân loại vì các mục bị thiếu bị giới hạn trong một cột đặc biệt. Hơn nữa, không có sự phân biệt giữa các hàng huấn luyện và kiểm tra trong lọc hợp tác vì bất kỳ hàng nào cũng có thể chứa các mục bị thiếu. Do đó, có ý nghĩa hơn khi nói về các mục huấn luyện và kiểm tra trong lọc hợp tác hơn là các hàng huấn luyện và kiểm tra. Lọc hợp tác là một sự tổng quát của mô hình phân loại/hồi quy trong đó việc dự đoán được thực hiện theo cách từng mục thay vì theo cách từng hàng. Mối quan hệ giữa mô hình phân loại/hồi quy và lọc hợp tác là điều quan trọng cần ghi nhớ vì nhiều nguyên tắc của các phương pháp mô hình phân loại và hồi quy có thể được tổng quát cho các hệ thống gợi ý. Mối quan hệ giữa hai vấn đề này được minh họa trong Hình 1.4. Hình này đặc biệt hữu ích trong việc liên kết lọc hợp tác với phân loại, và nó sẽ được xem lại nhiều lần trong cuốn sách này, bất cứ khi nào những điểm tương đồng giữa hai vấn đề này được tận dụng theo cách nào đó cho sự phát triển thuật toán hoặc lý thuyết.
Vấn đề hoàn thiện ma trận cũng chia sẻ một số đặc điểm với bối cảnh dẫn xuất trong phân loại và hồi quy. Trong bối cảnh dẫn xuất, các trường hợp kiểm tra cũng được bao gồm trong quá trình huấn luyện (thường với việc sử dụng một thuật toán bán giám sát), và thường rất khó để đưa ra dự đoán cho các trường hợp kiểm tra không có sẵn tại thời điểm huấn luyện. Mặt khác, các mô hình mà trong đó các dự đoán có thể dễ dàng được thực hiện cho các trường hợp mới được gọi là dẫn xuất. Ví dụ, một mô hình Bayes ngây thơ trong phân loại về cơ bản là dẫn xuất vì người ta có thể dễ dàng sử dụng nó để dự đoán nhãn của một trường hợp kiểm tra mà các đặc trưng không được biết tại thời điểm xây dựng mô hình Bayes. Bối cảnh cho việc hoàn thiện ma trận về cơ bản là dẫn xuất vì dữ liệu huấn luyện và kiểm tra được tích hợp chặt chẽ với nhau trong ma trận đánh giá mxn, và nhiều mô hình không thể dễ dàng dự đoán các đánh giá cho người dùng và/hoặc mục ngoài mẫu. Ví dụ, nếu John được thêm vào ma trận đánh giá (với nhiều đánh giá đã chỉ định) sau khi mô hình lọc hợp tác đã được xây dựng, nhiều phương pháp có sẵn sẽ không thể đưa ra dự đoán cho John. Điều này đặc biệt đúng với các phương pháp lọc hợp tác dựa trên mô hình. Tuy nhiên, một số mô hình hoàn thiện ma trận gần đây cũng đã được thiết kế để trở thành dẫn xuất trong đó các đánh giá có thể được dự đoán cho người dùng và/hoặc mục ngoài mẫu.

1.3.2 HỆ THỐNG GỢI Ý DỰA TRÊN NỘI DUNG

Trong các hệ thống gợi ý dựa trên nội dung, các thuộc tính mô tả của các mục được sử dụng để đưa ra các gợi ý. Thuật ngữ "nội dung" đề cập đến những mô tả này. Trong các phương pháp dựa trên nội dung, các đánh giá và hành vi mua của người dùng được kết hợp với thông tin nội dung có sẵn trong các mục. Ví dụ, hãy xem xét một tình huống trong đó John đã đánh giá bộ phim Terminator cao, nhưng chúng ta không có quyền truy cập vào các đánh giá của người dùng khác. Do đó, các phương pháp lọc hợp tác bị loại trừ. Tuy nhiên, mô tả của mục Terminator chứa các từ khóa thể loại tương tự như các bộ phim khoa học viễn tưởng khác, chẳng hạn như Alien và Predator. Trong những trường hợp như vậy, các bộ phim này có thể được gợi ý cho John. Trong các phương pháp dựa trên nội dung, các mô tả của mục, được gán nhãn với các đánh giá, được sử dụng làm dữ liệu huấn luyện để tạo ra một vấn đề phân loại hoặc hồi quy cụ thể cho người dùng. Đối với mỗi người dùng, các tài liệu huấn luyện tương ứng với các mô tả của các mục mà cô ấy đã mua hoặc đánh giá. Biến lớp (hoặc biến phụ thuộc) tương ứng với các đánh giá hoặc hành vi mua đã chỉ định. Những tài liệu huấn luyện này được sử dụng để tạo ra một mô hình phân loại hoặc hồi quy, cụ thể cho người dùng hiện tại (hoặc người dùng đang hoạt động). Mô hình cụ thể cho người dùng này được sử dụng để dự đoán xem cá nhân tương ứng có thích một mục mà đánh giá hoặc hành vi mua của cô ấy không được biết hay không.
Các phương pháp dựa trên nội dung có một số lợi thế trong việc đưa ra gợi ý cho các mục mới, khi dữ liệu đánh giá đủ không có sẵn cho mục đó. Điều này là vì các mục khác có thuộc tính tương tự có thể đã được người dùng hiện tại đánh giá. Do đó, mô hình có giám sát sẽ có thể tận dụng những đánh giá này kết hợp với các thuộc tính của mục để đưa ra gợi ý ngay cả khi không có lịch sử đánh giá cho mục đó.
Các phương pháp dựa trên nội dung cũng có một số nhược điểm:
1- Trong nhiều trường hợp, các phương pháp dựa trên nội dung cung cấp các gợi ý rõ ràng do việc sử dụng từ khóa hoặc nội dung. Ví dụ, nếu một người dùng chưa bao giờ tiêu thụ một mục với một bộ từ khóa cụ thể, thì một mục như vậy không có cơ hội được gợi ý. Điều này là vì mô hình được xây dựng là cụ thể cho người dùng hiện tại, và kiến thức cộng đồng từ các người dùng tương tự không được tận dụng. Hiện tượng này có xu hướng giảm sự đa dạng của các mục được gợi ý, điều này là không mong muốn.
2- Mặc dù các phương pháp dựa trên nội dung hiệu quả trong việc cung cấp gợi ý cho các mục mới, nhưng chúng không hiệu quả trong việc cung cấp gợi ý cho các người dùng mới. Điều này là vì mô hình đào tạo cho người dùng mục tiêu cần phải sử dụng lịch sử đánh giá của cô ấy. Thực tế, thường thì việc có một số lượng lớn các đánh giá có sẵn cho người dùng mục tiêu là quan trọng để đưa ra các dự đoán vững chắc mà không bị quá khớp. Do đó, các phương pháp dựa trên nội dung có các đánh đổi khác nhau so với các hệ thống lọc hợp tác.
Mặc dù mô tả ở trên cung cấp cái nhìn truyền thống dựa trên học tập về các phương pháp dựa trên nội dung, một cái nhìn rộng hơn về các phương pháp này đôi khi được sử dụng. Ví dụ, người dùng có thể chỉ định các từ khóa liên quan trong hồ sơ của họ. Những hồ sơ này có thể được khớp với các mô tả mục để đưa ra gợi ý. Một cách tiếp cận như vậy không sử dụng các đánh giá trong quá trình gợi ý, và do đó nó hữu ích trong các kịch bản khởi động lạnh (Với ít data) . Tuy nhiên, các phương pháp như vậy thường được coi là một lớp riêng biệt của các hệ thống gợi ý, được gọi là hệ thống dựa trên kiến thức, vì các chỉ số tương đồng thường dựa trên kiến thức miền. Các hệ thống gợi ý dựa trên kiến thức thường được coi là có liên quan chặt chẽ đến các hệ thống gợi ý dựa trên nội dung, và đôi khi người ta đặt câu hỏi liệu có sự phân định rõ ràng giữa hai lớp phương pháp này hay không.
Các phương pháp cho các hệ thống gợi ý dựa trên nội dung được thảo luận trong Chương 4.

1.3.3 CÁC HỆ THỐNG GỢI Ý DỰA TRÊN KIẾN THỨC

Các hệ thống gợi ý dựa trên kiến thức đặc biệt hữu ích trong bối cảnh các mục không được mua thường xuyên. Ví dụ bao gồm các mục như bất động sản, ô tô, yêu cầu du lịch, dịch vụ tài chính, hoặc hàng hóa xa xỉ đắt tiền. Trong những trường hợp như vậy, có thể không có đủ đánh giá cho quá trình gợi ý. Khi các mục được mua hiếm khi, và với các loại tùy chọn chi tiết khác nhau, rất khó để có được một số lượng đủ các đánh giá cho một thể hiện cụ thể (tức là, sự kết hợp của các tùy chọn) của mục hiện tại. Vấn đề này cũng gặp phải trong bối cảnh của vấn đề khởi động lạnh, khi không có đủ đánh giá cho quá trình gợi ý. Hơn nữa, bản chất của sở thích người tiêu dùng có thể phát triển theo thời gian khi xử lý các mục như vậy. Ví dụ, mô hình của một chiếc xe có thể phát triển đáng kể trong vài năm, do đó sở thích có thể cho thấy sự phát triển tương ứng. Trong các trường hợp khác, có thể khó để nắm bắt đầy đủ sự quan tâm của người dùng với dữ liệu lịch sử như các đánh giá. Một mục cụ thể có thể có các thuộc tính liên quan đến nó tương ứng với các đặc tính khác nhau của nó, và một người dùng có thể chỉ quan tâm đến các mục có các đặc tính cụ thể. Ví dụ, ô tô có thể có nhiều thương hiệu, mẫu mã,
Bảng 1.2: Các mục tiêu khái niệm của các hệ thống gợi ý khác nhau
Hình 1.5: Một ví dụ giả thuyết về giao diện người dùng ban đầu cho một hệ thống gợi ý dựa trên ràng buộc)
màu sắc, tùy chọn động cơ, và tùy chọn nội thất, và sở thích của người dùng có thể được điều chỉnh bởi một sự kết hợp rất cụ thể của những tùy chọn này. Do đó, trong những trường hợp này, miền mục có xu hướng trở nên phức tạp về mặt các thuộc tính đa dạng của nó, và thật khó để liên kết đủ đánh giá với số lượng lớn các kết hợp hiện có. Những trường hợp như vậy có thể được giải quyết bằng các hệ thống gợi ý dựa trên kiến thức, trong đó các đánh giá không được sử dụng cho mục đích gợi ý. Thay vào đó, quá trình gợi ý được thực hiện dựa trên sự tương đồng giữa yêu cầu của khách hàng và mô tả của mục, hoặc việc sử dụng các ràng buộc chỉ định yêu cầu của người dùng.
Quá trình này được hỗ trợ bằng việc sử dụng các cơ sở kiến thức, chứa dữ liệu về các quy tắc và hàm tương đồng để sử dụng trong quá trình truy xuất. Thực tế, các cơ sở kiến thức quan trọng đến mức mà việc thực hiện hiệu quả của các phương pháp này được đặt tên từ thực tế này. Sự chỉ định rõ ràng của các yêu cầu dẫn đến việc kiểm soát lớn hơn của người dùng đối với quá trình gợi ý. Trong cả hai hệ thống hợp tác và dựa trên nội dung, các gợi ý hoàn toàn được quyết định bởi hành động/đánh giá trong quá khứ của người dùng, hành động/đánh giá của bạn bè của cô ấy, hoặc một sự kết hợp của cả hai.
Các hệ thống dựa trên kiến thức là độc đáo ở chỗ chúng cho phép người dùng chỉ định rõ ràng những gì họ muốn. Sự khác biệt này được minh họa trong Bảng 1.2. Các hệ thống gợi ý dựa trên kiến thức có thể được phân loại dựa trên loại giao diện (và kiến thức tương ứng) được sử dụng để đạt được các mục tiêu đã nêu:

Các hệ thống gợi ý dựa trên ràng buộc: Trong các hệ thống dựa trên ràng buộc 1196, 1971, người dùng thường chỉ định các yêu cầu hoặc ràng buộc (ví dụ, giới hạn thấp hoặc cao) trên mục các thuộc tính.
Hình 1.6: Một ví dụ giả thuyết về giao diện người dùng ban đầu cho 0. gợi ý dựa trên trường hợp)  
Một ví dụ về một giao diện như vậy được minh họa trong Hình 1.5. Các quy tắc cụ thể theo miền được sử dụng để khớp các yêu cầu của người dùng với các thuộc tính của mục. Những quy tắc này đại diện cho kiến thức cụ thể theo miền được hệ thống sử dụng. Những quy tắc như vậy có thể có dạng các ràng buộc cụ thể theo miền về các thuộc tính của mục (ví dụ, "Xe ô tô trước năm 1970 không có điều khiển hành trình."). Hơn nữa, các hệ thống dựa trên ràng buộc thường tạo ra các quy tắc liên quan đến các thuộc tính của người dùng với các thuộc tính của mục (ví dụ, "Các nhà đầu tư lớn tuổi không đầu tư vào các sản phẩm có rủi ro cực cao."). Trong những trường hợp như vậy, các thuộc tính của người dùng cũng có thể được chỉ định trong quá trình tìm kiếm. Tùy thuộc vào số lượng và loại kết quả được trả về, người dùng có thể có cơ hội để điều chỉnh các yêu cầu ban đầu của họ. Ví dụ, họ có thể nới lỏng một số ràng buộc của họ khi quá ít kết quả được trả về, hoặc họ có thể thêm nhiều ràng buộc hơn. Quá trình tìm kiếm này được lặp lại một cách tương tác cho đến khi người dùng đạt được kết quả mong muốn của mình.
Các hệ thống gợi ý dựa trên trường hợp: Trong các hệ thống gợi ý dựa trên trường hợp , các trường hợp cụ thể được chỉ định bởi người dùng như là các mục tiêu hoặc điểm neo. Các chỉ số tương đồng được định nghĩa trên các thuộc tính của mục để truy xuất các mục tương tự với những trường hợp này. Một ví dụ về một giao diện như vậy được minh họa trong Hình 1.6. Các chỉ số tương đồng thường được định nghĩa một cách cẩn thận theo cách cụ thể theo miền. Do đó, các chỉ số tương đồng hình thành kiến thức miền được sử dụng trong các hệ thống như vậy. Các kết quả được trả về thường được sử dụng như là các trường hợp mục tiêu mới với một số điều chỉnh tương tác bởi người dùng. Ví dụ, khi một người dùng thấy một kết quả được trả về, mà gần giống như những gì họ muốn, họ có thể phát hành lại một truy vấn với mục tiêu đó, nhưng với một số thuộc tính đã được thay đổi theo sở thích của người dùng. Quá trình tương tác này được sử dụng để hướng dẫn người dùng đến các mục quan tâm.

Lưu ý rằng trong cả hai trường hợp, hệ thống cung cấp cho người dùng cơ hội để thay đổi các yêu cầu đã chỉ định của họ. Tuy nhiên, cách thức mà điều này được thực hiện là khác nhau trong hai trường hợp. Trong các hệ thống dựa trên trường hợp, các ví dụ (hoặc trường hợp) được sử dụng như các điểm neo để hướng dẫn tìm kiếm kết hợp với các chỉ số tương đồng. Các giao diện phê bình đặc biệt phổ biến để thể hiện phản hồi trong các hệ thống như vậy, nơi người dùng lặp đi lặp lại sửa đổi một hoặc nhiều thuộc tính của một mục ưa thích trong mỗi lần lặp. Trong các hệ thống dựa trên ràng buộc, các quy tắc (hoặc ràng buộc) được sử dụng để hướng dẫn tìm kiếm. Hình thức hướng dẫn có thể thường có dạng của các hệ thống dựa trên tìm kiếm, nơi người dùng chỉ định các ràng buộc của họ với một giao diện dựa trên tìm kiếm.
Tương tác trong các hệ thống gợi ý dựa trên kiến thức được thực hiện như thế nào? Hướng dẫn này diễn ra thông qua một hoặc nhiều phương pháp sau:
Các hệ thống đối thoại: Trong trường hợp này, sở thích của người dùng được xác định lặp đi lặp lại trong bối cảnh của một vòng lặp phản hồi. Lý do chính cho điều này là lĩnh vực mục tiêu là phức tạp và sở thích của người dùng chỉ có thể được xác định trong bối cảnh của một hệ thống đối thoại lặp đi lặp lại.
Các hệ thống dựa trên tìm kiếm: Trong các hệ thống dựa trên tìm kiếm, sở thích của người dùng được khai thác bằng cách sử dụng một chuỗi câu hỏi đã được thiết lập trước như sau: "Bạn thích một ngôi nhà ở khu vực ngoại ô hay trong thành phố?" Trong một số trường hợp, các giao diện tìm kiếm cụ thể có thể được thiết lập để cung cấp khả năng chỉ định các ràng buộc của người dùng.
Gợi ý dựa trên điều hướng: Trong gợi ý dựa trên điều hướng, người dùng chỉ định một số yêu cầu thay đổi cho mục đang được gợi ý hiện tại. Thông qua một tập hợp các yêu cầu thay đổi lặp đi lặp lại, có thể đạt được một mục mong muốn. Một ví dụ về yêu cầu thay đổi được chỉ định bởi người dùng, khi một ngôi nhà cụ thể đang được gợi ý, là như sau: "Tôi muốn một ngôi nhà tương tự cách ngôi nhà đang được gợi ý khoảng 5 dặm về phía tây." Các hệ thống gợi ý như vậy cũng được gọi là các hệ thống gợi ý phê bình.
Điều đáng lưu ý là cả hệ thống dựa trên kiến thức và hệ thống dựa trên nội dung đều phụ thuộc đáng kể vào các thuộc tính của các mục. Bởi vì việc sử dụng các thuộc tính nội dung, các hệ thống dựa trên kiến thức thừa hưởng một số nhược điểm giống như các hệ thống dựa trên nội dung. Ví dụ, cũng giống như các hệ thống dựa trên nội dung, các gợi ý trong các hệ thống dựa trên kiến thức đôi khi có thể rõ ràng vì việc sử dụng các đánh giá của cộng đồng (tức là, đánh giá của đồng nghiệp) không được tận dụng. Thực tế, các hệ thống dựa trên kiến thức đôi khi được coi là "anh em họ" của các hệ thống dựa trên nội dung. Sự khác biệt chính là các hệ thống dựa trên nội dung học hỏi từ hành vi của người dùng trong quá khứ, trong khi các hệ thống gợi ý dựa trên kiến thức gợi ý dựa trên việc người dùng chủ động chỉ định nhu cầu và sở thích của họ. Do đó, trong hầu hết tài liệu về hệ thống gợi ý, các hệ thống gợi ý dựa trên kiến thức được coi là một loại riêng biệt so với các hệ thống gợi ý dựa trên nội dung. Những sự phân biệt này dựa trên cả mục tiêu của các hệ thống như vậy và loại dữ liệu đầu vào được sử dụng (xem Bảng 1.2). Các hình thức khác nhau của các hệ thống gợi ý dựa trên kiến thức được thảo luận trong Chương 5.

1.3.3.1 Các Hệ Thống Gợi Ý Dựa Trên Tiện Ích

Trong các hệ thống gợi ý dựa trên tiện ích, một hàm tiện ích được định nghĩa trên các đặc điểm sản phẩm để tính toán xác suất người dùng thích mục đó. Thách thức trung tâm trong các phương pháp dựa trên tiện ích là định nghĩa một hàm tiện ích phù hợp cho người dùng hiện tại. Điều đáng lưu ý là tất cả các sơ đồ gợi ý, cho dù là phương pháp hợp tác, dựa trên nội dung, hay dựa trên kiến thức, đều ngầm xếp hạng các mục được gợi ý dựa trên giá trị (hoặc tiện ích) mà chúng được cảm nhận cho người dùng mục tiêu. Trong các hệ thống dựa trên tiện ích, giá trị tiện ích này dựa trên một hàm được biết trước. Trong ý nghĩa này, các hàm như vậy có thể được xem như một loại kiến thức bên ngoài. Do đó, các hệ thống dựa trên tiện ích có thể được xem như một trường hợp cụ thể của các hệ thống gợi ý dựa trên kiến thức. Thực tế, sẽ được chỉ ra trong Chương 5 rằng các hàm tiện ích thường được sử dụng theo nhiều cách khác nhau để xếp hạng các mục trong các hệ thống gợi ý dựa trên kiến thức.

1.3.4 Hệ Thống Gợi Ý Dân Số

Trong các hệ thống gợi ý dân số, thông tin dân số về người dùng được tận dụng để học các bộ phân loại có thể ánh xạ các đặc điểm dân số cụ thể đến các đánh giá hoặc xu hướng mua sắm. Một hệ thống gợi ý sớm, được gọi là Grundy, đã gợi ý sách dựa trên thư viện của các khuôn mẫu được lắp ráp thủ công. Các đặc điểm của người dùng được thu thập thông qua việc sử dụng một cuộc đối thoại tương tác. Việc quan sát rằng các nhóm dân số từ nghiên cứu tiếp thị có thể được sử dụng để gợi ý các mục. Một công việc khác đã thực hiện các gợi ý trang web dựa trên các đặc điểm dân số của người dùng đã đánh giá một trang cụ thể cao. Trong nhiều trường hợp, thông tin dân số có thể được kết hợp với ngữ cảnh bổ sung để hướng dẫn quá trình gợi ý. Cách tiếp cận này liên quan đến phương pháp của các hệ thống gợi ý nhạy cảm với ngữ cảnh. Một số phương pháp này được thảo luận trong phần 8.5.3 của Chương 8. Các kỹ thuật gần đây đã tập trung vào việc sử dụng các bộ phân loại để thực hiện các gợi ý. Một trong những hệ thống thú vị trong khía cạnh này là một kỹ thuật đã trích xuất các đặc điểm từ các trang chính của người dùng để dự đoán khả năng họ thích một số nhà hàng nhất định. Các bộ phân loại dựa trên quy tắc thường được sử dụng để liên kết hồ sơ dân số với hành vi mua sắm theo cách tương tác. Trong khi cách tiếp cận  không được sử dụng cụ thể để gợi ý các mục cụ thể, nó có thể dễ dàng được kết hợp với một hệ thống gợi ý. Các hệ thống gợi ý như vậy không khác biệt nhiều so với vấn đề phân loại và hồi quy thông thường, trong đó các biến đặc trưng tương ứng với các hồ sơ dân số và các biến phụ thuộc tương ứng với các đánh giá hoặc hành vi mua sắm. Mặc dù các hệ thống gợi ý dân số thường không cung cấp kết quả tốt nhất trên cơ sở độc lập, chúng đóng góp đáng kể vào sức mạnh của các hệ thống gợi ý khác như một thành phần của các mô hình lai hoặc tổ hợp. Các kỹ thuật dân số đôi khi được kết hợp với các hệ thống gợi ý dựa trên kiến thức để tăng cường độ tin cậy của chúng.

1.3.5 Hệ Thống Gợi Ý Lai và Dựa Trên Tổ Hợp

Ba hệ thống đã đề cập ở trên khai thác các nguồn đầu vào khác nhau, và chúng có thể hoạt động tốt trong các kịch bản khác nhau. Ví dụ, các hệ thống lọc cộng tác dựa vào các đánh giá của cộng đồng, các phương pháp dựa trên nội dung dựa vào các mô tả văn bản và các đánh giá của chính người dùng mục tiêu, và các hệ thống dựa trên kiến thức dựa vào các tương tác với người dùng trong bối cảnh của các cơ sở kiến thức. Tương tự, các hệ thống dân số sử dụng các hồ sơ dân số của người dùng để thực hiện các gợi ý. Đáng chú ý là các hệ thống khác nhau này sử dụng các loại đầu vào khác nhau, và có những điểm mạnh và điểm yếu khác nhau. Một số hệ thống gợi ý, chẳng hạn như các hệ thống dựa trên kiến thức, hiệu quả hơn trong các thiết lập khởi động lạnh nơi mà một lượng dữ liệu đáng kể không có sẵn. Các hệ thống gợi ý khác, chẳng hạn như các phương pháp cộng tác, hiệu quả hơn khi có nhiều dữ liệu có sẵn. Trong nhiều trường hợp mà một loạt các đầu vào rộng hơn có sẵn, người ta có sự linh hoạt trong việc sử dụng các loại hệ thống gợi ý khác nhau cho cùng một nhiệm vụ. Trong những trường hợp như vậy, có nhiều cơ hội cho việc lai ghép, nơi mà các khía cạnh khác nhau từ các loại hệ thống khác nhau được kết hợp để đạt được những điều tốt nhất từ tất cả các thế giới. Các hệ thống gợi ý lai có mối liên hệ chặt chẽ đến lĩnh vực phân tích tập hợp, trong đó sức mạnh của nhiều loại thuật toán học máy được kết hợp để tạo ra một mô hình mạnh mẽ hơn. Các hệ thống gợi ý dựa trên tập hợp có khả năng kết hợp không chỉ sức mạnh của nhiều nguồn dữ liệu, mà chúng cũng có khả năng cải thiện hiệu quả của một lớp hệ thống gợi ý cụ thể (ví dụ, hệ thống hợp tác) bằng cách kết hợp nhiều mô hình cùng loại. Tình huống này không khác nhiều so với phân tích tập hợp trong lĩnh vực phân loại dữ liệu. Chương 6 nghiên cứu các chiến lược lai khác nhau cho các hệ thống gợi ý.

1.3.6 Đánh giá các Hệ thống Gợi ý

Được cung cấp một tập hợp các thuật toán gợi ý, chúng hoạt động tốt như thế nào? Làm thế nào chúng ta có thể đánh giá hiệu quả tương đối của chúng? Các hệ thống gợi ý chia sẻ một số điểm tương đồng khái niệm với vấn đề mô hình phân loại và hồi quy. Trong mô hình phân loại và hồi quy, biến lớp bị thiếu cần được dự đoán từ các biến đặc trưng. Trong các hệ thống gợi ý, bất kỳ mục nào trong ma trận có thể bị thiếu và cần được dự đoán theo cách dựa trên dữ liệu từ các mục quan sát trong ma trận còn lại. Theo nghĩa này, vấn đề gợi ý có thể được xem như một sự tổng quát của vấn đề phân loại. Do đó, nhiều mô hình được sử dụng để đánh giá các bộ phân loại có thể được sử dụng để đánh giá các hệ thống gợi ý, mặc dù có một số sửa đổi. Có những biến thể đáng kể trong các kỹ thuật đánh giá được sử dụng cho các khía cạnh khác nhau của các hệ thống gợi ý, chẳng hạn như dự đoán xếp hạng hoặc xếp hạng. Cái trước có liên quan chặt chẽ đến mô hình phân loại và hồi quy, trong khi cái sau có liên quan chặt chẽ đến việc đánh giá hiệu quả truy xuất trong các ứng dụng tìm kiếm và truy xuất thông tin. Các phương pháp đánh giá cho các hệ thống gợi ý được thảo luận chi tiết trong Chương 7.

1.4 Những Thách Thức Cụ Thể Trong Các Hệ thống Gợi ý

Trong các lĩnh vực khác nhau, chẳng hạn như dữ liệu tạm thời, dữ liệu dựa trên vị trí, và dữ liệu xã hội, ngữ cảnh của gợi ý đóng vai trò quan trọng. Do đó, khái niệm về các hệ thống gợi ý theo ngữ cảnh đã được phát triển để giải quyết thông tin bên cạnh bổ sung phát sinh trong các lĩnh vực này. Khái niệm này được sử dụng với các sửa đổi khác nhau cho nhiều loại dữ liệu, chẳng hạn như dữ liệu tạm thời, dữ liệu vị trí, hoặc dữ liệu xã hội.

1.4.1 Các Hệ thống Gợi ý Dựa trên Ngữ cảnh

Các hệ thống gợi ý dựa trên ngữ cảnh hoặc nhận thức ngữ cảnh xem xét nhiều loại thông tin ngữ cảnh khác nhau khi đưa ra gợi ý. Thông tin ngữ cảnh như vậy có thể bao gồm thời gian, vị trí, hoặc dữ liệu xã hội. Ví dụ, các loại quần áo được gợi ý bởi một nhà bán lẻ có thể phụ thuộc vào cả mùa và vị trí của khách hàng. Một ví dụ khác là trường hợp mà một loại lễ hội hoặc ngày lễ cụ thể ảnh hưởng đến hoạt động của khách hàng cơ bản.

Nói chung, đã được quan sát rằng việc sử dụng thông tin ngữ cảnh như vậy có thể cải thiện đáng kể hiệu quả của quá trình gợi ý. Các hệ thống gợi ý dựa trên ngữ cảnh rất mạnh mẽ vì các ý tưởng cơ bản liên quan đến nhiều cài đặt cụ thể trong lĩnh vực. Thực tế, một chủ đề lặp đi lặp lại trong các chương sau của cuốn sách, sẽ là việc sử dụng một mô hình đa chiều cho các gợi ý cụ thể theo ngữ cảnh trong các lĩnh vực khác nhau cài đặt cụ thể theo miền. Các hệ thống gợi ý nhận thức ngữ cảnh sẽ được thảo luận trong Chương 8 theo một nghĩa tổng quát. Tuy nhiên, các khía cạnh riêng lẻ của ngữ cảnh, chẳng hạn như thời gian, vị trí, và thông tin xã hội, sẽ được nghiên cứu chi tiết trong các chương khác. Một cái nhìn tổng quát về những khía cạnh khác nhau này được cung cấp dưới đây.

1.4.2 CÁC HỆ THỐNG GỢI Ý NHẠY CẢM VỀ THỜI GIAN

Trong nhiều cài đặt, các gợi ý cho một mục có thể thay đổi theo thời gian. Ví dụ, các gợi ý cho một bộ phim có thể rất khác nhau vào thời điểm phát hành so với các gợi ý nhận được vài năm sau đó. Trong những trường hợp như vậy, việc tích hợp kiến thức tạm thời vào quy trình gợi ý là cực kỳ quan trọng. Khía cạnh tạm thời trong các hệ thống gợi ý như vậy có thể được phản ánh theo nhiều cách:
Đánh giá của một mục có thể thay đổi theo thời gian, khi thái độ của cộng đồng phát triển và sở thích của người dùng thay đổi theo thời gian. Sở thích, sở thích, không thích và xu hướng của người dùng chắc chắn sẽ phát triển theo thời gian. Đánh giá của một mục có thể phụ thuộc vào thời điểm cụ thể trong ngày, ngày trong tuần, tháng, hoặc mùa. Ví dụ, thật ít ý nghĩa khi gợi ý quần áo mùa đông trong mùa hè, hoặc áo mưa trong mùa khô. Loại hệ thống gợi ý đầu tiên được tạo ra bằng cách tích hợp thời gian như một tham số rõ ràng trong các hệ thống lọc cộng tác. Loại thứ hai có thể được xem như một trường hợp đặc biệt của các hệ thống gợi ý dựa trên ngữ cảnh. Các hệ thống gợi ý tạm thời là thách thức vì thực tế rằng ma trận đánh giá là thưa thớt, và việc sử dụng ngữ cảnh tạm thời cụ thể làm trầm trọng thêm vấn đề thưa thớt. Do đó, việc có quyền truy cập vào các tập dữ liệu lớn trong những cài đặt này là đặc biệt quan trọng. Một cài đặt phổ biến khác là các tập dữ liệu phản hồi ngầm như các luồng nhấp chuột trên Web. Hoạt động của người dùng trên Web và các nền tảng internet khác tạo ra rất nhiều dữ liệu hữu ích có thể được khai thác để đưa ra các gợi ý về hoạt động trong tương lai. Trong những trường hợp như vậy, khai thác mẫu tuần tự rời rạc và các mô hình Markov là hữu ích. Vấn đề gợi ý nhạy cảm về thời gian được thảo luận chi tiết trong Chương 9.

1.4.3 CÁC HỆ THỐNG GỢI Ý DỰA TRÊN VỊ TRÍ

Với sự phổ biến ngày càng tăng của điện thoại di động có GPS, người tiêu dùng thường quan tâm đến các gợi ý dựa trên vị trí. Ví dụ, một người dùng đang du lịch có thể muốn xác định nhà hàng gần nhất dựa trên lịch sử đánh giá của cô ấy cho các nhà hàng khác. Nói chung, việc gợi ý các địa điểm luôn có một khía cạnh vị trí được tích hợp vào. Một ví dụ về một hệ thống như vậy là Foursquare, hệ thống này gợi ý nhiều loại địa điểm khác nhau như nhà hàng hoặc địa điểm giải trí về đêm. Có hai loại tính địa phương không gian phổ biến trong các hệ thống như vậy:

Tính địa phương theo sở thích. Ví dụ, một người dùng từ Wisconsin có thể không có sở thích phim giống như một người dùng từ New York. Loại tính địa phương này được gọi là tính địa phương theo sở thích.
Tính địa phương theo người dùng: Vị trí địa lý của một người dùng có vai trò quan trọng trong Q.

Tính địa phương theo mục: Vị trí địa lý của một mục (ví dụ: nhà hàng) có thể ảnh hưởng đến sự liên quan của mục đó, tùy thuộc vào vị trí hiện tại của người dùng. Người dùng thường không sẵn sàng di chuyển quá xa từ vị trí hiện tại của họ. Loại địa phương này được gọi là địa phương di chuyển. Các thuật toán cho địa phương sở thích và địa phương di chuyển là khá khác nhau. Cái trước gần hơn với các hệ thống nhạy cảm với ngữ cảnh, trong khi cái sau thường được thiết kế như các phương pháp heuristics tạm thời. Các hệ thống gợi ý dựa trên vị trí đã chứng kiến sự quan tâm ngày càng tăng trong những năm gần đây do sự gia tăng phổ biến của điện thoại di động và các thiết bị GPS khác. Các hệ thống gợi ý dựa trên vị trí được thảo luận chi tiết trong Chương 9.


1.4.4 Các Hệ Thống Gợi Ý Xã Hội

Các hệ thống gợi ý xã hội dựa trên cấu trúc mạng, các tín hiệu xã hội và thẻ, hoặc sự kết hợp của các khía cạnh mạng khác nhau này. Nói chung, các hệ thống gợi ý dựa trên các tín hiệu xã hội và thẻ có chút khác biệt so với những hệ thống chỉ dựa hoàn toàn vào các khía cạnh cấu trúc. Các hệ thống gợi ý, mà chỉ dựa hoàn toàn vào các khía cạnh cấu trúc, được sử dụng để gợi ý các nút và liên kết trong chính mạng lưới. Mặt khác, các hệ thống gợi ý xã hội cũng có thể được sử dụng để gợi ý các sản phẩm khác nhau với việc sử dụng các tín hiệu xã hội. Cả hai hình thức hệ thống gợi ý này sẽ được nghiên cứu trong cuốn sách này. Tuy nhiên, các hình thức gợi ý này đủ khác biệt để chúng sẽ được nghiên cứu trong các chương khác nhau của cuốn sách này. Điều quan trọng là lưu ý rằng tính hữu ích của các hệ thống gợi ý cấu trúc mở rộng ra ngoài các mạng xã hội, vì các phương pháp như vậy được áp dụng cho nhiều loại mạng được hỗ trợ bởi Web.

1.4.4.1 Gợi Ý Cấu Trúc Về Các Nút và Liên Kết

Nhiều loại mạng, bao gồm cả mạng xã hội, được cấu thành từ các nút và liên kết. Trong nhiều trường hợp, việc gợi ý các nút và liên kết là điều mong muốn. Ví dụ, một tìm kiếm Web cá nhân hóa có thể yêu cầu một gợi ý về tài liệu liên quan đến một chủ đề cụ thể. Vì Web có thể được xem như một đồ thị, các phương pháp như vậy có thể được xem như một vấn đề gợi ý nút. Vấn đề gợi ý nút có liên quan chặt chẽ đến vấn đề tìm kiếm Web. Thực tế, cả hai vấn đề đều yêu cầu sử dụng nhiều hình thức thuật toán xếp hạng khác nhau. Một thành phần chính của các phương pháp này là việc sử dụng thuật toán PageRank, mặc dù việc cá nhân hóa các thuật toán như vậy có liên quan chặt chẽ hơn đến các thuật toán gợi ý. Do đó, các thuật toán như vậy cũng được gọi là các thuật toán PageRank cá nhân hóa. Trong các trường hợp mà các ví dụ về các nút quan tâm có sẵn, các nút như vậy có thể được sử dụng làm dữ liệu huấn luyện để xác định các nút quan tâm khác. Vấn đề này được gọi là phân loại tập thể. Một vấn đề liên quan chặt chẽ là vấn đề gợi ý liên kết hoặc vấn đề dự đoán liên kết, trong đó mong muốn gợi ý bạn bè (hoặc các liên kết tiềm năng) cho một người dùng trong một mạng xã hội. Vấn đề dự đoán liên kết cũng có nhiều ứng dụng ngoài các mạng xã hội. Thú vị là, các vấn đề về xếp hạng, phân loại tập thể và gợi ý liên kết có liên quan chặt chẽ với nhau. Thực tế, các giải pháp cho một vấn đề thường được sử dụng như các chương trình con cho các vấn đề khác. Ví dụ, các phương pháp xếp hạng và dự đoán liên kết thường được sử dụng cho các gợi ý sản phẩm truyền thống trong các đồ thị người dùng-mục. Thực tế, các phương pháp này có thể được sử dụng để thực hiện các gợi ý trong nhiều bối cảnh vấn đề, có thể được chuyển đổi thành các đồ thị. Các phương pháp gợi ý về nút và liên kết được thảo luận trong Chương 10.

1.4.4.2 Đề Xuất Sản Phẩm và Nội Dung với Ảnh Hưởng Xã Hội

Nhiều hình thức đề xuất sản phẩm và nội dung được thực hiện với sự trợ giúp của các kết nối mạng và các tín hiệu xã hội khác. Vấn đề này cũng được gọi là tiếp thị lan truyền. Trong tiếp thị lan truyền, các sản phẩm được đề xuất với việc sử dụng các hệ thống truyền miệng. Để đạt được mục tiêu này, điều quan trọng là phải xác định được các thực thể có ảnh hưởng và liên quan đến chủ đề trong mạng. Vấn đề này được gọi là phân tích ảnh hưởng trong các mạng xã hội.
Nhiều biến thể của vấn đề này đã được đề xuất, trong đó các người có ảnh hưởng được tìm thấy theo cách nhạy cảm với chủ đề, trong kịch bản dòng xã hội. Ví dụ, xác định các người dùng có ảnh hưởng trong một dòng Twitter cho các chủ đề cụ thể có thể rất hữu ích cho tiếp thị lan truyền. Trong các trường hợp khác, các tín hiệu xã hội được thu thập từ các mạng xã hội để đưa ra các đề xuất. Các phương pháp này được thảo luận trong Chương 10.

1.4.4.3 Hệ Thống Đề Xuất Đáng Tin Cậy

Nhiều trang mạng xã hội, chẳng hạn như Epinions hoặc Slashdot, cho phép người dùng thể hiện sự tin tưởng và không tin tưởng lẫn nhau, hoặc theo cách trực tiếp, hoặc thông qua các cơ chế phản hồi khác nhau. Ví dụ, người dùng có thể thể hiện sự tin tưởng hoặc không tin tưởng của họ trong các đánh giá của người dùng khác, hoặc họ có thể chỉ định trực tiếp các mối quan hệ tin tưởng hoặc không tin tưởng của họ với các người dùng khác. Thông tin tin tưởng này rất hữu ích để đưa ra các đề xuất mạnh mẽ hơn. Ví dụ, rõ ràng rằng một phương pháp lân cận dựa trên người dùng nên được tính toán với việc sử dụng các đồng nghiệp đáng tin cậy để có được các đề xuất mạnh mẽ. Nghiên cứu gần đây đã chỉ ra rằng việc kết hợp thông tin tin tưởng có thể dẫn đến các đề xuất mạnh mẽ hơn. Các hệ thống đề xuất đáng tin cậy được trình bày trong Chương II.

1.4.4.4 Tận Dụng Phản Hồi Gán Thẻ Xã Hội cho Các Đề Xuất

Người dùng có nhiều phương pháp để tích hợp phản hồi của họ vào các hệ thống đề xuất. Hình thức phản hồi phổ biến nhất là gán thẻ xã hội. Các hình thức phản hồi như vậy đặc biệt phổ biến trên các trang chia sẻ nội dung trên Web, chẳng hạn như Flickr (chia sẻ ảnh), last.fm (chia sẻ nhạc), và Bibsonomy (chia sẻ tài liệu khoa học). Các thẻ là siêu dữ liệu mà người dùng sử dụng để thêm các từ khóa ngắn gọn, thông tin vào nội dung. Ví dụ, một người dùng trên một trang nhạc có thể gán thẻ cho album Thriller của Michael Jackson là "rock." Các thẻ như vậy cung cấp thông tin hữu ích về sở thích của cả người dùng và nội dung của mục vì thẻ được liên kết với cả hai. Các thẻ phục vụ như một ngữ cảnh hữu ích để thực hiện các đề xuất. Các phương pháp cho các đề xuất nhạy cảm với ngữ cảnh có thể được sử dụng trực tiếp để tích hợp phản hồi này vào quy trình đề xuất. Các phương pháp chuyên biệt khác cũng đã được phát triển để sử dụng phản hồi gán thẻ xã hội trong quy trình đề xuất. Các phương pháp này được thảo luận chi tiết trong Chương II.

1.5 Các Chủ Đề Nâng Cao và Ứng Dụng

Cuốn sách này cũng sẽ giới thiệu một số chủ đề nâng cao và ứng dụng. Hầu hết các chủ đề này được thảo luận trong các Chương 12 và 13, mặc dù một số chủ đề được phân bổ rải rác trong cuốn sách, nơi mà điều đó là phù hợp. Trong phần này, chúng tôi cung cấp một giới thiệu ngắn gọn về các chủ đề này.

1.5.1 Vấn Đề Khởi Đầu Lạnh Trong Các Hệ Thống Gợi Ý

Một trong những vấn đề chính trong các hệ thống gợi ý là số lượng đánh giá ban đầu có sẵn tương đối nhỏ. Trong những trường hợp như vậy, việc áp dụng các mô hình lọc cộng tác truyền thống trở nên khó khăn hơn. Trong khi các phương pháp dựa trên nội dung và dựa trên kiến thức mạnh mẽ hơn so với các mô hình cộng tác trong bối cảnh khởi đầu lạnh, thì nội dung hoặc kiến thức như vậy có thể không luôn có sẵn. Do đó, một số phương pháp cụ thể đã được thiết kế để cải thiện vấn đề khởi đầu lạnh trong bối cảnh của các hệ thống gợi ý. Sự nhạy cảm của các mô hình khác nhau đối với vấn đề khởi đầu lạnh cũng được nhấn mạnh trong suốt cuốn sách này, cùng với các giải pháp khả thi.

1.5.2 Các Hệ Thống Gợi Ý Chống Tấn Công

Việc sử dụng các hệ thống gợi ý có tác động đáng kể đến doanh số bán hàng của các sản phẩm và dịch vụ khác nhau. Do đó, những người bán sản phẩm và dịch vụ có động lực kinh tế đáng kể để thao túng đầu ra của các hệ thống gợi ý. Một ví dụ về sự thao túng như vậy sẽ là việc gửi các đánh giá phóng đại về sản phẩm của chính họ đến các hệ thống gợi ý. Một đối thủ độc ác có thể gửi các đánh giá thiên lệch và tiêu cực về sản phẩm của một đối thủ cạnh tranh. Qua nhiều năm, nhiều chiến lược tinh vi đã được phát triển để tấn công các hệ thống gợi ý. Những cuộc tấn công như vậy là rất không mong muốn vì chúng làm giảm hiệu quả tổng thể của hệ thống gợi ý và giảm chất lượng trải nghiệm cho người dùng hợp pháp. Do đó, cần có các phương pháp cho phép gợi ý mạnh mẽ trong bối cảnh có những cuộc tấn công như vậy. Các phương pháp tấn công, bao gồm sự nhạy cảm của các loại thuật toán khác nhau đối với các cuộc tấn công, được thảo luận chi tiết trong Chương 12. Ngoài ra, Chương 12 sẽ cung cấp một số chiến lược để xây dựng các hệ thống gợi ý mạnh mẽ trong bối cảnh có những cuộc tấn công như vậy.

1.5.3 Các Hệ Thống Gợi Ý Nhóm

Một mở rộng thú vị của các hệ thống gợi ý truyền thống là khái niệm về các hệ thống gợi ý nhóm. Trong những trường hợp như vậy, hệ thống gợi ý được điều chỉnh để gợi ý một hoạt động cụ thể cho một nhóm người dùng thay vì một người dùng đơn lẻ. Các ví dụ có thể bao gồm việc xem phim hoặc truyền hình bởi một nhóm, việc chọn nhạc trong một trung tâm thể dục, hoặc các gợi ý du lịch cho một nhóm khách du lịch. Các hệ thống sớm nhất, chẳng hạn như PolyLens, đã thiết kế các mô hình tổng hợp sở thích của các người dùng cá nhân để tạo ra các gợi ý nhóm. Tuy nhiên, sự đồng thuận qua các năm đã phát triển thành việc thiết kế các hệ thống gợi ý, mà tốt hơn là tổng hợp các phần của chúng và có thể tính đến các tương tác giữa các người dùng khác nhau để thiết kế các gợi ý. Các chiến lược trung bình đơn giản không hoạt động tốt khi các nhóm không đồng nhất và chứa các người dùng với sở thích đa dạng. Điều này là vì người dùng thường có ảnh hưởng đến sở thích của nhau dựa trên các hiện tượng từ tâm lý học xã hội, chẳng hạn như sự lây lan cảm xúc và sự tuân thủ. Các khảo sát chi tiết về chủ đề này có thể được tìm thấy trong các tài liệu. Các hệ thống gợi ý nhóm được thảo luận trong phần 13.4 của Chương 13.

1.5.4 Các Hệ Thống Gợi Ý Đa Tiêu Chí

Trong các hệ thống đa tiêu chí, các đánh giá có thể được chỉ định dựa trên các tiêu chí khác nhau bởi một người dùng duy nhất. Ví dụ, một người dùng có thể đánh giá phim dựa trên cốt truyện, âm nhạc, hiệu ứng đặc biệt, và v.v. Các kỹ thuật như vậy thường cung cấp các gợi ý bằng cách mô hình hóa tiện ích của người dùng đối với một mục là một vector các đánh giá tương ứng với các tiêu chí khác nhau.
hệ thống gợi ý, người ta thường có thể nhận được kết quả sai lệch chỉ bằng cách sử dụng đánh giá tổng thể kết hợp với một hệ thống gợi ý truyền thống. Ví dụ, nếu hai người dùng có cùng một đánh giá tổng thể cho một bộ phim, nhưng các đánh giá thành phần của họ cho cốt truyện và âm nhạc rất khác nhau, thì hai người dùng này không nên được coi là tương tự từ góc độ của một thuật toán lọc cộng tác dựa trên sự tương đồng. Trong một số hệ thống đa tiêu chí, người dùng có thể không chỉ định một đánh giá tổng thể nào cả. Trong những trường hợp như vậy, vấn đề thậm chí còn thách thức hơn vì cần phải trình bày danh sách xếp hạng các mục cho nhiều người dùng khác nhau dựa trên nhiều tiêu chí. Các cái nhìn tổng quan xuất sắc về các hệ thống gợi ý đa tiêu chí có thể được tìm thấy từ nhiều góc độ khác nhau. Đã có bằng chứng rằng một số phương pháp cho các hệ thống gợi ý nhóm cũng có thể được điều chỉnh cho các hệ thống gợi ý đa tiêu chí. Tuy nhiên, hai chủ đề này thường được coi là khác nhau vì chúng nhấn mạnh các khía cạnh khác nhau của quá trình gợi ý. Các phương pháp cho các hệ thống gợi ý đa tiêu chí được thảo luận trong phần 13.5 của Chương 13.

1.5.5 HỌC TẬP TÍCH CỰC TRONG CÁC HỆ THỐNG GỢI Ý

Một thách thức lớn trong các hệ thống gợi ý là việc thu thập đủ đánh giá để đưa ra các dự đoán vững chắc. Tính thưa thớt của ma trận đánh giá tiếp tục là một trở ngại đáng kể trong việc hoạt động hiệu quả của các hệ thống gợi ý. Việc thu thập đủ đánh giá có thể giảm thiểu vấn đề thưa thớt. Một loạt các hệ thống gợi ý thực tế có cơ chế để khuyến khích người dùng nhập đánh giá nhằm làm đầy hệ thống. Ví dụ, người dùng có thể được cung cấp các ưu đãi để đánh giá một số mục nhất định. Nói chung, thường rất khó để thu thập quá nhiều đánh giá từ một người dùng duy nhất do chi phí cao của quá trình thu thập. Do đó, người ta phải chọn lọc một cách khôn ngoan các mục để được đánh giá bởi các người dùng cụ thể. Ví dụ, nếu một người dùng đã đánh giá rất nhiều bộ phim hành động, thì việc yêu cầu người dùng đó đánh giá một bộ phim hành động khác không giúp ích nhiều trong việc dự đoán đánh giá của các bộ phim hành động khác, và càng ít giúp ích hơn trong việc dự đoán đánh giá của các bộ phim thuộc thể loại không liên quan. Mặt khác, việc yêu cầu người dùng đánh giá các bộ phim thuộc thể loại ít người xem hơn sẽ giúp đáng kể trong việc dự đoán đánh giá của các bộ phim thuộc thể loại đó. Tất nhiên, nếu một người dùng được yêu cầu đánh giá một bộ phim không liên quan, không nhất thiết rằng cô ấy sẽ có thể cung cấp phản hồi vì cô ấy có thể chưa xem bộ phim đó. Do đó, có nhiều sự đánh đổi thú vị trong vấn đề học tập tích cực của các hệ thống gợi ý, mà không gặp phải trong các lĩnh vực vấn đề khác như phân loại. Một bài đánh giá về các phương pháp học tập tích cực cho các hệ thống gợi ý có thể được tìm thấy trong . Các phương pháp học tập tích cực được thảo luận trong phần 13.6 của Chương 13.

1.5.6 QUYỀN RIÊNG TƯ TRONG CÁC HỆ THỐNG GỢI Ý

Các hệ thống gợi ý dựa rất nhiều vào phản hồi từ người dùng, có thể là ngầm định hoặc rõ ràng. Phản hồi này chứa thông tin quan trọng về sở thích của người dùng, và nó có thể tiết lộ thông tin về quan điểm chính trị, xu hướng tình dục và sở thích cá nhân của họ. Trong nhiều trường hợp, thông tin như vậy có thể rất nhạy cảm, điều này dẫn đến những lo ngại về quyền riêng tư. Những lo ngại về quyền riêng tư này là quan trọng vì chúng cản trở việc phát hành dữ liệu cần thiết cho sự tiến bộ của các thuật toán gợi ý. Sự sẵn có của dữ liệu thực là rất quan trọng cho những tiến bộ thuật toán. Ví dụ, sự đóng góp của bộ dữ liệu Giải thưởng Netflix cho cộng đồng các hệ thống gợi ý là vô giá, vì nó có thể được ghi nhận với việc thúc đẩy sự phát triển của nhiều thuật toán tiên tiến.Trong những năm gần đây, chủ đề quyền riêng tư đã được khám phá trong bối cảnh của một loạt các vấn đề khai thác dữ liệu. Lĩnh vực gợi ý không phải là ngoại lệ, và nhiều thuật toán bảo vệ quyền riêng tư đã được phát triển . Chủ đề về quyền riêng tư trong các hệ thống gợi ý được thảo luận chi tiết trong phần 13.7 của Chương 13.

1.5.7 Các Lĩnh Vực Ứng Dụng

Các hệ thống gợi ý được sử dụng trong nhiều lĩnh vực ứng dụng, chẳng hạn như bán lẻ, âm nhạc, nội dung, tìm kiếm trên Web, truy vấn và quảng cáo tính toán. Một số lĩnh vực này yêu cầu các phương pháp chuyên biệt để điều chỉnh các hệ thống gợi ý. Cụ thể, Chương 13 sẽ nghiên cứu ba lĩnh vực cụ thể tương ứng với các gợi ý tin tức, quảng cáo tính toán và các hệ thống gợi ý đối ứng. Tất cả các lĩnh vực ứng dụng này đều có tính chất tập trung vào Web. Một khía cạnh quan trọng của các hệ thống gợi ý là chúng giả định sự tồn tại của các cơ chế xác định người dùng mạnh mẽ để theo dõi và xác định sở thích người dùng lâu dài. Trong nhiều lĩnh vực Web, các cơ chế xác định người dùng mạnh mẽ có thể không có sẵn. Trong những trường hợp như vậy, việc sử dụng trực tiếp công nghệ gợi ý có thể không khả thi. Hơn nữa, vì các mục mới (quảng cáo) liên tục vào và rời khỏi hệ thống, một số loại phương pháp như băng nhóm đa tay đặc biệt phù hợp. Do đó, Chương 13 sẽ thảo luận về các kịch bản mà công nghệ gợi ý có thể được sử dụng trong các lĩnh vực ứng dụng này. Những thay đổi cụ thể cần được thực hiện đối với các hệ thống gợi ý có sẵn sẽ được thảo luận trong chương này cùng với các kỹ thuật tiên tiến như băng nhóm đa tay.

1.6 Tóm Tắt

Cuốn sách này sẽ cung cấp một cái nhìn tổng quan về các loại thuật toán quan trọng nhất cho các hệ thống gợi ý, những lợi ích và bất lợi của chúng, và các kịch bản cụ thể mà chúng hiệu quả nhất. Vấn đề gợi ý sẽ được nghiên cứu trong bối cảnh của các kịch bản cụ thể theo miền khác nhau và với các loại thông tin đầu vào và cơ sở kiến thức khác nhau. Như cuốn sách này sẽ chỉ ra, vấn đề gợi ý là một vấn đề phong phú, và có nhiều biểu hiện khác nhau tùy thuộc vào bản chất của dữ liệu đầu vào và kịch bản hiện tại. Hơn nữa, hiệu quả tương đối của các thuật toán khác nhau có thể thay đổi với các thiết lập vấn đề cụ thể. Những sự đánh đổi này cũng sẽ được cuốn sách này khám phá. Trong nhiều trường hợp, các hệ thống lai có thể được phát triển, khai thác hiệu quả những sự đánh đổi này. Một số chủ đề tiên tiến, chẳng hạn như mô hình tấn công, hệ thống gợi ý nhóm, hệ thống đa tiêu chí, hệ thống học chủ động, sẽ được nghiên cứu trong các chương sau của cuốn sách này. Chúng tôi cũng sẽ khám phá một số ứng dụng cụ thể, chẳng hạn như gợi ý tin tức và quảng cáo tính toán. Hy vọng rằng cuốn sách này sẽ cung cấp một cái nhìn tổng quan và hiểu biết toàn diện về các kịch bản khác nhau phát sinh trong lĩnh vực các hệ thống gợi ý.

1.7 Ghi Chú Tham Khảo

Các hệ thống gợi ý trở nên ngày càng phổ biến vào giữa những năm chín mươi, khi các hệ thống gợi ý như GroupLens được phát triển. Kể từ đó, chủ đề này đã được khám phá rộng rãi trong bối cảnh của nhiều mô hình khác nhau như hệ thống hợp tác, hệ thống dựa trên nội dung và hệ thống dựa trên kiến thức. Các khảo sát và sách chi tiết về chủ đề này có thể được tìm thấy trong . Trong số này, công trình trong là một khảo sát rất tốt, cung cấp một cái nhìn tổng quan xuất sắc về các ý tưởng cơ bản. Một khảo sát về việc sử dụng các nguồn không truyền thống.
Thông tin cho các khuyến nghị, chẳng hạn như thông tin xã hội, tạm thời, thông tin bên lề, hoặc dữ liệu ngữ cảnh, được cung cấp trong. Một phân loại gần đây về các khía cạnh khác nhau của nghiên cứu hệ thống gợi ý có thể được tìm thấy trong. Một cuốn sách giới thiệu xuất sắc có thể được tìm thấy, trong khi một cuốn cẩm nang chi tiết thảo luận về các khía cạnh khác nhau của hệ thống gợi ý một cách chi tiết. Vấn đề của lọc hợp tác với các ma trận đánh giá không đầy đủ có liên quan chặt chẽ đến tài liệu truyền thống về phân tích dữ liệu thiếu, mặc dù hai lĩnh vực này thường đã được nghiên cứu độc lập. Các mô hình lọc hợp tác dựa trên người dùng sớm nhất đã được nghiên cứu. Các phương pháp dựa trên người dùng sử dụng các đánh giá của những người dùng tương tự trên cùng một mục để đưa ra dự đoán. Trong khi các phương pháp như vậy ban đầu khá phổ biến, chúng không dễ mở rộng và đôi khi không chính xác. Sau đó, các phương pháp dựa trên mục đã được đề xuất, tính toán các đánh giá dự đoán như một hàm của các đánh giá của cùng một người dùng trên các mục tương tự. Một phương pháp phổ biến khác để đưa ra khuyến nghị là việc sử dụng các mô hình yếu tố tiềm ẩn. Các công trình sớm nhất trong các mô hình yếu tố tiềm ẩn xuất hiện độc lập trong các bối cảnh của khuyến nghị và phân tích giá trị thiếu. Cuối cùng, các phương pháp này đã được phát hiện lại như là lớp phương pháp hiệu quả nhất để thực hiện các khuyến nghị. Ngoài việc sử dụng trong các mô hình dựa trên yếu tố, các phương pháp giảm chiều cũng được sử dụng để giảm chiều của ma trận đánh giá nhằm cải thiện hiệu quả của sự tương đồng giữa người dùng với người dùng hoặc giữa mục với mục trong không gian đã giảm. Tuy nhiên, công việc về phân tích dữ liệu thiếu cũng liên quan đến tài liệu khuyến nghị. Các mô hình liên quan khác cho lọc hợp tác bao gồm việc sử dụng các mô hình khai thác dữ liệu như phân cụm, phân loại, hoặc khai thác mẫu liên kết 15241. Tình trạng thưa thớt là một vấn đề lớn trong các hệ thống như vậy, và nhiều hệ thống dựa trên đồ thị đã được thiết kế để giảm thiểu vấn đề thưa thớt. Các phương pháp dựa trên nội dung có liên quan chặt chẽ đến tài liệu truy xuất thông tin, trong đó các phương pháp truy xuất tương tự được sử dụng trong quá trình khuyến nghị. Các phương pháp phân loại văn bản cũng đặc biệt hữu ích trong quá trình khuyến nghị. Có nhiều trường hợp mà các phương pháp hợp tác và dựa trên nội dung không hữu ích trong việc đạt được các khuyến nghị có ý nghĩa do mức độ phức tạp cao và các ràng buộc trong không gian mục. Trong những trường hợp như vậy, các hệ thống gợi ý dựa trên kiến thức đặc biệt hữu ích. Các hệ thống gợi ý theo nhân khẩu được thảo luận, trong khi các hệ thống gợi ý dựa trên tiện ích được thảo luận trong. Các hệ thống gợi ý khác nhau hiệu quả hơn trong các loại thiết lập khác nhau. Việc đánh giá các hệ thống gợi ý là quan trọng để đánh giá hiệu quả của các thuật toán khác nhau. Các hệ thống lai có thể kết hợp các hệ thống gợi ý khác nhau để đạt được kết quả hiệu quả hơn. Hơn nữa, các phương pháp tổ hợp cũng có thể kết hợp các thuật toán cùng loại để đạt được kết quả hiệu quả hơn. Các mục hàng đầu của cuộc thi Giải thưởng Netflix, chẳng hạn như "The Ensemble" và "Bellkor's Pragmatic Chaos," đều là các phương pháp tổ hợp. Các hệ thống gợi ý yêu cầu các phương pháp chuyên biệt để làm cho chúng hiệu quả hơn trong nhiều kịch bản khác nhau. Một vấn đề lớn trong việc sử dụng hiệu quả các hệ thống như vậy là vấn đề khởi động lạnh, trong đó một số lượng đánh giá đủ không có sẵn vào đầu quá trình khuyến nghị. Do đó, các phương pháp chuyên biệt thường được sử dụng để giải quyết vấn đề này. Trong nhiều trường hợp, bối cảnh của khuyến nghị, chẳng hạn như vị trí, thời gian, hoặc thông tin xã hội, có thể cải thiện đáng kể quá trình khuyến nghị . Mỗi loại bối cảnh khác nhau này cũng đã được nghiên cứu riêng lẻ như một lĩnh vực riêng biệt.
Các hệ thống gợi ý có nhận thức về thời gian đã được nghiên cứu, trong khi các hệ thống gợi ý có nhận thức về vị trí cũng đã được thảo luận. Bối cảnh xã hội đặc biệt đa dạng vì nó cho phép một loạt các cài đặt vấn đề. Một người có thể gợi ý các nút hoặc liên kết trong các mạng xã hội, hoặc một người có thể gợi ý các sản phẩm với sự trợ giúp của các tín hiệu xã hội. Cài đặt đầu tiên trong số này có liên quan chặt chẽ đến lĩnh vực phân tích mạng xã hội. Mỗi vấn đề truyền thống về xếp hạng, phân loại nút và dự đoán liên kết có thể được xem như một vấn đề gợi ý cấu trúc trong các mạng xã hội. Hơn nữa, các hình thức gợi ý này hữu ích ngoài bối cảnh mạng xã hội. Thú vị là, các phương pháp như dự đoán liên kết cũng có thể được sử dụng cho gợi ý truyền thống bằng cách chuyển đổi các tương tác người dùng-sản phẩm thành một cấu trúc đồ thị hai phần. Một hình thức gợi ý xã hội khác là trường hợp mà các tín hiệu xã hội được sử dụng để thực hiện các gợi ý. Cấu trúc mạng xã hội cũng có thể được sử dụng trực tiếp trong bối cảnh của các ứng dụng tiếp thị lan truyền.
Vì các hệ thống gợi ý thường giúp việc bán hàng của các sản phẩm, nên những người bán các sản phẩm đó hoặc các đối thủ cạnh tranh của họ có động lực đáng kể để tấn công các hệ thống gợi ý bằng cách thao túng các đánh giá. Trong những trường hợp như vậy, các gợi ý khó có khả năng đạt chất lượng cao, và do đó không đáng tin cậy. Trong những năm gần đây, một lượng lớn nỗ lực đã được dành cho việc thiết kế các hệ thống gợi ý đáng tin cậy. Nhiều hệ thống gợi ý nhóm đã được thảo luận. Quyền riêng tư tiếp tục là một thách thức đáng kể đối với các hệ thống như vậy vì tính chất có nhiều chiều của dữ liệu. Nó đã được chỉ ra rằng, cách mà độ chiều có thể được tận dụng để thực hiện các cuộc tấn công quyền riêng tư trên các loại tập dữ liệu khác nhau.

Liên hệ

Tên

Email *

Thông báo *