Chương 1 - LỌC CỘNG TÁC BẰNG PHƯƠNG PHÁP HỌC BÁN GIÁM SÁT Hệ tư vấn được xây dựng dựa trên hai kỹ thuật lọc thông tin chính: lọc cộng tác và lọc nội dung. Trong đó, lọc cộng tác được áp dụng rộng rãi hơn do tính đơn giản và hiệu quả trong cài đặt. Lọc cộng tác được tiếp cận theo hai xu hướng chính: lọc cộng tác dựa vào bộ nhớ và lọc cộng tác dựa vào mô hình. Trong chương này, đề tài tập trung trình bày phương pháp đồng huấn luyện cho lọc cộng tác.
Đây cũng là nền tảng cơ sở quan trọng để mở rộng phương pháp cho lọc kết hợp. Phát biểu bài toán lọc cộng tác Lọc cộng tác (collaborative filtering) là phương pháp dự đoán quan điểm của người dùng hiện thời đối với các sản phẩm phù hợp dựa trên thói quen sử dụng sản phẩm của cộng đồng người dùng có cùng chung sở thích. Hiện nay, lọc cộng tác được xem là phương pháp hiệu quả đã được áp dụng thành công cho nhiều hệ thống thương mại điện tử được cộng đồng quan tâm nghiên cứu. Bài toán của lọc cộng tác được phát biểu như sau: Cho tập hợp hữu hạn U = {u1, u2,…, uN} là tập gồm N người dùng, P = {p1, p2,., pM} là tập gồm M sản phẩm.
Mỗi sản phẩm pxP có thể là hàng hóa, phim, ảnh, tạp chí, tài liệu, sách, báo, dịch vụ hoặc bất kỳ dạng thông tin nào mà người dùng cần đến. Để thuận tiện trong trình bày, ta viết pxP ngắn gọn thành xP; và uiU là iU. Mối quan hệ giữa tập người dùng U và tập sản phẩm P được biểu diễn thông qua ma trận đánh giá R={ rix }, i = 1. Mỗi giá trị rix thể hiện đánh giá của người dùng iU cho một số sản phẩm xP.
Giá trị rix có thể được thu thập trực tiếp bằng cách hỏi ý kiến người dùng hoặc thu thập gián tiếp thông qua cơ chế phản hồi của người dùng. Giá trị rix = được hiểu người dùng i chưa đánh giá hoặc chưa bao giờ biết đến sản phẩm x. Tiếp đến ta ký hiệu, PiP là tập các sản phẩm được đánh giá bởi người dùng iU và UxU là tập các người dùng đã đánh giá sản phẩm xP. Với một người dùng cần Luan van 4 được tư vấn aU (được gọi là người dùng hiện thời, người dùng cần được tư vấn, hay người dùng tích cực), bài toán lọc cộng tác là dự đoán đánh giá của a đối với những mặt hàng x (P\ Pa), trên cơ sở đó tư vấn cho người dùng a những sản phẩm được đánh giá cao.1: Ma trận đánh giá của lọc cộng tác Sản phẩm Người dùng p1 p2 p3 p4 p5 p6 p7 u1 4 2 5 3 3 u2 5 5 5 4 u3 4 4 3 4 3 u4 3 5 5 5 u5 ? 5 ? ? 4 4 Bảng 1.1 thể hiện một ví dụ với ma trận đánh giá R = (rij) trong hệ gồm 5 người dùng U = {u1, u2, u3, u4, u5} và 7 sản phẩm P = {p1, p2, p3, p4, p5, p6, p7,}.
Mỗi người dùng đều đưa ra các đánh giá của mình về các sản phẩm theo thang bậc {, 1, 2, 3, 4, 5}. Giá trị rij= được hiểu là người dùng ui chưa đánh giá hoặc chưa bao giờ biết đến sản phẩm pj. Các giá trị r5,1 =? là sản phẩm hệ thống cần dự đoán cho người dùng u5. Lọc cộng tác bằng phương pháp học không giám sát Học máy cho lọc cộng tác được tiếp cận theo ba xu hướng chính: Học có giám sát (supervised learning), học không giám sát (unsupervised learning) và học bán giám sát (semi-supervised learning).
Mỗi phương pháp học khai thác những khía cạnh riêng của tập dữ liệu huấn luyện. Học có giám sát là phương pháp học máy được thực hiện bằng cách xây dựng một hàm (function) từ dữ liệu huấn luyện. Dữ liệu huấn luyện bao gồm các cặp gồm đối tượng đầu vào (thường dạng vec-tơ) và đầu ra mong muốn. Đầu ra của một hàm có thể là một giá trị liên tục (gọi là hồi qui), hay có thể là dự đoán một nhãn phân loại cho một đối tượng đầu vào (gọi là phân loại).
Nhiệm vụ của phương pháp học có Luan van 5 giám sát là dự đoán giá trị của hàm cho một đối tượng bất kỳcó dữ liệu đầu vào hợp lệ, sau khi đã xem xét một số ví dụ huấn luyện. Học không có giám sát là phương pháp học máy nhằm tìm ra một mô hình phù hợp với các quan sát. Sự khác biệt với học có giám sát ở chỗ là đầu ra đúng tương ứng cho mỗi đầu vào là không biết trước. Trong học không có giám sát, một tập dữ liệu đầu vào được thu thập.
Học không có giám sát thường xem xét các đối tượng đầu vào như là một tập các biến ngẫu nhiên. Sau đó, một mô hình mật độ kết hợp sẽ được xây dựng cho tập dữ liệu đó. Học không có giám sát có thể được dùng kết hợp với suy diễn Bayes (Bayesian inference) để cho ra xác suất có điều kiện (nghĩa là học có giám sát) cho bất kì biến ngẫu nhiên nào khi biết trước các biến khác. Học nửa giám sát là phương pháp học máy sử dụng cả dữ liệu đã gán nhãn và chưa gán nhãn vào quá trình huấn luyện.
Tập dữ liệu huấn luyện bao gồm một lượng nhỏ dữ liệu có gán nhãn cùng với lượng lớn dữ liệu chưa gán nhãn. Học nửa giám sát đứng giữa học không giám sát (không có bất kỳ dữ liệu có nhãn nào) và có giám sát (toàn bộ dữ liệu đều được gán nhãn). Nhiều nhà nghiên cứu nhận thấy dữ liệu không gán nhãn, khi được sử dụng kết hợp với một chút dữ liệu có gán nhãn, có thể cải thiện đáng kể độ chính xác. Một ví dụ cho kỹ thuật học máy nửa giám sát là đồng huấn luyện (co-training), trong đó một hay nhiều bộ học được huấn luyện cùng một tập ví dụ nhưng mỗi bộ sử dụng một tập đặc trưng khác nhau.
Xem xét bài toán lọc cộng tác theo hướng tiếp cận của đồng huấn luyện, hai quá trình quan sát theo người dùng (được gọi là UserBased) và quá trình quan sát theo sản phẩm (được gọi là ItemBased) có thể được thực hiện bằng phương pháp học bán giám sát. Phương pháp học bán giám sát cho phép ta chuyển giao tri thức từ quá trình huấn luyện theo người dùng đến quá trình huấn luyện theo sản phẩm. Quá trình quan sát theo người dùng sẽ xác định được một số nhãn phân loại chắc chắn chuyển đến quá trình huấn luyện theo sản phẩm. Ngược lại, quá trình quan sát theo sản phẩm bổ sung thêm các nhãn phân loại chắc chắn chuyển giao cho quá trình huấn luyện theo người dùng.
Việc bổ sung thêm vào các nhãn phân loại vào mỗi quá trình huấn luyện Luan van 6 sẽ nâng cao được kết quả dự đoán và hạn chế được vấn đề dữ liệu thưa của lọc cộng tác. Lọc cộng tác bằng phương pháp học không giám sát Lọc cộng tác bằng phương pháp học không giám sát được tiếp cận theo hai phương pháp chính: Phương pháp học dựa vào người dùng (UserBased [12]) và phương pháp học dựa vào sản phẩm (ItemBased [1]). Mỗi phương pháp đều có những ưu điểm riêng khai thác những khía cạnh liên quan đến người dùng hoặc sản phẩm. Đặc điểm chung của cả hai phương pháp này là sử dụng toàn bộ tập dữ liệu đánh giá để dự đoán quan điểm của người dùng cần được tư vấn về các sản phẩm mà họ chưa hề biết đến.
Phương pháp UserBased được thực hiện bằng cách ước lượng mức độ tương tự giữa các cặp người dùng dựa vào các độ đo tương tự để từ đó sinh ra dự đoán các sản phẩm mới phù hợp với người dùng cần được tư vấn. Phương pháp ItemBased được thực hiện bằng cách ước lượng mức độ tương tự giữa các cặp sản phẩm dựa vào các độ đo tương tự để từ đó sinh ra dự đoán các sản phẩm mới phù hợp với người dùng cần được tư vấn. Mỗi phương pháp đều được tiến hành theo ba bước như sau: Bước 1. Tính toán mức độ tương tự giữa các cặp người dùng hoặc sản phẩm.
Tại bước này ta có thể sử dụng các độ đo tương quan hoặc các độ đo tương tự để tính toán mức độ giống nhau giữa các cặp người dùng hoặc sản phẩm [1, 6, 12, 14]. Gọi uij là mức độ tương tự giữa người dùng iU và người dùng jU, pxy là mức độ tương tự giữa sản phẩm xP và sản phẩm yP. Khi đó, độ tương quan Pearson giữa người dùng iU và người dùng jU được xác định theo công thức (1.1), độ tương tự giữa sản phẩm xP và sản phẩm jP được xác định theo công thức (1. r r r r xPi Pj ix i jx j uij (1.1) r r r r 2 2 ix i jx j xPi Pj xPi Pj Luan van 7 r r r r iU x U y ix x iy y p xy (1.2) r r r r 2 2 ix x iy y iU x U y iU x U y Trong đó, 1 ri rix (1.3) Pi Pj xPi Pj 1 rj r jx (1.4) Pi Pj xPi Pj 1 rx rix (1.
Xác định tập láng giềng cho người dùng cần tư vấn. Tại bước này ta chỉ cần sắp xếp các giá trị uij hoặc pxy theo thứ tự giảm dần, trong đó iU là người dùng cần được tư vấn các sản phẩm xP. Sau đó chọn tập K người dùng đầu tiên làm tập láng giềng của người dùng i , hoặc chọn K sản phẩm đầu tiên làm tập láng giềng của sản phẩm x [1, 12]. Sinh ra dự đoán cho người dùng cần tư vấn.
Phương pháp phổ biến nhất để sinh ra dự đoán quan điểm của người dùng iU cho sản phẩm mới xP theo công thức (1.7), đối với sản phẩm theo công thức (1. r r u jK i jx j ij rix ri (1.7) u jK i ij p r yK x xy iy r (1.8) | p | ix xy yK x Luan van 8 Trong đó, Ki là tập láng giềng của người dùng hiện thời iU; Kx là tập láng giềng của sản phẩm xP.