You are on page 1of 39

Chương 1 Giới thiệu về hệ thống gợi ý

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ò là độ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 đưa ra phản hồi về những điều họ
thích hoặc không thích. Ví dụ: hãy xem xét kịch bản 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ỉ bằng một cú nhấp chuột đơn giản. Một
phương pháp điển hình để cung cấp phản hồi là ở dạng xếp hạng, trong đó
người dùng chọn các giá trị bằng số từ một hệ thống đánh giá cụ thể (ví dụ:
hệ thống xếp hạng năm sao) chỉ rõ lượt thích và lượt không thích của họ đối
với các mục khác nhau.
Các dạng phản hồi khác không hoàn toàn rõ ràng nhưng thậm chí còn dễ
thu thập hơn trong mô hình lấy Web làm trung tâm. Ví dụ: hành động đơn
giản là người dùng mua hoặc duyệt một mặt hàng có thể được xem là sự
chứng thực cho mặt hàng đó. Những hình thức phản hồi như vậy thường
được sử dụng bởi những người bán trực tuyến như Amazon.com và việc
thu thập loại dữ liệu này hoàn toàn dễ dàng xét theo yêu cầu công việc của
khách hàng. Ý tưởng cơ bản của hệ thống tư vấn là sử dụng các nguồn dữ
liệu khác nhau này để suy ra sở thích của khách hàng. Thực thể được cung
cấp đề xuất được gọi là người dùng và sản phẩm được đề xuất cũng được
gọi là một mặt hàng. Do đó, phân tích đề xuất thường dựa trên sự tương tác
trước đó giữa người dùng và sản phẩm, bởi vì sở thích và xu hướng trong
quá khứ thường là những chỉ báo tốt về các lựa chọn trong tương lai. Một
ngoại lệ đáng chú ý là trường hợp của hệ thống tư vấn dựa trên kiến thức,
trong đó các khuyến nghị được đề xuất trên cơ sở các yêu cầu do người
dùng chỉ định chứ không phải dựa trên lịch sử quá khứ của người dùng.

Vì vậy, nguyên tắc cơ bản làm nền tảng cho hoạt động của các thuật toán
đề xuất là gì? Nguyên tắc cơ bản của khuyến nghị là tồn tại sự phụ thuộc
đáng kể giữa hoạt động lấy người dùng và vật phẩm làm trung tâm. Ví dụ:
người dùng quan tâm đến phim tài liệu lịch sử có nhiều khả năng quan tâm
đến phim tài liệu lịch sử hoặc chương trình giáo dục khác hơn là phim hành
động. Trong nhiều trường hợp, các danh mục mặt hàng khác nhau có thể
cho thấy mối tương quan đáng kể, mối tương quan này có thể được tận
dụng để đưa ra đề xuất chính xác hơn. Ngoài ra, các phần phụ thuộc có thể
xuất hiện ở mức độ chi tiết hơn của các mục riêng lẻ thay vì các danh mục.
Những sự phụ thuộc này có thể được tìm hiểu theo cách dựa trên dữ liệu từ
ma trận xếp hạng và mô hình kết quả được sử dụng để đưa ra dự đoán cho
người dùng mục tiêu. Số lượng mục được xếp hạng có sẵn cho người dùng
càng lớn thì càng dễ dàng đưa ra dự đoán chắc chắn về hành vi trong tương
lai của người dùng. Nhiều mô hình học tập khác nhau có thể được sử dụng
để hoàn thành nhiệm vụ này. Ví dụ: hành vi mua hoặc xếp hạng chung của
[Type here]

nhiều người dùng khác nhau có thể được tận dụng để tạo nhóm gồm những
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 khuyến nghị cho
từng thành viên của các nhóm này.
Mô tả nói trên dựa trên một nhóm thuật toán đề xuất rất đơn giản, được
gọi là mô hình vùng lân cận. Họ này thuộc về một lớp mô hình rộng hơn,
được gọi là lọc cộng tác. Thuật ngữ "lọc cộng tác" đề cập đến việc sử dụng
xếp hạng từ nhiều người dùng theo cách cộng tác để dự đoán xếp hạng bị
thiếu. Trong thực tế, hệ thống gợi ý có thể phức tạp hơn và giàu dữ liệu
hơn, với nhiều loại dữ liệu phụ trợ khác nhau. Ví dụ: trong các hệ thống đề
xuất dựa trên nội dung, nội dung đóng vai trò chính trong quy trình đề xuất,
trong đó xếp hạng của người dùng và mô tả thuộc tính của các 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 thuộc tính) của
các mục mà họ đã xếp hạng hoặc truy cập trước đây. Một khuôn khổ khác
là khuôn khổ của các hệ thống dựa trên tri thức, trong đó người dùng xác
định mối quan tâm của họ một cách tương tác và đặc tả người dùng được
kết hợp với kiến thức miền để đưa ra khuyến nghị. Trong các mô hình nâng
cao, dữ liệu theo ngữ cảnh, chẳng hạn như thông tin thời gian, 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 cộng tác, dựa trên nội dung và dựa trên tri thức. Chúng ta
cũng sẽ thảo luận về cả mô hình cơ bản và mô hình nâng cao của hệ thống
gợi ý trong các lĩnh vực khác nhau. Chúng tôi sẽ nghiên cứu các khía cạnh
khác nhau về tính mạnh mẽ của hệ thống gợi ý, chẳng hạn như 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, nhiều mô hình
đánh giá và lai ghép cho các hệ tư vấn sẽ được nghiên cứu 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ề tính đa dạng
của công việc trong lĩnh vực hệ thống gợi ý, đồng thời liên hệ 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. Phần 1.2 thảo luận về các mục tiêu
chính của hệ thống tư vấn. Phần 1.3 sẽ giới thiệu các mô hình cơ bản và
phương pháp đánh giá được sử dụng trong các hệ tư vấn. Việc sử dụng hệ
thống gợi ý trong các miền dữ liệu khác nhau được thảo luận trong phần
1.4. Các mô hình nâng cao cho hệ thống tư vấn được thảo luận trong phần
1.5. Phần 1.6 thảo luận về kết luận và tóm tắt.
1.2 Mục tiêu của hệ thống gợi ý
Trước khi thảo luận về mục tiêu của hệ thống gợi ý, chúng tôi giới thiệu
những cách khác nhau để hình thành vấn đề gợi ý. Hai mô hình chính như
sau:
1. 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ị
xếp hạng cho sự kết hợp mục người dùng. Giả định rằng dữ liệu huấn
luyện có sẵn, cho biết sở thích của người dùng đối với các mục. Đối
với m người dùng và n mục, điều này tương ứng với ma trận mxn
không đầy đủ, trong đó các giá trị được chỉ định (hoặc được quan sát)
được sử dụng để huấn luyện. Các giá trị còn thiếu (hoặc không được
quan sát) được dự đoán bằng mô hình đào tạo này. Vấn đề này còn
đượ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ị được chỉ định không đầy đủ và các giá trị còn lại được dự đoán bởi
thuật toán học.
2. Phiên bản xếp hạng của bài toán: Trong thực tế, không cần thiết phải
dự đoán đánh giá của người dùng đối với các mặt hàng cụ thể để đưa
ra khuyến nghị cho người dùng. Thay vào đó, người bán có thể muốn
giới thiệu các mặt hàng top-k cho một người dùng cụ thể hoặc xác
định những người dùng top-k để nhắm mục tiêu cho một mặt hàng cụ
thể. Việc xác định các mục top-k phổ biến hơn việc xác định người
dùng top-k, mặc dù các phương pháp trong hai trường hợp hoàn toàn
giống nhau. Xuyên suốt cuốn sách này, chúng ta sẽ chỉ thảo luận về
việc xác định các mục top-k, bởi vì đây là cách thiết lập phổ biến hơn.
Bài toán này còn được gọi là bài toán đề xuất top-k và nó là công thức
xếp hạng của bài toán đề xuất.
Trong trường hợp thứ hai, giá trị tuyệt đối của xếp hạng dự đoán là không
quan trọng. Công thức đầu tiên tổng quát hơn, bởi vì giải pháp cho trường
hợp thứ hai có thể được rút ra bằng cách giải công thức đầu tiên cho các kết
hợp mục người dù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, việc thiết kế các phương pháp giải trực tiếp
phiên bản xếp hạng của bài toán sẽ dễ dàng và tự nhiên hơn. Những
phương pháp như vậy sẽ được thảo luận ở Chương 13.
Tăng doanh số bán sản phẩm là mục tiêu chính của hệ thống giới thiệu.
Suy cho cùng, hệ thống gợi ý được người bán sử dụng để tăng lợi nhuận
của họ. Bằng cách đề xuất các mục được lựa chọn cẩn thận cho người dùng,
hệ thống đề xuất sẽ thu hút sự chú ý của người dùng về các mục có liên
quan. Điều này làm tăng khối lượng bán hàng và lợi nhuận cho người bán.
Mặc dù mục tiêu chính của hệ thống đề xuất là tăng doanh thu cho người
bán, nhưng mục tiêu này thường đạt được theo những cách ít rõ ràng hơn so
với cái nhìn đầu tiên. Để đạt được mục tiêu rộng hơn là tăng doanh thu lấy
doanh nghiệp làm trung tâm, các mục tiêu hoạt động và kỹ thuật chung của
hệ thống gợi ý như sau:
1. Mức độ liên quan: Mục tiêu hoạt động rõ ràng nhất của hệ thống gợi ý
là đề xuất các mục có liên quan đến người dùng hiện tại. Người dùng
có nhiều khả năng tiêu thụ những mặt hàng mà họ thấy thú vị hơn.
Mặc dù mức độ liên quan là mục tiêu hoạt động chính của hệ thống tư
vấn nhưng nếu đứng riêng lẻ thì nó vẫn chưa đủ. Do đó, chúng tôi thảo
luận về một số mục tiêu phụ dưới đây, không quan trọng bằng mức độ
phù hợp nhưng vẫn đủ quan trọng để có tác động đáng kể.
2. Tính mới: Hệ thống gợi ý thực sự hữu ích khi mặt hàng được đề xuất
là thứ mà người dùng chưa từng thấy trước đây. Ví dụ: những bộ phim
nổi tiếng thuộc thể loại ưa thích sẽ hiếm khi mới lạ đối với người
dùng. Khuyến nghị lặp đi lặp lại các mặt hàng phổ biến cũng có thể
dẫn đến giảm tính đa dạng trong doanh số bán hàng [203].
3. Tình cờ: Một khái niệm liên quan là tình cờ [229], trong đó các mục
được đề xuất hơi bất ngờ, và do đó có một yếu tố khiêm tốn của khám
[Type here]

phá may mắn, trái ngược với các khuyến nghị hiển nhiên. Serendipity
khác với tính mới ở chỗ các đề xuất thực sự gây ngạc nhiên cho người
dùng, thay vì chỉ đơn giản là điều họ chưa biết trước đây. Thông
thường, có thể xảy ra trường hợp một người dùng cụ thể chỉ tiêu thụ
các mặt hàng thuộc một loại cụ thể, mặc dù mối quan tâm tiềm ẩn đối
với các mặt hàng thuộc loại khác có thể tồn tại mà bản thân người
dùng có thể thấy ngạc nhiên. Không giống như sự mới lạ, các phương
pháp tình cờ tập trung vào việc khám phá những đề xuất như vậy.
Ví dụ: nếu một nhà hàng Ấn Độ mới mở ở khu vực lân cận thì đề xuất
về nhà hàng đó cho người dùng thường ăn đồ ăn Ấn Độ là mới lạ
nhưng không nhất thiết phải là ngẫu nhiên. Mặt khác, khi cùng một
người dùng được giới thiệu món ăn Ethiopia và người dùng không biết
rằng món ăn đó có thể hấp dẫn cô ấy, thì lời đề xuất đó là tình cờ.
Serendipity có tác dụng phụ có lợi là tăng tính đa dạng trong bán hàng
hoặc bắt đầu một xu hướng mới được người dùng quan tâm. Việc tăng
cường khả năng tình cờ thường mang lại lợi ích lâu dài và chiến lược
cho người bán vì khả năng khám phá các lĩnh vực quan tâm hoàn toàn
mới. Mặt khác, các thuật toán cung cấp đề xuất ngẫu nhiên thường có
xu hướng đề xuất các mục không liên quan. Trong nhiều trường hợp,
lợi ích chiến lược và lâu dài của các phương pháp tình cờ sẽ lớn hơn
những bất lợi ngắn hạn này.
4. Tăng tính đa dạng của đề xuất: Hệ thống đề xuất thường đề xuất danh
sách các mục hàng đầu. Khi tất cả các mặt hàng được đề xuất này rất
giống nhau, sẽ làm tăng nguy cơ người dùng có thể không thích bất kỳ
mặt hàng nào trong số này. Mặt khác, khi danh sách được đề xuất chứa
các mục thuộc nhiều loại khác nhau, có nhiều khả năng người dùng sẽ
thích ít nhất một trong các mục này. 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 khi được đề xuất lặp đi
lặp lại các mặt hàng tương tự.
Bên cạnh 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 quy trình đề xuất cả từ góc độ của người dùng và người bán. Từ
quan điểm của người dùng, các đề xuất có thể giúp cải thiện sự hài lòng
chung của người dùng đối với trang Web. Ví dụ: người dùng liên tục nhận
được các đề xuất có liên quan từ Amazon.com sẽ hài lòng hơn với trải
nghiệm này và có nhiều khả năng sử dụng lại trang web hơn. Điều này có
thể cải thiện lòng trung thành của người dùng và tăng thêm doanh số bán
hàng tại trang web. Ở phía người bán, quy trình đề xuất có thể cung cấp
thông tin chi tiết về nhu cầu của người dùng và giúp tùy chỉnh trải nghiệm
người dùng hơn nữa. Cuối cùng, việc cung cấp cho người dùng lời giải
thích tại sao một mục cụ thể được đề xuất thường hữu ích. Ví dụ: trong
trường hợp của Netflix, các đề xuất được cung cấp cùng với các bộ phim đã
xem trước đó. Như chúng ta sẽ thấy sau, một số thuật toán đề xuất phù hợp
hơn để đưa ra lời giải thích so với các thuật toán khác.
Có rất nhiều loại sản phẩm được các hệ thống như vậy khuyên dùng.
Một số hệ thống giới thiệu, chẳng hạn như Facebook, không trực tiếp giới
thiệu sản phẩm. Thay vào đó, họ có thể đề xuất các kết nối xã hội mang lại
lợi ích gián tiếp cho trang web bằng cách tăng khả năng sử 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 về hệ thống tư vấn trong 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 rãi 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ó dưới
dạng hệ thống thương mại trong các bối cảnh vấn đề khác nhau.

Hệ thống đề xuất GroupLens


GroupLens là hệ thống đề xuất tiên phong, được xây dựng như một nguyên
mẫu nghiên cứu để đề xuất tin tức Usenet. Hệ thống thu thập xếp hạng từ
độc giả Usenet và sử dụng chúng để dự đoán xem những độc giả khác có
thích một bài báo hay không trước khi họ đọc nó.
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
cài đặt GroupLens l . Những ý tưởng chung do nhóm này phát triển cũng
được mở rộng sang các 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ần lượt là BookLens và MovieLens. Bên cạnh những
đóng góp tiên phong cho nghiên cứu lọc cộng tác, nhóm nghiên cứu
GroupLens còn nổi tiếng với việc 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 không dễ dàng có được các bộ dữ liệu để đo
điểm chuẩn. Các ví dụ nổi bật bao gồm ba bộ dữ liệu [688] từ hệ thống đề
xuất MovieLens. Các bộ dữ liệu này có kích thước tăng dần và chúng lần
lượt chứa 10 5 10 6 và 10 7 xếp hạng.

Hệ thống gợi ý của Amazon.com


Amazon.com [698] cũng là một trong những công ty tiên phong trong hệ
thống gợi ý, đặc biệt là trong môi trường thương mại. Trong những năm
đầu, đây là một trong số ít các nhà bán lẻ có tầm nhìn xa để 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 điện tử, doanh nghiệp này đã mở rộng sang hầu hết mọi dạng sản
phẩm. Do đó, Amazon.com hiện nay bán hầu như tất cả các loại sản phẩm
như sách, đĩa CD, phần mềm, đồ điện tử, v.v. Các đề xuất trên
Amazon.com được cung cấp trên cơ sở xếp hạng, hành vi mua và hành vi
duyệt web được cung cấp rõ ràng. Xếp hạng trên Amazon.com được chỉ
định theo thang điểm 5, với xếp hạng thấp nhất là I sao và xếp hạng cao
nhất là 5 sao. Dữ liệu mua và duyệt web cụ thể của khách hàng có thể được
thu thập dễ dàng khi người dùng đăng nhập bằng cơ chế xác thực tài khoản
được Amazon hỗ trợ. Các khuyến nghị cũng được cung cấp cho người dùng
trên trang Web chính của trang web, 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, lời giải thích cho các khuyến
nghị được cung cấp. Ví dụ: mối quan hệ của một mặt hàng được đề xuất
với các mặt hàng đã mua trước đó có thể được đưa vào giao diện hệ thống
gợi ý.
Hành vi mua hàng hoặc duyệt web của người dùng có thể được xem
dưới dạng một loại xếp hạng ngầm, trái ngược với xếp hạng rõ ràng do
người dùng chỉ định. Nhiều hệ thống thương mại cho phép linh hoạt đưa ra
các khuyến nghị trên cơ sở phản hồi rõ ràng và ngầm. Trên thực tế, một số
[Type here]

mô hình đã được thiết kế (xem phần 3.6.4.6 của Chương 3) để cùng giải
thích các phản hồi rõ ràng và ngầm trong quá trình đề xuất.

Hệ thống đề xuất phim Netflix


Netflix được thành lập như một công ty cho thuê đĩa video kỹ thuật số
(DVD) đặt hàng qua thư [690] các bộ phim và chương trình truyền hình,
công ty này cuối cùng đã được mở rộng sang phân phối trực tuyến. Ở thời
điểm 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 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á phim và chương trình
truyền hình theo 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ữ. Những xếp
hạng và hành động này sau đó được Netflix sử dụng để đưa ra đề xuất.
Netflix thực hiện rất tốt việc đưa ra lời giải thích cho các mục được đề xuất.
Nó cung cấp rõ ràng các ví dụ về đề xuất dựa trên các mục cụ thể mà người
dùng đã xem. Những thông tin như vậy cung cấp cho người dùng những
thông tin bổ sung thông tin để quyết định xem có nên xem một bộ phim cụ
thể hay không. Việc đưa ra những lời giải thích có ý nghĩa là điều quan
trọng để cung cấp cho người dùng hiểu 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 giúp người dùng có nhiều khả
năng thực hiện theo đề xuất hơn và thực sự cải thiện trải nghiệm 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à giữ chân khách hàng.
Netflix đã đóng góp đáng kể cho cộng đồng nghiên cứu nhờ Netflia;
Cuộc thi có thưởng. Cuộc thi này được thiết kế để cung cấp một diễn đàn
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ề xếp hạng phim Netflix đã được phát hành và nhiệm
vụ là dự đoán xếp hạng của các kết hợp mục cụ thể của người dùng. Với
mục đích này, Netflix đã cung cấp cả tập dữ liệu huấn luyện và tập dữ liệu
đủ điều kiện. Tập dữ liệu huấn luyện chứa 100.480.507 xếp hạng mà
480.189 người dùng đưa ra cho 17.770 phim. Tập huấn luyện bao gồm một
tập thăm dò nhỏ hơn chứa 1.408.395 xếp hạng. Tập thăm dò dựa trên các
xếp hạng gần đây hơn so với dữ liệu huấn luyện còn lại và nó tương tự về
mặt thống kê với phần của tập dữ liệu có xếp hạng ẩ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 xếp hạng). Lưu ý rằng bộ ba không chứa
xếp hạng thực tế mà chỉ ban giám khảo mới biết. Người dùng cần dự đoán
xếp hạng trong tập dữ liệu đủ điều kiện dựa trên các mô hình của dữ liệu
huấn luyện. Dự đoán này được ban giám khảo chấm điểm (hoặc một hệ
thống tự động tương đương) và người dùng được thông báo (liên tục) về kết
quả dự đoán chỉ trên một nửa dữ liệu đủ điều kiện được đặt trên bảng xếp
hạng. Một nửa tập dữ liệu đủ điều kiện này được gọi là tập câu hỏi. Nửa
còn lại được dùng làm tập kiểm tra để tính điểm cuối cùng và xác định
người đoạt giải. Đ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 phút cuối cùng. Hơn nữa, các thí sinh cũng không được
tiết lộ bộ ba nào trong phần thi vòng loại thuộc bộ câu đố và bộ ba nào
thuộc bộ bài 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 để làm cho thuật toán của họ phù hợp quá mức với tập kiểm tra. Các
vấn đề liên quan đến overfitting sẽ được mô tả trong Chương 7 về các thuật
toán đánh giá. Thật vậy, khuôn khổ xử lý bài dự thi của Netflix là một ví dụ
tuyệt vời về thiết kế đánh giá phù hợp của các thuật toán đề xuất.
Bộ thăm dò, bộ câu hỏi và bộ 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 việc cải tiến thuật toán
đề xuất riêng của 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 đề
xuất nổi tiếng, chẳng hạn như mô hình nhân tố tiềm ẩn, đã được cuộc thi
Netflix phổ biến rộng rãi. Cuộc thi Giải thưởng Netflix đáng chú ý vì có
nhiều đóng góp cho nghiên cứu đề xuất [71, 373].

Hệ thống cá nhân hóa Google Tin tức


Hệ thống cá nhân hóa Google Tin tức [697] có thể đề xuất tin tức cho người
dùng dựa trên lịch sử nhấp chuột của họ. Các lượt click được liên kết với
người dùng cụ thể dựa trên 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 được coi là các mục. Hành động
người dùng nhấp vào một bài báo có thể được xem là đánh giá tích cực cho
bài báo đó. Những xếp hạng như vậy có thể được xem là xếp hạng đơn
nhất, trong đó tồn tại một cơ chế để người dùng bày tỏ sự yêu thích của họ
đối với một mặt hàng, nhưng không tồn tại cơ chế nào để họ thể hiện sự
không thích của mình. Hơn nữa, xếp hạng là ngầm định vì chúng được suy
ra từ hành động của người dùng thay vì được người dùng chỉ định rõ ràng.
Tuy nhiên, các biến thể của phương pháp này cũng có thể được áp dụng
cho các trường hợp xếp hạng được chỉ định rõ ràng. Các thuật toán đề xuất
cộng tác được áp dụng cho các xếp hạng được thu thập để có thể đưa ra suy
luận về Bảng 1.1: Các ví dụ về các sản phẩm được các hệ thống giới thiệu
trong thế giới thực khác nhau đề xuất
Hệ thống Mục tiêu sản phẩm
Amazon.com Sách và các sản phẩm
[698] khác
Netflix [690] DVD, Video trực
tuyến
Tên hề [689] truyện cười
NhómLens Tin tức
[687]
PhimLens [688] Phim
cuối cùng.fm Âm nhạc
[692]
Google Tin tức Tin tức
[697]
Tìm kiếm của Quảng cáo
Google [696]
[Type here]

Facebook [691] Bạn bè, Quảng cáo


Pandora [693] Âm nhạc
YouTube [694] Video trực tuyến
Tripadvisor Sản phẩm du lịch
[695]
IMDb [699] Phim

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

Đề xuất kết bạn trên Facebook


Các trang mạng xã hội thường giới thiệu 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 [691] là một ví
dụ như vậy về một trang Web mạng xã hội. Loại đề xuất này có mục tiêu
hơi khác so với đề xuất sản phẩm. Mặc dù đề xuất sản phẩm trực tiếp làm
tăng lợi nhuận của người bán bằng cách tạo điều kiện thuận lợi cho việc
bán sản phẩm, nhưng việc tăng số lượng kết nối xã hội sẽ cải thiện trải
nghiệm của người dùng trên 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. Mạng xã hội phụ thuộc rất nhiều vào
sự phát triển của mạng để tăng doanh thu quảng cáo. Do đó, sự giới thiệu
của bạn bè (hoặc liên kết) tiềm năng sẽ giúp mạng lưới phát triển và kết nối
tốt hơn. Vấn đề này còn đượ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. Những hình thức khuyến nghị như vậy dựa trên mối quan
hệ mang tính cấu trúc hơn là dữ liệu xếp hạng. Do đó, bản chất của các
thuật toán cơ bản là hoàn toàn khác nhau. Vấn đề đề xuất 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 đề xuất được thảo luận trong Chương 13.

1.2.1 Phổ ứng dụng khuyến nghị


Sau đây, 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 dành riêng cho ứng dụng được hoàn thành bằng cách triển khai
các hệ thống đề xuất khác nhau. Tổng quan ngắn gọn về các sản phẩm được
đề xuất và mục tiêu đạt được của các hệ thống tư vấn 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 nhiều sản phẩm khác nhau, bao gồm
sách, phim, video, du lịch cũng như các hàng hóa và dịch vụ khác. Khả
năng ứng dụng rộng rãi hơn của hệ thống gợi ý cho các ứng dụng thương
mại điện tử được thảo luận trong [530]. Tuy nhiên, hệ thống gợi ý đã mở
rộng ra ngoài lĩnh vực gợi ý sản phẩm truyền thống. Đáng chú ý là một số
hệ thống trong Bảng 1.1 có thể không đề xuất các sản phẩm cụ thể. Một ví
dụ là ứng dụng tìm kiếm Google, ứng dụng này có thể quảng cáo sản phẩm
cùng với kết quả tìm kiếm của chúng. Đây là lĩnh vực quảng cáo bằng máy
tính, vốn là một lĩnh vực riêng biệt nhưng vẫn có liên quan chặt chẽ với 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 giới thiệu bạn bè và các trang tuyển dụng
trực tuyến giới thiệu nhà tuyển dụng và người tìm việc với nhau. Hệ thống
cuối cùng trong số này còn được gọi là hệ thống tư vấn tương hỗ. Mô hình
của một số thuật toán đề xuất này khá khác so với mô hình của các hệ thống
đề xuất truyền thống. Cuốn sách này sẽ nghiên cứu chi tiết nhiều biến thể
này.

1.3 Các mô hình cơ bản của hệ thống tư vấn


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

1.3.1 Mô hình lọc cộng tác


Các mô hình lọc cộng tác sử dụng sức mạnh cộng tác của xếp hạng do
nhiều người dùng cung cấp để đưa ra đề xuất. Thách thức chính trong việc
thiết kế các phương pháp lọc cộng tác là các ma trận xếp hạng cơ bản còn
thưa thớt. Hãy xem xét một ví dụ về ứng dụng phim trong đó người dùng
chỉ định xếp hạng cho biết họ thích hoặc không thích một bộ phim cụ thể.
Hầu hết người dùng sẽ chỉ xem một phần nhỏ trong kho phim rộng lớn có
sẵn. Kết quả là, hầu hết các xếp hạng đều không được chỉ định. Xếp hạng
được chỉ định cũng được gọi là xếp hạng được quan sát. Xuyên suốt cuốn
sách này, các thuật ngữ “được chỉ định” và “được quan sát” sẽ được sử
dụng theo cách có thể hoán đổi cho nhau. Xếp hạng không được chỉ định sẽ
được coi là "không được quan sát" hoặc bị thiếu.
Ý tưởng cơ bản của phương pháp lọc cộng tác là những xếp hạng không
xác định này có thể được quy cho vì xếp hạng được quan sát thường có mối
tương quan cao giữa nhiều người dùng và mục khác nhau. Ví dụ, hãy xem
xét hai người dùng tên Alice và Bob, những người có sở thích rất giống
[Type here]

nhau. Nếu xếp hạng mà cả hai đều đã chỉ định rất giống nhau thì sự giống
nhau của chúng có thể được xác định bằng thuật toán cơ bản. Trong những
trường hợp như vậy, rất có thể các xếp hạng mà chỉ một trong số chúng xác
định một giá trị cũng có khả năng tương tự nhau. Sự giống nhau này có thể
được sử dụng để đưa ra suy luận về các giá trị được chỉ định không đầy đủ.
Hầu hết các mô hình lọc cộng tác đều tập trung vào việc tận dụng mối
tương quan giữa các mục hoặc mối 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 hóa được thiết kế cẩn thận
để tạo ra một mô hình đào tạo gần giống nhau.
cách trình phân loại tạo mô hình huấn luyện từ dữ liệu được dán nhãn. Sau
đó, mô hình này được sử dụng để xác định các giá trị còn thiếu trong ma
trận, giống như cách mà bộ phân loại áp đặt 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 cộng 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:
1. Phương pháp dựa trên bộ nhớ: Phương pháp dựa trên bộ nhớ còn được
gọi là thuật toán lọc cộng tác dựa trên vùng lân cận. Đây là một trong
những thuật toán lọc cộng tác sớm nhất, trong đó xếp hạng của các kết
hợp mục người dùng được dự đoán dựa trên các vùng lân cận của
chúng. Những vùng lân cận này có thể được xác định theo một trong
hai cách:

• Lọc cộng tác dựa trên người dùng: Trong trường hợp này, xếp
hạng được cung cấp bởi những người dùng có cùng quan điểm của
người dùng mục tiêu A được sử dụng để đưa ra đề xuất cho A. Do
đó, ý tưởng cơ bản là xác định những người dùng tương tự như
mục tiêu người dùng A và đề xuất xếp hạng cho xếp hạng không
được quan sát của A bằng cách tính giá trị trung bình có trọng số
của xếp hạng của nhóm ngang hàng này. Do đó, nếu Alice và Bob
đã xếp hạng phim theo cách tương tự trong quá khứ thì người ta có
thể sử dụng xếp hạng được quan sát của Alice trên phim Kẻ hủy
diệt để dự đoán xếp hạng không được quan sát của Bob trên bộ
phim này. Nói chung, k người dùng giống Bob nhất có thể được
sử dụng để đưa ra dự đoán xếp hạng 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 xếp hạng để tìm ra
những người dùng tương tự.
• Lọc cộng tác dựa trên mục: Để đưa ra dự đoán xếp hạng cho mục
tiêu B của người dùng A, bước đầu tiên là xác định tập S gồm các
mục giống nhất với mục tiêu B. Xếp hạng trong bộ mục S, là do A
chỉ định, được sử dụng để dự đoán liệu người dùng A có thích
mục B hay không. Do đó, xếp hạng của Bob trên 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 xếp hạng 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 xếp hạng để
khám phá các mục tương tự.
Ưu điểm của các kỹ thuật dựa trên trí nhớ là chúng dễ thực hiện và các
khuyến nghị thu được 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 xếp hạng thưa
thớt. Ví dụ: có thể khó tìm được những người dùng đủ giống Bob,
người đã xếp hạng Gladiator. Trong những trường hợp như vậy, thật
khó để dự đoán chính xác đánh giá của Bob về Gladiator. Nói cách
khác, những phương pháp như vậy có thể thiếu khả năng bao quát đầy
đủ các dự đoán xếp hạng. Tuy nhiên, việc thiếu phạm vi phủ sóng
thường không phải là vấn đề khi chỉ yêu cầu các mục top-k. Các
phương pháp dựa trên bộ nhớ sẽ được thảo luận chi tiết trong Chương
2.
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, 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ác mô hình dự đoán. Trong trường hợp mô hình được tham
số hóa, các tham số của mô hình này sẽ được học trong bối cảnh
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ư vậy bao gồm cây quyết định, mô hình dựa trên quy tắc, phương
pháp Bayes và mô hình nhân tố tiềm ẩn. Nhiều phương pháp trong số
này, chẳng hạn như mô hình nhân tố tiềm ẩn, có mức độ bao phủ cao
ngay cả đối với các ma trận xếp hạng thưa thớt. Các thuật toán lọc
cộng 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 cộng 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 phỏng
đoán và không hoạt động tốt trong mọi cài đặt.

Hình 1.1: Ví dụ về xếp hạng theo khoảng 5 điểm

Hình 1.2: Ví dụ về xếp hạng thứ tự được sử dụng trong đánh giá khóa học
của Đại học Stanford

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ẽ chỉ ra rằng một số biến thể của phương pháp dựa trên
vùng lân cận có thể được biểu diễn chính thức dưới dạng mô hình dựa trên
hồi quy. Các mô hình yếu tố tiềm ẩn đã được phổ biến rộng rãi trong những
năm sau đó nhờ cuộc thi Giải thưởng Netflix, mặc dù các thuật toán tương
tự đã được đề xuất sớm hơn nhiều trong bối cảnh các tập dữ liệu (chung)
không đầy đủ [24]. Gần đây, người ta đã chứng minh rằng một số kết hợp
phương pháp dựa trên bộ nhớ và dựa trên mô hình [309] mang lại kết quả
rất chính xác.

1.3.1.1 Các loại xếp hạng


Việc thiết kế các thuật toán đề xuất bị ảnh hưởng bởi hệ thống được sử
dụng để theo dõi xếp hạng. Xếp hạng thường được chỉ định trên thang đo
cho biết mức độ thích hoặc không thích cụ thể của mặt hàng đó. Xếp hạng
có thể là các giá trị liên tục, chẳng hạn như trong trường hợp công cụ đề
xuất trò đùa Jester [228, 689], trong đó xếp hạng có thể nhận bất kỳ giá trị
nào từ -10 đến 10. Tuy nhiên, điều này tương đối hiếm. Thông thường, việc
xếp hạng dựa trên khoảng thời gian, trong đó một tập hợp các số thứ tự
riêng biệt được sử dụng để định lượng mức độ thích hoặc không thích. Xếp
hạng như vậy được gọi là xếp hạng dựa trên khoảng thời gian. Ví dụ: thang
đánh giá 5 điểm có thể được rút ra từ tập hợp {—2, —1, 0, 1, 2}, trong đó
xếp hạng —2 biểu thị sự không thích cực độ và xếp hạng 2 biểu thị sự yêu
thích mạnh mẽ đến mục đó. Các hệ thống khác có thể rút ra xếp hạng từ tập
hợp {1, 2, 3, 4, 5}.
Số lượng xếp hạng có thể có có thể khác nhau tùy theo hệ thống hiện có.
Việc sử dụng xếp hạng 5 điểm, 7 điểm và 10 điểm đặc biệt phổ biến. Hệ
thống xếp hạng 5 sao, được minh họa trong Hình 1.1, là một ví dụ về xếp
hạng theo khoảng thời gian. Cùng với mỗi xếp hạng có thể có, chúng tôi đã
chỉ ra cách giải thích ngữ nghĩa về mức độ quan tâm của người dùng. Cách
giải thích này có thể hơi khác nhau tùy theo những người bán khác nhau,
chẳng hạn như Amazon hoặc Netflix. Ví dụ: Netflix sử dụng hệ thống xếp
hạng 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ó". Vì vậy, Netflix có ba xếp hạng
thuận lợi và hai xếp hạng không thuận lợi trên Netflix, dẫn đến thang đánh
giá không cân bằng. Trong một số trường hợp, có thể có số lượng xếp hạng
chẵn và xếp hạng 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.
Người ta cũng có thể sử dụng các giá trị phân loại theo 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 xếp hạng như vậy được gọi là xếp
hạng thứ tự và thuật ngữ này bắt nguồn từ khái niệm thuộc tính thứ tự. Một
ví dụ về xếp hạng thứ tự, đượ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 xếp hạng nhị
phân, người dùng chỉ có thể thể hiện thích hoặc không thích đối với mặt
hàng đó và không có gì khác. Ví dụ: xếp hạng 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 là giá trị 0-1.
Một trường hợp đặc biệt của xếp hạng là xếp hạng đơn nhất, trong đó có cơ
chế để người dùng chỉ định mức độ thích đối với một mục nhưng không có
cơ chế chỉ định mức không thích. Xếp hạng đơn nhất đặc biệt phổ biến, đặc
biệt trong trường hợp tập dữ liệu phản hồi ngầm [259, 260, 457]. Trong
những trường hợp này, sở thích của khách hàng xuất phát từ hoạt động của
họ chứ không phải từ xếp hạng được chỉ định rõ ràng của họ. Ví dụ: hành
vi mua hàng của khách hàng có thể được chuyển đổi thành xếp hạng đơn
nhất. Khi một khách hàng mua một mặt hàng, nó có thể được xem như một
sự ưa thích đối với mặt hàng đó. Tuy nhiên, hành động không mua một
món đồ từ vô số khả năng không phải lúc nào cũng biểu thị sự không thích.
Tương tự, nhiều mạng xã hội, chẳng hạn như Facebook, sử dụng nút
"thích", cung cấp khả năng thể hiện sự thích thú đối với một mục. Tuy
nhiên, không có cơ chế xác định mức độ không thích đối với một mặt hàng.
Cài đặt phản hồi ngầm có thể được xem như là tương tự hoàn thành ma trận
của bài toán học không được gắn nhãn tích cực (PU) trong phân loại dữ liệu
[259].

Ví dụ về xếp hạng rõ ràng và ngầm định


Một ví dụ định lượng về xếp hạng 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 UI . . . U6,
và 6 phim có tựa đề cụ thể. Xếp hạng cao hơn cho thấy phản hồi tích cực
hơn trong Hình 1.3(a). Các mục còn thiếu tương ứng với các tùy chọn
không được chỉ định. Ví dụ của hình này đại diện cho một ví dụ về đồ chơi
nhỏ. Nói chung, các xếp hạng có thể được biểu diễn dưới dạng ma trận mn,
trong đó m và n thường rất lớn và có thể nằm trong phạm vi hàng trăm
nghìn. Mặc dù ví dụ cụ thể này sử dụng ma trận 6 >< 6, các giá trị của m và
n thường không giống nhau trong các tình huống thực tế. Ma trận xếp hạng
đôi khi được gọi là ma trận tiện ích, mặc dù cả hai có thể không phải lúc
nào cũng giống nhau. Nói một cách chính xác, khi tiện ích đề cập đến số
tiền lợi nhuận, thì tiện ích của sự kết hợp hạng mục người dùng đề cập đến
số tiền lợi nhuận phát sinh bằng cách giới thiệu mặt hàng đó cho người
dùng cụ thể. Mặc dù ma trận tiện ích thường được đặt giống với ma trận
xếp hạng, nhưng ứng dụng có thể chuyển đổi rõ ràng xếp hạng thành giá trị
tiện ích dựa trên tiêu chí của từng miền cụ thể. 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 xếp
hạng. 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 đều hoạt động trực tiếp với ma trận
xếp hạng.
Một ví dụ về ma trận xếp hạng đơn nguyên được minh họa trong Hình
1.3(b). Đối với các trường hợp xếp hạng là đơn nguyên, ma trận được gọi là
ma trận tiện ích ưu tiên tích cực vì nó chỉ cho phép đặc tả các ưu tiên tích
cực. Hai ma trận trong Hình 1.3 có cùng một tập hợp các mục được quan
sát nhưng chúng cung cấp những hiểu biết rất khác nhau. Ví dụ: UI và U3
của người dùng rất khác nhau trong Hình 1.3(a) vì chúng có các xếp hạng
rất khác nhau cho các mục nhập đượ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 đã bày tỏ sự ưa thích tích cực đối với cùng một mặt hàng.
Tiện ích dựa trên xếp hạng cung cấp một cách để người dùng thể hiện sở
thích tiêu cực đối với các mục. Ví dụ: giao diện người dùng không thích bộ
phim Đấu sĩ trong Hình 1.3(a). Không có cơ chế nào để xác định điều này
trong ma trận tiện ích ưu tiên tích cực của Hình 1.3(b) ngoài
(a) Xếp hạng theo thứ tự (b) Xếp hạng đơn nhất
1.4. 17
Hình 1.3: Ví dụ về ma trận tiện ích

một mục bị thiếu tương đối mơ hồ. Nói cách khác, ma trận trong Hình
1.3(b) ít biểu cảm hơn. Trong khi Hình 1.3(b) cung cấp một ví dụ về ma
trận nhị phân, các phần tử khác 0 có thể có giá trị dương tùy ý. Ví dụ:
chúng có thể tương ứng với số lượng mặt hàng được mua bởi những người
dùng khác nhau. Nói chung, ma trận một ngôi được tạo bởi hành động của
người dùng chẳng hạn như mua một mặt hàng và do đó còn được gọi là ma
trận phản hồi ngầm.
Xếp hạng đơn nhất có ảnh hưởng đáng kể đến thuật toán đề xuất hiện tại
vì không có thông tin nào về việc người dùng có không thích một mặt hàng
hay không. Trong trường hợp ma trận một ngôi, người ta thường khuyên
[260] thực hiện phân tích một cách đơn giản bằng cách coi các phần tử còn
thiếu là O trong giai đoạn đầu. Tuy nhiên, giá trị dự đoán cuối cùng của
thuật toán học có thể lớn hơn 0 rất nhiều, đặc biệt nếu mục đó phù hợp với
sở thích của người dùng. Do đó, các mục được đề xuất 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. Trong thực
tế, nếu các mục bị thiếu không được thay thế bằng O thì có thể xảy ra hiện
tượng trang bị quá mức đáng kể. Kiểu trang bị quá mức này là sự giả tạo
của thực tế là thường không có đủ mức độ phân biệt giữa các giá trị xếp
hạng được quan sát khác nhau. Trong ma trận phản hồi rõ ràng, xếp hạng
tương ứng với các ưu tiên (có tính phân biệt cao), trong khi ở ma trận phản
hồi ngầm, xếp hạng tương ứng với độ tin cậy (ít phân biệt đối xử). Trong
chương sau, chúng tôi sẽ cung cấp một ví dụ cụ thể về việc trang bị quá
mức với ma trận phản hồi ngầm khi các mục bị thiếu không được coi là số
0 (xem phần 3.6.6.2 của Chương 3).
Việc thay thế trước các xếp hạng bị thiếu không được khuyến nghị trong
các ma trận xếp hạng rõ ràng. Trong ma trận xếp hạng rõ ràng có cả lượt
thích và lượt không thích, việc thay thế các mục bị thiếu bằng bất kỳ giá trị
nào (chẳng hạn như 0 hoặc cột hàng/trung bình dữ liệu) luôn dẫn đến mức
độ sai lệch đáng kể trong phân tích. Trong trường hợp đơn nhất, việc thay
thế các mục bị thiếu bằng O cũng dẫn đến một số sai lệch [457, 467, 468],
mặc dù nó thường 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 hàng, là người dùng sẽ không mua nhiều nhất.
của các mặt hàng. Người ta thường sẵn sàng chấp nhận sự thiên vị này
trong trường hợp đơn nhất, bởi vì sự thay thế giảm đáng kể lượng trang bị
quá mức đáng kể. Ngoài ra còn có một số hiệu ứng tính toán thú vị của
những lựa chọn như vậy. Những sự đánh đổi này được thảo luận trong
Chương 2 và 3.
1.3.1.2 Mối quan hệ với phân tích giá trị bị thiếu
Các mô hình lọc cộng tác có liên quan chặt chẽ đến việc phân tích giá trị
còn thiếu. Các tài liệu truyền thống về phân tích giá trị còn thiếu nghiên
cứu vấn đề gán các mục trong một ma trận dữ liệu được chỉ định không đầy
đủ. Lọc cộng tác có thể được xem như một trường hợp đặc biệt (khó) của
bài toán này trong đó ma trận dữ liệu cơ bản rất lớn và thưa thớt. Có thể tìm
thấy thảo luận chi tiết về các phương pháp phân tích giá trị còn thiếu trong
tài liệu thống kê trong [362]. Nhiều phương pháp trong số này cũng có thể
được sử dụng cho các hệ thống tư vấn, mặc dù một số trong số chúng có
thể yêu cầu những điều chỉnh chuyên biệt cho các ma trận rất lớn và thưa
thớt. Trên thực tế, một số loại mô hình gần đây dành cho hệ thống tư vấn,
chẳng hạn như mô hình nhân tố tiềm ẩn, đã được nghiên cứu trước đó trong
bối cảnh phân tích giá trị còn thiếu [24]. 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 ý [252, 309, 313, 500,
517, 525]. Nói chung, nhiều phương pháp ước lượng giá trị thiếu cổ điển
[362] cũng có thể được sử dụng để lọc cộng tác.

1.3.1.3 Lọc cộng tác như một sự tổng quát hóa của mô hình phân loại và
hồi quy
Các phương pháp lọc cộng tác có thể được xem như là sự khái quát hóa của
mô hình phân loại và hồi quy. Trong các bài toán mô hình phân loại và hồi
quy, lớp/biến phụ thuộc có thể được xem như một thuộc tính bị thiếu các
giá trị. Các cột khác được coi là đặc điểm/biến độc lập. Vấn đề lọc cộng tác
1.4. 19
có thể được xem như một sự khái quát hóa của khung này vì bất kỳ cột nào
cũng được phép thiếu các giá trị thay vì (chỉ) biến lớp. Trong vấn đề
khuyến nghị, có sự phân biệt rõ ràng
1.

không tồn tại giữa các biến lớp và biến đặc trưng vì mỗi đặc tính đóng vai
trò kép là biến phụ thuộc và biến độc lập. Sự khác biệt này tồn tại trong vấn
đề phân loại chỉ vì các mục bị thiếu được 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 cộng tác vì bất kỳ hàng nào cũng có thể chứa các mục bị thiếu. Do đó,
sẽ có ý nghĩa hơn khi nói về các mục huấn luyện và kiểm tra trong lọc cộng
tác hơn là các hàng huấn luyện và kiểm tra. Lọc cộng tác là sự tổng quát
hóa của mô hình phân loại/hồi quy trong đó dự đoán được thực hiện theo
kiểu đầu vào thay vì kiểu theo hàng. Cần ghi nhớ mối quan hệ giữa mô
hình phân loại/hồi quy và lọc cộng tác vì nhiều nguyên tắc về phương pháp
mô hình phân loại và hồi quy có thể được khái quát hóa cho các hệ thống
đề xuất. Mối quan hệ giữa hai vấn đề được minh họa trong Hình 1.4. Hình
này đặc biệt hữu ích trong việc liên hệ giữa lọc cộng 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ứ nơi nào những điểm
tương đồng giữa hai vấn đề này được tận dụng theo một cách nào đó để
phát triển thuật toán hoặc lý thuyết.
Bài toán hoàn thiện ma trận cũng có một số đặc điểm với cài đặt quy nạp
trong phân loại và hồi quy. Trong cài đặt chuyển đổi, các trường hợp kiểm
tra cũng được đưa vào quá trình đào tạo (thường sử dụng thuật toán bán
giám sát) và thường 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 đào tạo. Mặt khác, các mô hình trong đó có thể dễ dàng
đưa ra dự đoán cho các trường hợp mới được gọi là mô hình quy nạp. Ví
dụ, một mô hình Bayes đơn giản trong phân loại vốn có tính chất quy nạp
vì người ta có thể dễ dàng sử dụng nó để dự đoán nhãn của một thể hiện
thử nghiệm mà các đặc điểm chưa được biết đến tại thời điểm xây dựng mô
hình Bayes.
Cài đặt để hoàn thành ma trận vốn có tính chất chuyển nạp 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 xếp
hạng m >< n R và nhiều mô hình không thể dễ dàng dự đoán xếp hạng cho
người dùng và/hoặc hạng mục ngoài mẫu. Ví dụ: nếu John được thêm vào
ma trận xếp hạng (với nhiều xếp hạng được chỉ định) sau khi mô hình lọc
cộng tác đã được xây dựng, nhiều phương pháp sẵn có 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 cộng
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ế theo mô hình quy nạp trong đó xếp hạng có thể
được dự đoán cho những người dùng và/hoặc vật phẩm 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 gợi ý. Thuật ngữ "nội dung" đề cập đến những
mô tả này. Trong phương pháp dựa trên nội dung, xếp hạng và hành vi mua
hàng 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 tình huống trong đó John đã đánh giá cao bộ phim
Kẻ hủy diệt nhưng chúng ta không có quyền truy cập vào xếp hạng của
những người dùng khác. Do đó, các phương pháp lọc cộng tác bị loại trừ.
Tuy nhiên, phần mô tả mục của Kẻ hủy diệt chứa các từ khóa thể loại tương
tự như các phim khoa học viễn tưởng khác, chẳng hạn như Người ngoài
hành tinh và Kẻ săn mồi. Trong những trường hợp như vậy, những bộ phim
này có thể được giới thiệu cho John.
Trong các phương pháp dựa trên nội dung, các mô tả mục, được gắn
nhãn xếp hạng, được sử dụng làm dữ liệu đào tạo để tạo ra vấn đề phân loại
hoặc mô hình hồi quy dành riêng cho người dùng. Đối với mỗi người dùng,
tài liệu đào tạo tương ứng với mô tả về các mặt hàng họ đã mua hoặc đánh
giá. Biến loại (hoặc phụ thuộc) tương ứng với xếp hạng hoặc hành vi mua
hàng được chỉ định. Các tài liệu đào tạo này được sử dụng để tạo mô hình
phân loại hoặc hồi quy dành riêng cho người dùng hiện tại (hoặc người
dùng đang hoạt động). Mô hình dành riêng cho người dùng này được sử
dụng để dự đoán liệu cá nhân tương ứng có thích một mặt hàng mà không
xác định được xếp hạng hoặc hành vi mua của cô ấy hay không.
Các phương pháp dựa trên nội dung có một số ưu điểm trong việc đưa ra
đề xuất cho các mặt hàng mới khi không có đủ dữ liệu xếp hạng cho mặt
hàng đó. Điều này là do các mặt hàng khác có thuộc tính tương tự có thể đã
được người dùng đang hoạt động xếp hạng. Do đó, mô hình được giám sát
sẽ có thể tận dụng các xếp hạng này kết hợp với các thuộc tính của mặt
hàng để đưa ra đề xuất ngay cả khi không có lịch sử xếp hạng cho mặt hàng
đó. 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, phương pháp dựa trên nội dung cung cấp các
đề xuất rõ ràng nhờ sử dụng từ khóa hoặc nội dung. Ví dụ: nếu người
dùng chưa bao giờ sử dụng một mặt hàng có một bộ từ khóa cụ thể thì
mặt hàng đó sẽ không có cơ hội được đề xuất. Điều này là do mô hình
được xây dựng dành riêng cho người dùng hiện tại và kiến thức cộng
đồng từ những người dùng tương tự không được tận dụng. Hiện tượng
này có xu hướng làm giảm tính đa dạng của các mặt hàng được đề
xuất, đ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 có hiệu quả trong việc
cung cấp đề xuất cho các mục mới nhưng chúng lại không hiệu quả
trong việc cung cấp đề xuất cho người dùng mới. Điều này là do mô
hình đào tạo cho người dùng mục tiêu cần sử dụng lịch sử xếp hạng
của cô ấy. Trên thực tế, điều quan trọng là phải có sẵn một số lượng
1.4. 21
lớn xếp hạng cho người dùng mục tiêu để đưa ra những dự đoán chắc
chắn mà không cần trang bị quá mức.
Do đó, các phương pháp dựa trên nội dung có sự cân bằng khác với các hệ
thống lọc cộng tác.
Mặc dù mô tả nói trên cung cấp cách nhìn dựa trên học tập thông thường
về các phương pháp dựa trên nội dung, đôi khi một cái nhìn rộng hơn về
các phương pháp này cũng được sử dụng. Ví dụ: người dùng có thể chỉ
định các từ khóa có liên quan trong hồ sơ của riêng họ. Những hồ sơ này có
thể được kết hợp với mô tả mặt hàng để đưa ra đề xuất. Cách tiếp cận như
vậy không sử dụng xếp hạng trong quá trình đề xuất và do đó nó rất hữu ích
trong các tình huống bắt đầu từ đầu. Tuy nhiên, những phương pháp như
vậy thường được xem như một lớp riêng biệt của hệ thống tư vấn, được gọi
là hệ thống dựa trên tri thức, bởi vì các phép đo tương tự thường dựa trên
kiến thức về miền. Các hệ thống tư vấn dựa trên kiến thức thường được coi
là có liên quan chặt chẽ với các hệ thống tư vấn dựa trên nội dung và đôi
khi người ta đặt câu hỏi liệu có tồn tại ranh giới rõ ràng giữa hai loại
phương pháp hay không [558]. Các phương pháp cho hệ thống tư vấn dựa
trên nội dung được thảo luận trong Chương 4.

1.3.3 Hệ thống gợi ý dựa trên kiến thứ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 những
mặt hàng không được mua thường xuyên. Ví dụ bao gồm các mặt hàng 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ó đủ xếp hạng
cho quá trình đề xuất. Vì các mặt hàng hiếm khi được mua và với các loại
tùy chọn chi tiết khác nhau nên rất khó để có đủ số lượng xếp hạng cho một
phiên bản cụ thể (tức là sự kết hợp các tùy chọn) của mặt hàng đó. Vấn đề
này cũng gặp phải trong bối cảnh của vấn đề khởi động nguội, khi không
có đủ xếp hạng cho quy trình đề xuất. Hơn nữa, bản chất sở thích của người
tiêu dùng có thể thay đổi theo thời gian khi giao dịch với những mặt hàng
đó. Ví dụ: kiểu dáng của một chiếc ô tô có thể phát triển đáng kể trong một
vài năm, do đó sở thích có thể cho thấy sự tiến hóa tương ứng. Trong các
trường hợp khác, có thể khó nắm bắt được đầy đủ sự quan tâm của người
dùng bằng dữ liệu lịch sử như xếp hạng. Một mặt hàng cụ thể có thể có các
thuộc tính được liên kết với nó tương ứng với các thuộc tính khác nhau của
nó và người dùng có thể chỉ quan tâm đến các mặt hàng có thuộc tính cụ
thể. Ví dụ: ô tô có thể có nhiều kiểu dáng, mẫu mã, 1.

Bảng 1.2: Mục tiêu khái niệm của các hệ thống tư vấn khác nhau
Tiếp cận Mục tiêu khái niệm Đầu vào
hợp tác Đưa ra cho tôi các đề xuất dựa trên phương Xếp hạng của
pháp hợp tác nhằm nâng cao xếp hạng và người dùng +
hành động của đồng nghiệp/bản thân tôi. xếp hạng của
cộng đồng
Dựa trên Đưa ra cho tôi các đề xuất dựa trên nội Xếp hạng
nội dung dung (thuộc tính) mà tôi ưa thích trong các của người
xếp hạng và hành động trước đây của dùng -k
mình. thuộc tính
mục
Dựa trên Đưa ra đề xuất dựa trên thông số kỹ thuật Đặc tả người
kiến thức rõ ràng của tôi về loại nội dung (thuộc tính) dùng -F
mà tôi muốn. thuộc tính
mục + kiến
thức miền

VÍ DỤ VỀ GIAO DIỆN DỰA TRÊN Ràng buộc GIẢ


THUYẾT ĐỂ MUA NHÀ (constraint-example.com)
I ĐIỂM VÀO I
MUỐN MUA NHÀ ĐÁP ỨNG CÁC YÊU CẦU SAU:

GỬI TÌM
KIẾM
Hình 1.5: Một ví dụ giả định về giao diện người dùng ban đầu dành cho
công cụ đề xuất dựa trên ràng buộc)

màu sắc, tùy chọn động cơ, tùy chọn nội thất cũng như sở thích của người
dùng có thể được điều chỉnh bởi sự kết hợp rất cụ thể của các tùy chọn này.
Do đó, trong những trường hợp này, miền hạng mục có xu hướng phức tạp
về các thuộc tính đa dạng của nó và khó có thể liên kết đủ xếp hạng với số
lượng lớn các kết hợp có sẵn.
Những trường hợp như vậy có thể được giải quyết bằng hệ thống tư vấn
dựa trên kiến thức, trong đó xếp hạng không được sử dụng cho mục đích
khuyến nghị. Đúng hơn, quy trình đề xuất được thực hiện trên cơ sở những
điểm tương đồng giữa yêu cầu của khách hàng và mô tả mặt hàng hoặc việc
sử dụng các ràng buộc xác định yêu cầu của người dùng. Quá trình này
được tạo điều kiện thuận lợi bằng việc sử dụng cơ sở tri thức, chứa dữ liệu
1.4. 23
về các quy tắc và hàm tương tự để sử dụng trong quá trình truy xuất. Trên
thực tế, nền tảng kiến thức rất quan trọng đối với hoạt động hiệu quả của
các phương pháp này nên phương pháp này lấy tên từ thực tế này. Việc đặc
tả rõ ràng các yêu cầu dẫn đến khả năng kiểm soát tốt hơn của người dùng
đối với quá trình đề xuất. Trong cả hệ thống cộng tác và dựa trên nội dung,
các đề xuất đều được quyết định hoàn toàn bởi hành động/xếp hạng trong
quá khứ của người dùng, hành động/xếp hạng của các đồng nghiệp của cô
ấy hoặc kết hợp cả hai. Các hệ thống dựa trên tri thức độc đáo ở chỗ chúng
cho phép người dùng xác đị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.
Hệ thống tư vấn 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ói trên:
1. 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 [196, 197], 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 dưới hoặc giới hạn trên) cho mục
VÍ DỤ KHUYẾN NGHỊ DỰA TRÊN TRƯỜNG HỢP
GIẢ THUYẾT
GIAO DIỆN MUA NHÀ (critique-example.com)
[ ĐIỂM VÀO I
MUỐN MUA NHÀ TƯƠNG TỰ VỚI NHỮNG ĐẶC ĐIỂM
SAU:

GỬI TÌM
KIẾM
TÔI MUỐN MUA NHÀ NHƯ NHÀ Ở ĐỊA CHỈ SAU:

812 LÁI XE Hồ Mohegan


THẮNG CẢNH
GỬI TÌM
KIẾM
Hình 1.6: Ví dụ giả định về giao diện người dùng ban đầu cho công cụ đề
xuất dựa trên trường hợp)

thuộc tính. Một ví dụ về giao diện như vậy được minh họa trong Hình
1.5. Các quy tắc dành riêng cho 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ặt hàng. Các quy tắc này
thể hiện kiến thức về miền cụ thể được hệ thống sử dụng. Các quy tắc
như vậy có thể ở dạng ràng buộc theo miền cụ thể đối với các thuộc
tính của vật phẩm (ví dụ: "Ô tô trước năm 1970 không có hệ thống
kiểm soát 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 thuộc tính của người dùng với
thuộc tính của mặt hàng (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, thuộc tính 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ả trả về, người dùng
có thể có cơ hội sửa đổi các yêu cầu ban đầu của mình. Ví dụ: họ có
thể nới lỏng một số ràng buộc khi trả về quá ít kết quả 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.
2. Hệ thống tư vấn dựa trên trường hợp: Trong các hệ thống tư vấn dựa
trên trường hợp [102, 116, 377, 558], các trường hợp cụ thể được
người dùng chỉ định làm mục tiêu hoặc điểm neo. Số liệu tương tự
được xác định trên thuộc tính mục để truy xuất các mục tương tự cho
các trường hợp này. Một ví dụ về giao diện như vậy được minh họa
trong Hình 1.6. Các số liệu tương tự thường được xác định cẩn thận
theo cách dành riêng cho từng miền. Do đó, các số liệu tương tự tạo
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ả trả về thường được sử dụng làm trường hợp mục tiêu mới với
một số sửa đổi tương tác của người dùng. Ví dụ: khi người dùng nhìn
thấy kết quả trả về gần giống với kết quả họ muốn, họ có thể đưa ra lại
truy vấn với mục tiêu đó nhưng với một số thuộc tính được thay đổi
theo ý 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 tới các mục quan tâm.
Lưu ý rằng trong cả hai trường hợp, hệ thống đều tạo cơ hội cho người
dùng thay đổi các yêu cầu đã chỉ định của họ. Tuy nhiên, cách thức thực
hiện điều này ở hai trường hợp này là khác nhau. 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 làm điểm cố
định để hướng dẫn tìm kiếm kết hợp với các số liệu tương tự. 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,
trong đó 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 thường có thể ở dạng hệ thống dựa trên tìm kiếm, trong đó
người dùng chỉ định các ràng buộc của họ bằng giao diện dựa trên tìm
kiếm.
Tính tương tác trong các hệ thống tư vấn dựa trên kiến thức đạt được
như thế nào? Hướng dẫn này được thực hiện thông qua một hoặc nhiều
phương pháp sau:
1.4. 25
1. Hệ thống đàm thoại: Trong trường hợp này, tùy chọn của người dùng
được xác định lặp đi lặp lại trong bối cảnh vòng phản hồi. Lý do chính
cho điều này là miền mục rất 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 hệ thống đàm thoại lặp lại.
2. Hệ thống dựa trên tìm kiếm: Trong hệ thống dựa trên tìm kiếm, sở
thích của người dùng được gợi ra bằng cách sử dụng một chuỗi câu
hỏi đặt 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.
3. Đề xuất dựa trên điều hướng: Trong đề xuất dựa trên điều hướng,
người dùng chỉ định một số yêu cầu thay đổi đối với mục hiện đang
được đề xuất. Thông qua một loạt các yêu cầu thay đổi lặp đi lặp lại,
có thể đạt được mục mong muốn. Ví dụ về yêu cầu thay đổi do người
dùng chỉ định khi một ngôi nhà cụ thể được đề xuất như sau: "Tôi
muốn một ngôi nhà tương tự cách ngôi nhà hiện được đề xuất khoảng
5 dặm về phía Tây." Các hệ thống tư vấn như vậy còn được gọi là hệ
thống tư vấn phê bình [417].
Đáng chú ý là cả hệ thống dựa trên tri thức và dựa trên nội dung đều phụ
thuộc đáng kể vào các thuộc tính của vật phẩm. Do việc sử dụng các thuộc
tính nội dung, các hệ thống dựa trên tri 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ụ, giống như các hệ thống
dựa trên nội dung, các khuyến nghị trong hệ thống dựa trên kiến thức đôi
khi có thể hiển nhiên vì việc sử dụng xếp hạng của cộng đồng (tức là ngang
hàng) không được tận dụng. Trong thực tế, các hệ thống dựa trên tri thức
đôi khi được coi là “anh em họ” của các hệ thống dựa trên nội dung [558].
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 đề xuất dựa trên kiến
thức đề xuất dựa trên thông số kỹ thuật của người dùng tích cực về nhu cầu
và sở thích của họ. Do đó, trong hầu hết các tài liệu giới thiệu, người giới
thiệu dựa trên kiến thức được coi là một loại khác biệt với người giới thiệu
dựa trên nội dung. Những khác biệt này dựa trên mục tiêu của các hệ thống
đó và loại dữ liệu đầu vào được sử dụng (xem Bảng 1.2). Các dạng khác
nhau của hệ thống tư vấn dựa trên kiến thức sẽ được thảo luận trong
Chương 5.

1.3.3.1 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, hàm tiện ích được xác định trên
các tính năng của sản phẩm để tính xác suất người dùng thích sản phẩm đó
[239]. Thách thức chính trong các phương pháp dựa trên tiện ích là xác
định chức năng tiện ích phù hợp cho người dùng. Đáng chú ý là tất cả các
chương trình đề xuất, cho dù là phương pháp cộng 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 đề xuất trên cơ
sở giá trị (hoặc tiện ích) được cảm nhận của chúng đối với 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. Theo nghĩa này, những chức năng như vậy có thể
được xem như một loại kiến thức bên ngoài. Vì vậy, 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 hệ thống tư vấn
dựa trên tri thức. Trên thực tế, chương 5 sẽ chỉ ra rằng các hàm tiện ích
được sử dụng thường xuyên theo nhiều cách khác nhau để xếp hạng các
mục trong hệ thống gợi ý dựa trên kiến thức.

1.3.4 Hệ thống tư vấn nhân khẩu học


Trong các hệ thống đề xuất nhân khẩu học, thông tin nhân khẩu học về
người dùng được tận dụng để tìm hiểu các bộ phân loại có thể ánh xạ nhân
khẩu học cụ thể tới xếp hạng hoặc xu hướng mua hàng. Một hệ thống gợi ý
ban đầu, được gọi là Grundy [508], đã gợi ý những cuốn sách dựa trên thư
viện 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 bằng cách sử dụng đối thoại tương tác. Nghiên cứu trong
[320] đã quan sát thấy rằng các nhóm nhân khẩu học từ nghiên cứu tiếp thị
có thể được sử dụng để giới thiệu các mặt hàng. Một công trình khác [475]
đưa ra các khuyến nghị về trang Web trên cơ sở các đặc điểm nhân khẩu
học của người dùng đã đánh giá cao một trang cụ thể. Trong nhiều trường
hợp, thông tin nhân khẩu học có thể được kết hợp với bối cảnh bổ sung để
hướng dẫn quá trình đề xuất. Cách tiếp cận này liên quan đến phương pháp
luận của các hệ thống tư vấn 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 hơn đã tập trung vào việc sử dụng các bộ phân loại
để đưa ra khuyến nghị. Một trong những hệ thống thú vị về mặt này là kỹ
thuật trích xuất các đặc điểm từ trang chủ 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 phân loại dựa trên quy tắc
[31, 32] thường được sử dụng để liên kết hồ sơ nhân khẩu học với hành vi
mua hàng theo cách tương tác. Mặc dù cách tiếp cận trong [31, 32] không
được sử dụng cụ thể để đề xuất các mục cụ thể nhưng nó có thể dễ dàng kết
hợp với hệ thống gợi ý. Các hệ thống tư vấn như vậy không khác mấy so
với vấn đề mô hình hồi quy và phân loại thông thường, trong đó các biến
tính năng tương ứng với hồ sơ nhân khẩu học và các biến phụ thuộc tương
ứng với xếp hạng hoặc hành vi mua hàng. Mặc dù các hệ thống tư vấn nhân
khẩu học thường không cung cấp kết quả tốt nhất trên cơ sở độc lập, nhưng
chúng bổ sung đáng kể sức mạnh của các hệ thống tư vấn khác như một
thành phần của các mô hình kết hợp hoặc tập hợp. Các kỹ thuật nhân khẩu
học đôi khi được kết hợp với các hệ thống tư vấn dựa trên kiến thức để tăng
độ tin cậy của chúng.
1.4. 27
1.3.5 Hệ thống gợi ý dựa trên tổ hợp và kết hợp
Ba hệ thống nói 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 tình huống khác nhau. Ví dụ: hệ thống lọc cộng
tác dựa vào xếp hạng của cộng đồng, phương pháp dựa trên nội dung dựa
trên mô tả văn bản và xếp hạng của chính người dùng mục tiêu và hệ thống
dựa trên tri thức dựa vào tương tác với người dùng trong bối cảnh cơ sở tri
thức. Tương tự, hệ thống nhân khẩu học sử dụng hồ sơ nhân khẩu học của
người dùng để đưa ra đề xuất. Đá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ó đ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ư hệ thống dựa trên kiến thức, có hiệu
quả hơn trong cài đặt khởi động nguội khi không có sẵn một lượng dữ liệu
đáng kể. Các hệ thống gợi ý khác, chẳng hạn như phương pháp cộng tác, sẽ
hiệu quả hơn khi có sẵn nhiều dữ liệu.
Trong nhiều trường hợp có sẵn nhiều loại đầu vào hơn, người ta có thể
linh hoạt 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 sự lai tạo, trong
đó 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 kết quả tốt nhất. Các hệ thống đề xuất kết hợp có liên quan 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 tư vấn dựa trên tập hợp có thể kết hợp không chỉ sức mạnh của nhiều
nguồn dữ liệu mà còn có thể cải thiện hiệu quả của một loại hệ thống tư vấn
cụ thể (ví dụ: hệ thống cộng tác) bằng cách kết hợp nhiều mô hình cùng
loại. Kịch bản này không khác lắm so với kịch bản 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 hệ tư vấn.

1.3.6 Đánh giá hệ thống tư vấn


Với một tập hợp các thuật toán đề xuất, 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 ý có một số điểm tương đồng về mặt 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 đề xuất,
bất kỳ mục nhập ma trận nào cũng 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 nhập được quan sát trong ma trận còn lại.
Theo nghĩa này, vấn đề khuyến nghị có thể được xem như là sự tổng quát
hóa 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 khác biệt đá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 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 liên quan chặt chẽ đến
việc phân loại và mô hình hồi quy, trong khi cái sau 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á 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 dành riêng cho từng miền trong 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, bối cảnh của đề xuất đóng một vai trò quan
trọng. Do đó, khái niệm về hệ thống gợi ý theo ngữ cảnh đã được phát triển
để giải quyết các thông tin 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
khác nhau, chẳng hạn như dữ liệu thời gian, dữ liệu vị trí hoặc dữ liệu xã
hội.

1.4.1 Hệ thống gợi ý dựa trên ngữ cảnh


Các hệ thống đề xuất dựa trên ngữ cảnh hoặc nhận biết ngữ cảnh sẽ tính
đến nhiều loại thông tin theo ngữ cảnh khác nhau trong khi đưa ra đề xuất.
Thông tin theo ngữ cảnh như vậy có thể bao gồm thời gian, địa điểm hoặc
dữ liệu xã hội. Ví dụ: các loại quần áo được nhà bán lẻ đề xuất 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ột loại lễ hội hoặc ngày lễ cụ thể ảnh hưởng đến hoạt động cơ bản của
khách hàng.
Nhìn chung, người ta nhận thấy rằng việc sử dụng thông tin theo ngữ
cảnh như vậy có thể cải thiện đáng kể hiệu quả của quá trình khuyến nghị.
Hệ thống đề xuất dựa trên ngữ cảnh cực kỳ mạnh mẽ vì các ý tưởng cơ bản
có liên quan đến nhiều cài đặt cụ thể theo miền. Trên thực tế, chủ đề lặp đi
lặp lại xuyên suốt các chương sau của cuốn sách sẽ là việc sử dụng mô hình
đa chiều [7] cho các khuyến nghị theo ngữ cảnh cụ thể ở các khía cạnh
khác nhau.
CÁC THÁCH THỨC DÀNH CHO MIỀN TRONG HỆ THỐNG GIỚI
THIỆU

cài đặt dành riêng cho tên miền. Các hệ thống tư vấn nhận biết ngữ cảnh sẽ
được thảo luận ở Chương 8 theo nghĩa chung. Tuy nhiên, các khía cạnh
riêng lẻ của bối cảnh, chẳng hạn như thời gian, địa điểm 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 đánh giá
chung về các khía cạnh khác nhau này được cung cấp dưới đây.

1.4.2 Hệ thống tư vấn nhạy cảm với thời gian


Trong nhiều cài đặt, đề xuất cho một mục có thể thay đổi theo thời gian. Ví
dụ: các đề xuất cho một bộ phim có thể rất khác tại thời điểm phát hành so
với các đề xuất nhận được vài năm sau đó. Trong những trường hợp như
vậy, việc kết hợp kiến thức về thời gian vào quá trình đề xuất là cực kỳ
1.4. 29
quan trọng. Khía cạnh thời gian trong các hệ thống tư vấn như vậy có thể
được phản ánh theo nhiều cách:
1. Xếp hạng của một mục có thể thay đổi theo thời gian, khi thái độ của
cộng đồng thay đổi và sở thích của người dùng thay đổi theo thời gian.
Sở thích, sở thích, điều không thích và thời trang của người dùng chắc
chắn sẽ thay đổi theo thời gian.
2. Xếp hạng của một mặt hàng có thể phụ thuộc vào thời gian cụ thể
trong ngày, ngày trong tuần, tháng hoặc mùa. Ví dụ, sẽ không có ý
nghĩa gì nếu khuyên dùng quần áo mùa đông vào mùa hè hoặc áo mưa
vào mùa khô.
Loại hệ thống gợi ý đầu tiên được tạo ra bằng cách kết 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 là trường hợp đặc biệt của hệ thống tư vấn dựa trên ngữ cảnh.
Các hệ thống gợi ý tạm thời đang gặp nhiều thách thức vì thực tế là ma trận
xếp hạng rất thưa thớt và việc sử dụng bối cảnh thời gian cụ thể sẽ làm trầm
trọng thêm vấn đề thưa thớt. Do đó, điều đặc biệt quan trọng là có quyền
truy cập vào các tập dữ liệu lớn trong các cài đặt này.
Một cài đặt phổ biến khác là các tập dữ liệu phản hồi tiềm ẩn chẳng hạn
như 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 nhiều dữ liệu hữu ích có thể được khai
thác để đưa ra khuyến nghị về hoạt động trong tương lai. Trong những
trường hợp như vậy, việc khai thác mẫu tuần tự rời rạc và mô hình Markov
rất hữu ích. Vấn đề khuyến nghị nhạy cảm với thời gian sẽ được thảo luận
chi tiết trong Chương 9.

1.4.3 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 hỗ trợ GPS, người
tiêu dùng thường quan tâm đến các đề xuất dựa trên vị trí. Ví dụ: một người
dùng đang đi du lịch có thể muốn xác định nhà hàng gần nhất dựa trên lịch
sử xếp hạng trước đó của cô ấy đối với các nhà hàng khác. Nhìn chung,
việc đề xuất các địa điểm luôn có khía cạnh vị trí được tích hợp sẵn trong
đó. Một ví dụ về hệ thống như vậy là Foursquare, hệ thống này đề xuất
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 vị trí không gian chung cho các hệ thống như vậy:
1. Vị trí dành riêng cho người dùng: Vị trí địa lý của người dùng có vai
trò quan trọng đối với sở thích của họ. Ví dụ: người dùng từ Wisconsin
có thể không có sở thích phim giống như người dùng từ New York.
Loại địa phương này được gọi là địa phương ưu tiên.
2. Vị trí cụ thể của mặt hàng: Vị trí địa lý của một mặt hàng (ví dụ: nhà
hàng) có thể có tác động đến mức độ liên quan của mặt hàng đó, 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 vị trí hiện tại của họ. Loại địa phương này
được gọi là địa phương du lịch.

Các thuật toán cho địa phương ưu tiên và địa phương du lịch khá khác
nhau. Cái trước gần với các hệ thống nhạy cảm với ngữ cảnh hơn, trong khi
cái sau thường được thiết kế theo phương pháp phỏng đoán đặc biệt. 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ự phổ biến ngày càng tăng của điện thoại di động
và các thiết bị hỗ trợ GPS khác. Hệ thống tư vấn dựa trên vị trí được thảo
luận chi tiết trong Chương 9.

1.4.4 Hệ thống gợi ý xã hội


Hệ thống gợi ý xã hội dựa trên cấu trúc mạng, tín hiệu và thẻ xã hội hoặc
sự kết hợp của các khía cạnh mạng khác nhau này. Nhìn chung, các hệ
thống gợi ý dựa trên các tín hiệu và thẻ xã hội hơi khác so với các hệ thống
chỉ dựa trên các khía cạnh cấu trúc. Các hệ thống đề xuất, hoàn toàn dựa
trên các khía cạnh cấu trúc, được sử dụng để đề xuất các nút và liên kết
trong chính mạng. Mặt khác, hệ thống giới thiệu xã hội cũng có thể được sử
dụng để giới thiệu các sản phẩm khác nhau bằng cách sử dụng các tín hiệu
xã hội. Cả hai dạng hệ thống gợi ý này sẽ được nghiên cứu trong cuốn sách
này. Tuy nhiên, những hình thức khuyến nghị này khá khác nhau nên
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 cần lưu ý là tiện ích của hệ thống tư vấn cấu trúc vượt ra
ngoài mạng xã hội, bởi vì các phương pháp như vậy được áp dụng cho
nhiều loại mạng hỗ trợ Web khác nhau.

1.4.4.1 Khuyến nghị về cấu trúc của các nút và liên kết
Nhiều loại mạng khác nhau, bao gồm cả mạng xã hội, bao gồm các nút và
liên kết. Trong nhiều trường hợp, nên giới thiệu các nút và liên kết. Ví dụ:
tìm kiếm trên Web được cá nhân hóa có thể yêu cầu đề xuất tài liệu liên
quan đến một chủ đề cụ thể. Vì Web có thể được xem dưới dạng biểu đồ
nên các phương pháp như vậy có thể được xem như một vấn đề đề xuất nút.
Vấn đề đề xuất nút có liên quan chặt chẽ đến vấn đề tìm kiếm trên Web.
Trên thực tế, cả hai vấn đề đều yêu cầu sử dụng nhiều dạng thuật toán xếp
hạng khác nhau. 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 đó có
liên quan chặt chẽ hơn với thuật toán đề xuất. Do đó, các thuật toán như
vậy còn được gọi là thuật toán PageRank được cá nhân hóa. Trong trường
1.4. 31
hợp có sẵn ví dụ về các nút quan tâm, các nút đó 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 đề đề xuất liên
kết hoặc dự đoán liên kết, trong đó người ta mong muốn đề xuất bạn bè
(hoặc liên kết tiềm năng) cho người dùng trong mạng xã hội. Bài toán dự
đoán liên kết còn có nhiều ứng dụng ngoài mạng xã hội. Điều thú vị là các
vấn đề về xếp hạng, phân loại chung và đề xuất liên kết có liên quan chặt
chẽ với nhau. Trong thực tế, lời giải của một bài toán thường được sử dụng
làm chương trình con cho các bài toán khác. Ví dụ: các phương pháp dự
đoán thứ hạng và liên kết thường được sử dụng cho các đề xuất sản phẩm
truyền thống trong biểu đồ mục người dùng. Trên thực tế, những phương
pháp này có thể được sử dụng để thực hiện các đề xuất trong nhiều tình
huống vấn đề, có thể chuyển đổi thành biểu đồ. Các phương pháp đề xuất
nút và liên kết được thảo luận trong Chương 10.
CHỦ ĐỀ VÀ ỨNG DỤNG NÂNG CAO

1.4.4.2 Đề xuất về sản phẩm và nội dung có ảnh hưởng xã hội


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

1.4.4.3 Hệ thống tư vấn đáng tin cậy


Nhiều trang truyền thông xã hội, chẳng hạn như Epinions [705] hoặc
Slashdot [706], cho phép người dùng bày tỏ sự tin tưởng và không tin
tưởng lẫn nhau, 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ể bày tỏ sự tin tưởng hoặc không tin
tưởng vào đánh giá của người dùng khác hoặc họ có thể trực tiếp chỉ định
mối quan hệ tin cậy hoặc không tin cậy của mình với những người dùng
khác. Thông tin tin cậy này rất hữu ích để đưa ra các khuyến nghị chắc
chắn hơn. Ví dụ, rõ ràng là phương pháp lân cận dựa trên người dùng nên
được tính toán bằng cách sử dụng các đồng nghiệp đáng tin cậy để có được
các khuyến nghị mạnh mẽ. Nghiên cứu gần đây đã chỉ ra rằng [221, 588,
616] rằng việc kết hợp thông tin tin cậy có thể dẫn đến những khuyến nghị
chắc chắn hơn. Hệ thống tư vấn đáng tin cậy được trình bày ở Chương 11.

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 để kết hợp phản hồi của họ trong hệ
thống gợi ý. Hình thức phản hồi phổ biến nhất là gắn thẻ xã hội. Những
dạng 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) [692], Last.fm [692] (chia sẻ
âm nhạc) và Bibsonomy [708] (chia sẻ tài liệu khoa học). Thẻ là siêu dữ
liệu mà người dùng sử dụng để thêm các từ khóa thông tin ngắn vào nội
dung. Ví dụ: người dùng trên trang web âm nhạc có thể gắn thẻ 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ẻ đóng vai trò là bối cảnh hữu ích để thực hiện các đề
xuất. Các phương pháp đưa ra đề xuất phù hợp với ngữ cảnh có thể được sử
dụng trực tiếp để kết 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 quá trình đề xuất. Những phương pháp này được thảo luận chi
tiết trong Chương 11.

1.5 Các chủ đề và ứng dụng nâng cao


Cuốn sách này cũng sẽ giới thiệu một số chủ đề và ứng dụng nâng cao. Hầu
hết các chủ đề này sẽ được thảo luận trong Chương 12 và 13, mặc dù một
số chủ đề sẽ được trình bày xuyên suốt cuốn sách nếu thấy 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 động nguội trong hệ thống gợi ý
Một trong những vấn đề chính trong hệ thống tư vấn là số lượng xếp hạng
có sẵn ban đầu 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. Mặc dù
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 các
mô hình hợp tác khi bắt đầu từ đầu, nhưng nội dung hoặc kiến thức đó có
thể không phải lúc nào cũng 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 động nguội trong bối cảnh hệ thống
tư vấn. Tính nhạy cảm của các mô hình khác nhau đối với vấn đề khởi động
nguội 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.4. 33
1.5.2 Hệ thống gợi ý chống tấn công
Việc sử dụng hệ thống gợi ý có tác động đáng kể đến việc bán các sản
phẩm và dịch vụ khác nhau. Kết quả là, người bán sản phẩm và dịch vụ có
động cơ kinh tế đáng kể để thao túng kết quả đầu ra của hệ thống tư vấn.
Một ví dụ về hành vi thao túng như vậy là gửi xếp hạng tăng cao về sản
phẩm của chính họ tới hệ thống giới thiệu. Đối thủ độc hại có thể gửi đánh
giá thiên vị và tiêu cực về sản phẩm của đối thủ cạnh tranh. Qua nhiều năm,
nhiều chiến lược phức tạp đã đượ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 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 đề xuất và giảm chất lượng trải nghiệm của
người dùng hợp pháp. Do đó, cần có các phương pháp cho phép đưa ra các
khuyến nghị mạnh mẽ khi có các cuộc tấn công như vậy. Các phương pháp
tấn công, bao gồm cả tính 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, sẽ đượ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ẽ khi có các cuộc tấn công như vậy.

1.5.3 Hệ thống tư vấn nhóm


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

1.5.4 Hệ thống gợi ý đa tiêu chí


Trong các hệ thống đa tiêu chí, xếp hạng 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. Ví dụ: người dùng có thể xếp hạng
phim dựa trên cốt truyện, âm nhạc, hiệu ứng đặc biệt, v.v. Những kỹ thuật
như vậy thường đưa ra các khuyến nghị bằng cách mô hình hóa tiện ích của
người dùng đối với một mặt hàng dưới dạng vectơ xếp hạng tương ứng với
các tiêu chí khác nhau. Trong nhiều tiêu chí CHỦ ĐỀ VÀ ỨNG DỤNG
NÂNG CAO

hệ thống tư vấn, người ta thường có thể thu được kết quả sai lệch nếu chỉ sử
dụng đánh giá tổng thể kết hợp với hệ thống tư vấn truyền thống. Ví dụ:
nếu hai người dùng có cùng xếp hạng tổng thể cho một bộ phim, nhưng xếp
hạng 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 đó không được coi là giống nhau từ góc độ của 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 xếp hạng tổng thể. Trong những trường hợp
như vậy, vấn đề thậm chí còn khó khăn hơn vì cần phải trình bày danh sách
các mục được xếp hạng cho nhiều người dùng khác nhau dựa trên nhiều
tiêu chí. Tổng quan tuyệt vời về hệ thống tư vấn đa tiêu chí có thể được tìm
thấy trong [11, 398, 604] từ nhiều góc độ khác nhau.
Người ta đã chứng minh [271, 410] rằng một số phương pháp dành cho
hệ thống tư vấn nhóm cũng có thể được điều chỉnh cho phù hợp với hệ
thống tư vấn đ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 đề xuất.
Các phương pháp cho hệ thống tư vấn đa tiêu chí được thảo luận ở phần
13.5 của Chương 13.

1.5.5 Học tập tích cực trong hệ thống gợi ý


Một thách thức lớn trong các hệ thống tư vấn là việc thu thập đủ xếp hạng
để đưa ra những dự đoán chắc chắn. Sự thưa thớt của ma trận xếp hạng tiếp
tục là một trở ngại đáng kể trong hoạt động hiệu quả của hệ thống tư vấn.
Việc đạt được xếp hạng đầy đủ có thể làm giảm vấn đề thưa thớt. Một loạt
các hệ thống đề xuất trong thế giới thực có cơ chế khuyến khích người
dùng nhập xếp hạng để đưa vào hệ thống. Ví dụ: người dùng có thể được
khuyến khích đánh giá một số mặt hàng nhất định. Nói chung, thường khó
có được quá nhiều xếp hạng từ một người dùng vì chi phí của quá trình thu
thập cao. Vì vậy, người ta phải thận trọng lựa chọn các mục để được người
dùng cụ thể đánh giá. Ví dụ: nếu người dùng đã xếp hạng nhiều phim hành
động thì việc yêu cầu người dùng xếp hạng một phim hành động khác
không giúp ích nhiều trong việc dự đoán xếp hạng của các phim hành động
khác và thậm chí còn giúp ích ít hơn trong việc dự đoán xếp hạng của các
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
xếp hạng phim thuộc thể loại ít phổ biến hơn sẽ giúp ích đáng kể trong việc
dự đoán xếp hạng của phim thuộc thể loại đó. Tất nhiên, nếu người dùng
được yêu cầu xếp hạng một bộ phim không liên quan, thì cô ấy không cần
thiết phải đưa ra phản hồi vì có thể cô ấy 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 hệ thống gợi ý,
điều này không gặp phải trong các lĩnh vực vấn đề khác như phân loại.
1.4. 35
Việc xem xét các phương pháp học tập tích cực cho hệ thống tư vấn có thể
được tìm thấy trong [513]. Phương pháp học tập tích cực được thảo luận ở
phần 13.6 của Chương 13.

1.5.6 Quyền riêng tư trong Hệ thống gợi ý


Hệ thống gợi ý chủ yếu dựa vào phản hồi từ người dùng, có thể ngầm định
hoặc rõ ràng. Phản hồi này chứa thông tin quan trọng về lợi ích của người
dùng và có thể tiết lộ thông tin về quan điểm chính trị, khuynh hướng tình
dục và sở thích cá nhân của họ. Trong nhiều trường hợp, những thông tin
đó có thể rất nhạy cảm, 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ư như vậy rất quan trọng vì chúng cản trở việc phát
hành dữ liệu cần thiết cho sự phát triển của các thuật toán đề xuất. Sự sẵn
có của dữ liệu thực là rất quan trọng cho những tiến bộ về 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 hệ thống
gợi ý là vô giá, ở chỗ nó có thể được coi là động lực thúc đẩy sự phát triển
của nhiều thuật toán tiên tiến nhất [373]. Trong những năm gần đây, chủ đề
về quyền riêng tư đã được khám phá trong bối cảnh có rất nhiều vấn đề
khai thác dữ liệu [20]. Miền khuyến nghị cũng không ngoại lệ và nhiều
thuật toán bảo vệ quyền riêng tư đã được phát triển [133, 484, 485]. Chủ đề
về quyền riêng tư trong 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 Miền ứng dụng


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 hệ thống gợi ý. Đặc biệt, Chương 13 sẽ nghiên cứu ba lĩnh vực
cụ thể tương ứng với đề xuất tin tức, quảng cáo tính toán và hệ thống tư vấn
tương hỗ. Tất cả các miền ứng dụng này đều có bản chất là Webcentric.
Một khía cạnh quan trọng của hệ thống gợi ý là chúng giả định sự tồn tại
của các cơ chế nhận dạng người dùng mạnh mẽ để theo dõi và xác định sở
thích lâu dài của người dùng. Trong nhiều miền Web, cơ chế nhận dạng
người dùng mạnh mẽ có thể không có sẵn. Trong những trường hợp như
vậy, người sử dụng trực tiếp công nghệ khuyến nghị có thể không khả thi.
Hơn nữa, do các vật phẩm mới (quảng cáo) liên tục vào và ra khỏi hệ thống
nên một số loại phương pháp nhất định như kẻ cướp nhiều vũ khí đặc biệt
phù hợp. Do đó, Chương 13 sẽ thảo luận về các tình huống trong đó công
nghệ đề xuất 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 thực hiện đối với các hệ thống tư vấn 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ư kẻ cướp
nhiều nhánh.
1.6 Tóm tắt

Cuốn sách này sẽ cung cấp cái nhìn tổng quan về các lớp thuật toán quan
trọng nhất cho hệ thống gợi ý, ưu điểm và nhược điểm của chúng cũng như
các tình huống cụ thể mà chúng hiệu quả nhất. Vấn đề đề xuất 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ẽ trình bày, vấn đề đề xuất 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ể khác
nhau tùy theo bối cảnh bài toán cụ thể. Những sự đánh đổi này cũng sẽ
được khám phá trong cuốn sách này. Trong nhiều trường hợp, các hệ thống
lai có thể được phát triển để khai thác những sự cân bằng này một cách
hiệu quả.
Một số chủ đề nâng cao, chẳng hạn như mô hình tấn công, hệ thống tư
vấn nhóm, hệ thống đa tiêu chí, hệ thống học tập tích cực, sẽ được nghiên
cứu trong các chương sau của cuốn sách này. Chúng ta cũng sẽ khám phá
một số ứng dụng cụ thể, chẳng hạn như đề xuất tin tức và quảng cáo bằng
máy tính. 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 tình huống khác nhau phát sinh trong lĩnh vực
hệ thống gợi ý.

1.7 Ghi chú thư mục


Các hệ tư vấn ngày càng trở nên phổ biến vào giữa những năm 1990, khi
các hệ tư vấn như GroupLens [501] đượ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 tri
thức. Các khảo sát chi tiết và sách về chủ đề này có thể tìm thấy trong [5,
46, 88, 275, 291, 307, 364, 378, 505, 529, 570]. Trong số này, công trình
trong [5] là một bản khảo sát được viết rất hay, cung cấp một cái nhìn tổng
quan tuyệt vời về những ý tưởng cơ bản. Những khảo sát gần đây hơn có
thể được tìm thấy trong [88, 378, 570]. Khảo sát việc sử dụng các nguồn tài
liệu THƯ VIỆN phi truyền thống

thông tin cho các khuyến nghị, chẳng hạn như thông tin xã hội, thời gian,
thông tin phụ hoặc dữ liệu theo ngữ cảnh, được cung cấp trong [544]. 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 [462]. Một cuốn sách giới thiệu xuất sắc có thể
được tìm thấy trong [275], trong khi một cuốn sổ tay chi tiết [505] thảo
luận chi tiết về các khía cạnh khác nhau của hệ thống gợi ý.
Vấn đề lọc cộng tác với ma trận xếp hạng 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 bị thiếu [362], mặc
1.4. 37
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 cộng
tác dựa trên người dùng sớm nhất đã được nghiên cứu trong [33, 98, 501,
540]. Phương pháp dựa trên người dùng sử dụng xếp hạng của những người
dùng tương tự trên cùng một mặt hàng để đưa ra dự đoán. Mặc dù các
phương pháp như vậy ban đầu khá phổ biến nhưng chúng không dễ dàng
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 [181, 360, 524] đã được đề xuất, tính toán xếp hạng dự đoán như một
hàm xếp hạng của cùng một người dùng trên các mục tương tự. Một cách
tiếp cận phổ biến khác để đưa ra khuyến nghị là sử dụng các mô hình nhân
tố tiềm ẩn. Các công trình sớm nhất trong các mô hình nhân tố tiềm ẩn xuất
hiện độc lập trong bối cảnh khuyến nghị [525] và phân tích giá trị còn thiếu
[24]. Cuối cùng, những phương pháp này lại được phát hiện là loại phương
pháp hiệu quả nhất để thực hiện các khuyến nghị [252, 309, 313, 500, 517].
Ngoài việc sử dụng chúng trong các mô hình dựa trên yếu tố, các phương
pháp giảm kích thước cũng được sử dụng để giảm kích thước của ma trận
xếp hạng nhằm cải thiện hiệu quả của sự tương tự 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 rút gọn [228, 525].
Tuy nhiên, công việc phân tích dữ liệu còn thiếu cũng có liên quan đến tài
liệu khuyến nghị. Các mô hình liên quan khác để lọc cộng 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 [167, 360, 608], phân
loại hoặc khai thác mẫu liên kết [524]. Sự thưa thớt là một vấn đề lớn đối
với các hệ thống như vậy và các hệ thống dựa trên đồ thị khác nhau đã
được thiết kế để giảm bớt vấn đề thưa thớt [33, 204, 647].
Các phương pháp dựa trên nội dung có liên quan chặt chẽ với các tài liệu
tìm kiếm thông tin [144
364, 400], trong đó các phương pháp truy xuất độ tương tự được sử dụng
trong quá trình đề xuất. Phương pháp phân loại văn bản cũng đặc biệt hữu
ích trong quá trình đề xuất. Một cuộc thảo luận chi tiết về các phương pháp
phân loại văn bản khác nhau có thể được tìm thấy trong [22]. Một số công
trình đầu tiên về khuyến nghị dựa trên nội dung được tìm thấy trong [60,
69]. Cuộc khảo sát chung trong [5] cũng thảo luận khá rộng rãi về các
khuyến nghị dựa trên nội dung.
Có nhiều trường hợp trong đó các phương pháp cộng tác và dựa trên nội
dung không hữu ích trong việc thu được các đề xuất có ý nghĩa do mức độ
phức tạp và hạn chế cao trong không gian mục. Trong những trường hợp
như vậy, hệ thống tư vấn dựa trên kiến thức [116] đặc biệt hữu ích. Hệ
thống tư vấn nhân khẩu học được thảo luận trong [320, 475, 508] trong khi
hệ thống tư vấn dựa trên tiện ích được thảo luận trong [239]. Một cuộc
khảo sát tuyệt vời về cách giải thích trong hệ thống gợi ý được cung cấp
trong [598].
Các hệ thống gợi ý khác nhau sẽ hiệu quả hơn trong các loại cài đặt khác
nhau. Việc đánh giá [246] các hệ thống gợi ý là quan trọng để đánh giá tính
hiệu quả của các thuật toán khác nhau. Một cuộc thảo luận chi tiết về các
phương pháp đánh giá cũng có thể được tìm thấy trong [538]. Hệ thống lai
[117] có thể kết hợp nhiều hệ thống gợi ý khác nhau để thu được kết quả
hiệu quả hơn. Hơn nữa, các phương pháp tập hợp cũng có thể kết hợp các
thuật toán cùng loại để thu đượ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" [704] và
"Bellkor's Pragmatic Chaos," [311] đều là các phương pháp tổng hợp.
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 tình huống 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 nguội, trong đó
không có đủ số lượng xếp hạng khi bắt đầu quá trình đề xuất. Vì vậy, các
phương pháp chuyên biệt thường được sử dụng để giải quyết vấn đề này
[533]. Trong nhiều trường hợp, bối cảnh của đề xuất, chẳng hạn như địa
điểm, thời gian hoặc thông tin xã hội, có thể cải thiện đáng kể quá trình đề
xuất [7]. 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ủa hệ thống gợi ý. Các hệ thống tư vấn nhận
biết theo thời gian đã được nghiên cứu trong [310], trong khi các hệ thống
tư vấn nhận biết vị trí đã được thảo luận trong [26]. Bối cảnh xã hội đặc
biệt đa dạng vì nó cho phép giải quyết nhiều vấn đề khác nhau. Người ta có
thể đề xuất các nút hoặc liên kết trong mạng xã hội hoặc người ta có thể đề
xuất 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 [656]. 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 [22,
656] có thể được xem như một vấn đề đề xuất cấu trúc trong mạng xã hội.
Hơn nữa, những hình thức đề xuất này còn hữu ích ngoài phạm vi mạng xã
hội. Điều 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 đề xuất truyền thống bằng cách chuyển đổi tương tác giữa
người dùng và mục thành cấu trúc biểu đồ hai bên [261]. Một hình thức
khuyến nghị xã hội khác là trường hợp các tín hiệu xã hội được sử dụng để
thực hiện các khuyến nghị [588]. 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ác ứng dụng tiếp thị lan truyền [297].
Vì hệ thống gợi ý thường giúp ích cho việc bán sản phẩm nên người bán
những sản phẩm đó hoặc đối thủ cạnh tranh của họ có động cơ đáng kể để
tấn công hệ thống gợi ý bằng cách thao túng xếp hạng. Trong những trường
hợp như vậy, các khuyến nghị dường như không có 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 nỗ lực đáng
kể đã được dành cho việc thiết kế các hệ thống tư vấn đáng tin cậy [444].
Các hệ thống tư vấn nhóm khác nhau được thảo luận trong [45, 271, 272,
407, 408, 412, 413, 415, 653]. Hệ thống tư vấn đa tiêu chí được thảo luận
trong [11, 398, 604]. Phương pháp học tập tích cực được thảo luận trong
[513]. Thảo luận chung về các phương pháp bảo vệ quyền riêng tư có thể
được tìm thấy trong [20]. Các nghiên cứu sớm nhất về chủ đề khuyến nghị
bảo vệ quyền riêng tư đã được trình bày trong [133, 451, 484, 485, 667].
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 chiều cao của dữ liệu. Nó đã được chỉ ra trong [30, 451]
1.4. 39
cách mà chiều có thể được tận dụng để thực hiện các cuộc tấn công vào
quyền riêng tư đối với các loại tập dữ liệu khác nhau.

You might also like