CHƯƠNG 2. HỆ TƯ VẤN VÀ CÁC PHƯƠNG PHÁP LỌC
2.4. PHƯƠNG PHÁP TIẾP CẬN ĐA CHIỀU
Hệ thống khuyến nghị hai chiều sử dụng hàm R dự đoán các đánh giá chƣa biết:
Rating Item
User
R: (2.7)
Ở đây,
User là tập người dùng
Item là tập tài nguyên
Rating là tập đánh giá của người dùng lên các tài nguyên
Thêm vào yếu tố ngữ cảnh, hệ thống khuyến nghị truyền thống đã trở thành hệ khuyến nghị MD. Lúc này, hàm R đƣợc bổ xung thêm thành phần Context và trở thành:
Rating Context
Item User
R: (2.8)
Trong đó
Context là tập các ngữ cảnh liên quan đến các đánh giá
Ví dụ trong hệ thống khuyến nghị du lịch, người dùng là người cần được hệ thống khuyến nghị các địa điểm du lịch, đối tƣợng tƣ vấn là địa điểm du lịch, ngữ cảnh là thời gian đi (buổi sáng, buổi tối, tháng, mùa), đồng hành (đi một mình, đi với bạn bè, đi với gia đình, v.v.). Khi đó, quyết định của người dùng sẽ phụ thuộc vào ngữ cảnh.
Để hình dung về mô hình khuyến nghị MD [11], chúng ta dựa vào mô hình ba chiều. Giả sử không gian dữ liệu có các chiều là D1,,Dn. Trong đó, chiều “người dùng” và chiều “đối tượng” đã biết trước. Các chiều còn lại là các thành phần của yếu tố “ngữ cảnh”. Mỗi chiều là một tập con của tập hợp tích Decarste gồm nhiều thuộc tính Di Ai1Aí2Aik. Trong đó, mỗi thuộc tính Aik định nghĩa một miền giá trị.
Thêm vào đó, một hoặc một vài thuộc tính tạo thành khóa để phân biệt. Trong một số trường hợp, một chiều có thể chỉ là một thuộc tính đơn lẻ (khi đó k 1 trong Aik).
Ví dụ sau sẽ làm rõ hơn về mô hình này: Giả sử có một không gian khuyến nghị ba chiều là: Người dùng Đối tượng Thời gian
Người dùng Tên người dùng Địa chỉ Thu nhập Tuổi Đối tƣợng Tên đối tƣợng Thể loại Giá cả
Thời gian Năm tháng ngày
Khi đó, hàm R:UserItemContext sẽ trở thành hàm R:UserItemTime, có nghĩa là người dùng uUser đánh giá đối tượng iItem vào thời điểm tTime dưới
dạng một chỉ số đánh giá. Ngữ cảnh rất đa dạng nhưng trong trường hợp này nó chỉ đơn giản là thời gian diễn ra.
Mô hình không gian khuyến nghị ba chiều [11] có thể đƣợc miêu tả trong khối lập phương của hình dưới đây:
Hình 2.6: Mô hình khuyến nghị đa chiều với không gian Người dùng Mặt hàng Thời gian
Ô được tô đậm cho biết chỉ số R(101,7,1)6 có ý nghĩa tương ứng là người dùng mã 101 đánh giá cho mặt hàng có mã số 7 trong điều kiện thời gian có mã số 1 là 6.
Trong khối lập phương trên, một số ô chưa được đánh giá là những ô chưa có trị số R. Mục tiêu của hệ khuyến nghị là dự đoán giá trị cho các ô còn thiếu giá trị đó, để từ đó đưa ra gợi ý phù hợp cho người tiêu dùng. Cũng cần lưu ý rằng không phải ngữ cảnh nào cũng cần thiết cho việc dự đoán đánh giá. Ví dụ, trong việc gợi ý người dùng mua sách, xét một số ngữ cảnh sau: mục đích mua sách (để học, để giải trí, v.v.), thời gian sẽ đọc quyển sách đó (đầu tuần, cuối tuần, v.v.), nơi sẽ đọc sách (ở trường, ở nhà, ở công viên, v.v.), giá cổ phiếu thị trường chứng khoán vào thời điểm mua sách.
2.4.2. Giảm chiều cho mô hình khuyến nghị đa chiều
Mô hình khuyến nghị MD đƣợc đề xuất đã chỉ ra đƣợc sự phụ thuộc đánh giá vào ngữ cảnh. Tuy nhiên, để có thể đưa ra được gợi ý cho người dùng, hệ tư vấn cần phải thu nhỏ không gian dữ liệu để tính toán. Phương pháp đưa bài toán đa chiều về bài toán hai chiều (UserItem) đã có lời giải [11]. Chúng ta sẽ tìm hiểu phương pháp này dựa trên ví dụ sau: Giả sử có một hàm đánh giá đƣợc xác định theo:
Rating T
I U
RUserD ItemTime : (2.9)
Trong đó, D là tập dữ liệu (users,items,times,ratings) cho mỗi đánh giá cụ thể.
Chiều ngữ cảnh trong ví dụ này là thời gian (Time). Hàm đánh giá trong không gian ba chiều có thể đƣợc biểu diễn qua hàm dự đoán hai chiều sau [5]:
) , ( )
, , (
, )
, , (
) ](
[ u i
R t i u R
T I U t i u
Rating Item User t Time D
Item User D
Time Item User
(2.10) Ở đây, DTimet User,Item,Rating là tập dữ liệu đánh giá rút ra từ tập D bằng cách chọn ra các dữ liệu có chiều Time có giá trị là t và giữ lại các chiều User, Item, Rating. Bằng các phép toán đại số quan hệ trong CSDL, chúng ta có thể biểu diễn tập dữ liệu chọn lọc ra từ D theo trình tự: sử dụng phép chọn thời gian Timet, để rút ra dữ liệu thỏa mãn điều kiện ngữ cảnh. Lúc này, mọi dữ liệu thu đƣợc đều có ngữ cảnh nhƣ nhau. Sau đó, phép chiếu đƣợc sử dụng để cắt bỏ chiều thời gian của tập dữ liệu trên để đƣa về dạng:
Rating I
U
RUserD Item : (2.11)
Trong thực tế, dữ liệu sau khi cắt giảm chiều có thể không có đủ để đánh giá dự đoán bằng thuật toán hai chiều. Do đó, có thể phương pháp cắt giảm chiều tổng quát sẽ không sử dụng chính xác ngữ cảnh t để dự đoán mà thay vào đó là tập ngữ cảnh St chứa các ngữ cảnh gần gũi với t. Ví dụ, nếu muốn dự đoán điểm mà John sẽ đánh giá cho Nhà thờ Đức Bà khi đi vào ngày chủ nhật, ta có thể sẽ không lựa chọn t “Chủ nhật” để tính toán mà thay vào đó là t“Cuối tuần” tùy thuộc vào sự đa dạng của dữ liệu. Một cách tổng quát, công thức ở đây sẽ là [11]:
) , ( )
, ,
( u i t R [ ]( , , ( )) u i
RUserD ItemTime UserDTimeItemt UserItemAGGR Rating (2.12)
Trong công thức trên, hàm AGGR(Rating) đƣợc sử dụng thay cho Timet, bởi vì người dùng có thể đánh giá cho một đối tượng với những ngữ cảnh khác nhau mà ở trường hợp này là trong những thời điểm khác nhau. Vì vậy, hệ thống phải kết hợp các đánh giá khi cắt giảm số chiều trong không gian của khuyến nghị đa chiều.
Việc cắt giảm không gian dữ liệu ba chiều trên trở thành không gian dữ liệu hai chiều là trường hợp riêng của phương thức tổng quát để cắt giảm không gian khuyến nghị m chiều trở thành n chiều (với nm). Ví dụ trên với n2, không gian dữ liệu sau khi cắt giảm có thể áp dụng các phương pháp khuyến nghị hai chiều đã biết như:
lọc công tác, lọc dựa trên nội dung và kết hợp cả hai phương pháp trên.