Luận văn Nghiên cứu xây dựng đặc trưng cộng đồng trong các hệ thống tư vấn thông tin

NGHIÊN CỨU XÂY DỰNG ĐẶC TRƯNG CỘNG ĐỒNG TRONG CÁC HỆ THỐNG TƯ VẤN THÔNG TIN HUỲNH THẮNG ĐƯỢC Trang nhan đề Mục lục Danh mục Mở đầu Chương 1: Tổng quan Chương 2: Tư vấn thông tin dựa trên lọc cộng tác Chương 3: Các phương pháp PROMETHEE hỗ trợ quyết định đa tiêu chí Chương 4: Xây dựng CP bằng phương pháp PROMETHEEMATCH Chương 5 Thử nghiệm và phân tích kết quả Chương 6 Kết luận và hướng phát triển Tài liệu tham khảo MỤC LỤC DANH MỤC HÌNH 4 DANH MỤC BẢNG . 5 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT 6 MỞ ĐẦU . 7 CHƯƠNG 1. TỔNG QUAN 9 1.1 Đặt vấn đề 9 1.2 Mục tiêu của đề tài 12 1.3 Nội dung nghiên cứu . 12 1.4 Những đóng góp của luận văn 13 CHƯƠNG 2. TƯ VẤN THÔNG TIN DỰA TRÊN LỌC CỘNG TÁC . 14 2.1 Tư vấn thông tin dựa trên lọc cộng tác . 14 2.1.1 Cách tiếp cận dựa trên người dùng (User-based approaches) 15 2.1.2 Cách tiếp cận dựa trên tài nguyên (Item-based approaches) 17 2.1.3 Cách tiếp cận dựa trên mô hình (Model-based approaches) . 18 2.1.4 Các độ đo tương tự (Similarity Measures) 19 2.2 Tạo lập cộng đồng . 20 2.2.1 Mô hình phân nhóm (clustering model) 20 2.2.1.1 Phương pháp phân nhóm hàng xóm gần nhất (nearest neighbor clustering) . 21 2.2.1.2 Phương pháp phân nhóm khoảng cách tâm (k-mean clustering) 22 2.2.2 Tạo lập cộng đồng dựa trên mô hình cộng đồng đa tiêu chí 22 2.3 Định vị người dùng mới vào cộng đồng 24 2.3.1 Khai thác thông tin thăm dò . 24 2.3.2 Cung cấp profile mẫu . 24 2 2.3.3 Phương pháp suy diễn cộng đồng . 25 2.3.4 Định vị dựa trên CP . 25 2.3.4.1 Phương pháp 1 - POP (Porpularly Rated) . 27 2.3.4.2 Phương pháp 2 – HR20 (High Ratings 20) 28 2.3.4.3 Phương pháp 3 – avgMatch . 29 2.4 Quan điểm xây dựng CP như giải bài toán ra quyết định đa tiêu chí . 32 CHƯƠNG 3. CÁC PHƯƠNG PHÁP PROMETHEE HỖ TRỢ QUYẾT ĐỊNH ĐA TIÊU CHÍ 35 3.1 Bài toán ra quyết định đa tiêu chí . 35 3.1.1 Giới thiệu . 35 3.1.2 Một số phương pháp hỗ trợ ra quyết định đa tiêu chí . 41 3.1.2.1 Phương pháp thứ tự . 42 3.1.2.2 Phương pháp Lexicographic 43 3.1.2.3 Phương pháp Borda 43 3.1.2.4 Phương pháp Condorcet 44 3.1.3 Phương pháp trọng số (Weighted methods) 44 3.1.3.1 Phương pháp tổng trọng số (Weighted sum method) 44 3.1.3.2 Phương pháp tích trọng số (Weighted product method) . 45 3.2 Các Phương pháp PROMETHEE 46 3.2.1 Lịch sử . 46 3.2.2 Mô hình thích hơn PROMETHEE 46 3.2.2.1 Thông tin giữa các tiêu chí 47 3.2.2.2 Thông tin trong các tiêu chí . 47 3.2.3 Xếp hạng PROMETHEE I và PROMETHEE II 51 3.2.3.1 Các chỉ số thích hơn tích hợp (Aggregated Preference Indices) . 52 3.2.3.2 Các dòng hơn cấp (Outranking Flows) 53 3.2.3.3 PROMETHEE I – thứ tự bộ phận 54 3.2.3.4 PROMETHEE II – thứ tự toàn phần 55 3.2.3.5 Profile của các lựa chọn 56 CHƯƠNG 4. XÂY DỰNG CP BẰNG PHƯƠNG PHÁP PROMETHEEMATCH . 58 3 4.1 Cách tiếp cận chính của PrometheeMatch . 58 4.2 Những cải tiến của PrometheeMatch . 59 4.2.1 Cải tiến 1 – Sử dụng PROMETHEE II để xếp hạng các tài nguyên trong cộng đồng 61 4.2.2 Cải tiến 2 – Sử dụng ngưỡng trùng lắp . 64 4.2.3 Cải tiến 3 – Giảm sự phụ thuộc vào thứ tự duyệt cộng đồng . 67 4.3 Thuật toán và sơ đồ khối . 71 4.4 Nhận xét . 74 CHƯƠNG 5. THỬ NGHIỆM và PHÂN TÍCH KẾT QUẢ . 76 5.1 Dữ liệu thực nghiệm 76 5.2 Các tiêu chí đánh giá . 77 5.2.1 Tiêu chí popRank (Popularity Rank) – TC1 77 5.2.2 Tiêu chí avgRating (average Rating) – TC2 78 5.2.3 Tiêu chí uniqueness – TC3 79 5.3 Cách thức tiến hành thực nghiệm . 80 5.4 Phân tích kết quả . 81 5.4.1 Phương pháp 1, 2, và 3 . 81 5.4.2 Phương pháp 4 – PrometheeMatch 82 5.4.2.1 Sự ảnh hưởng trọng số lên các tiêu chí: 83 5.4.2.2 So sánh với 3 phương pháp hiện có . 88 5.5 Tổng kết . 92 CHƯƠNG 6. KẾT LUẬN và HƯỚNG PHÁT TRIỂN 93 6.1 Kết luận 93 6.2 Đề xuất hướng phát triển 93 TÀI LIỆU THAM KHẢO 95

pdf21 trang | Chia sẻ: maiphuongtl | Lượt xem: 1787 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận văn Nghiên cứu xây dựng đặc trưng cộng đồng trong các hệ thống tư vấn thông tin, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
14 CHƯƠNG 2. TƯ VẤN THÔNG TIN DỰA TRÊN LỌC CỘNG TÁC 2.1 Tư vấn thông tin dựa trên lọc cộng tác CF phát triển rất nhanh và phổ biến trong hầu hết các hệ thống tư vấn [3], [20]. Trong CF, dữ liệu đầu vào của hệ thống là một tập đánh giá của người dùng trên các tài nguyên. Dựa trên các đánh giá này, người dùng có thể được so sánh với nhau, hình thành nên khái niệm người dùng tương đồng. Và cũng dựa trên các đánh giá này, tài nguyên cũng được so sánh với nhau, hình thành nên khái niệm tài nguyên tương đồng. Điểm đánh giá tài nguyên của một người dùng có thể được dự đoán dựa trên các đánh giá của các người dùng “lân cận” hoặc các tài nguyên “gần gũi”. Chúng ta có thể phân các phương pháp dự đoán điểm đánh giá của một người dùng cho một tài nguyên ra làm 3 cách tiếp cận chính:  Dựa trên người dùng (User-based)  Dựa trên tài nguyên (Item-based)  Dựa trên mô hình (Model-based) Những cách tiếp cận này được mô hình hóa và so sánh trong phần này. Hình 2.1 mô tả bảng dữ liệu đánh giá của người dùng lên tài nguyên. Gọi U là tập N người dùng, I là tập M tài nguyên và R là tập các đánh giá rui của người dùng u  U lên tài nguyên i  I. Su  I đại diện cho một tập tài nguyên mà người dùng u đã đánh giá. I U I1 … Ij … IM u1 r11 … r1j … r1M … ui ri1 … rij … riM … uN rN1 .. rNj … rNM Hình 2.1: Ma trận đánh giá R của người dùng lên tài nguyên 15 Mục tiêu của các phương pháp CF là có thể dự đoán đánh giá pai của một người dùng a lên một tài nguyên i. Người dùng a được giả định là hiệu lực (active), nghĩa là người này đã đánh giá một vài tài nguyên, vì vậy Sa  . Tài nguyên được dự đoán thì chưa được biết đối với người dùng a, do đó i  Sa. (Hình 2.2) Hình 2.2: Quy trình CF Hình 2.2 mô tả quy trình CF bao gồm 2 nhiệm vụ chính là:  Dự đoán: cho ra giá trị Paj thể hiện đánh giá có tiềm năng nhất của người dùng a lên tài nguyên j.  Tư vấn: cho ra danh sách N tài nguyên {TiN} mà người dùng a thích nhất. 2.1.1 Cách tiếp cận dựa trên người dùng (User-based approaches) Theo cách tiếp cận dựa trên người dùng [3], việc dự đoán đánh giá của một người dùng lên một tài nguyên được dựa trên các đánh giá của những người dùng “lân cận” trên tài nguyên đó. Vì vậy một độ đo tương đồng giữa những người dùng cần được định nghĩa trước khi một tập những người dùng hàng xóm gần nhất được chọn ra. Độ đo tương đồng này sẽ được thảo luận ở phần (2.4.4). Bây giờ, gọi sim(a, u) là độ tương đồng giữa người dùng a và u. Số lượng những người dùng hàng xóm cần xem xét thường được xác lập bởi một tham số hệ thống, được ký hiệu K. Vì vậy 16 tập hàng xóm của người dùng a, ký hiệu là Ta, được tạo bởi K người dùng có độ tương đồng lớn nhất đối với a. Một cách khả thi để dự đoán đánh giá của người dùng a lên tài nguyên i là sử dụng tổng trọng số các đánh giá của những hàng xóm gần nhất u  Ta đã đánh giá tài nguyên i: (2.1) Để xem xét sự khác nhau trong việc sử dụng thang đánh giá của những người dùng khác nhau, việc dự đoán dựa trên độ lệch từ đánh giá trung bình được đề xuất. pai có thể được tính bằng tổng của đánh giá trung bình của người dùng a với tổng trọng số của các độ lệch từ đánh giá trung bình của các hàng xóm đã đánh giá tài nguyên i: (2.2) là đánh giá trung bình của người dùng u (2.3) Thật vậy, giả sử rằng những tài nguyên được đánh giá có điểm giữa 1 và 5. Một người dùng có thể đánh một tài nguyên anh ta thích là 4 và tài nguyên anh ta không thích là 1. Tuy nhiên, một người dùng khác có thể đánh giá tài nguyên anh ta thích là 5 và một tài nguyên anh ta không thích là 2. Bằng việc sử dụng độ lệch từ đánh giá trung bình, ngữ nghĩa riêng của từng người, về mặt thể hiện sự ưa thích trên tài nguyên mà họ đánh giá, được giải thích tốt hơn. 17 Độ phức tạp thời gian của các tiếp cận dựa trên người dùng là O(N2xMxK) cho cấu trúc mô hình hàng xóm và O(K) cho dự đoán một đánh giá. Độ phức tạp chung là O(NxK). 2.1.2 Cách tiếp cận dựa trên tài nguyên (Item-based approaches) Gần đây, có một sự quan tâm gia tăng trong việc sử dụng cách tiếp cận dựa trên tài nguyên [25], [19], [6]. Theo cách tiếp cận này, một độ đo tương đồng giữa các tài nguyên phải được đưa ra để xác định các tài nguyên hàng xóm. Dự đoán đánh giá của một người dùng lên một tài nguyên được suy ra từ các đánh giá của người dùng đó trên các tài nguyên hàng xóm. Các độ đo tương tự khả thi sim(i, j) định nghĩa giữa các tài nguyên i và j được thảo luận ở phần 2.1.4. Cũng như cách tiếp cận dựa trên người dùng, kích thước K của tập tài nguyên hàng xóm là một tham số hệ thống, và cần được định nghĩa. Cho Ti tập hàng xóm của tài nguyên i, có 2 cách cho việc dự đoán các đánh giá mới của người dùng có thể được xem xét: 1. Sử dụng tổng trọng số (2.4) 2. Sử dụng một tổng trọng số của những độ lệch từ các đánh giá tài nguyên trung bình. (2.5) là đánh giá trung bình trên tài nguyên i (2.6) 18 Độ phức tạp thời gian của các tiếp cận dựa trên tài nguyên là O(M2xNxK) cho cấu trúc mô hình hàng xóm và O(K) cho một dự đoán đánh giá. Độ phức tạp chung O(MxK). 2.1.3 Cách tiếp cận dựa trên mô hình (Model-based approaches) Độ phức tạp bậc 2 của hai cách tiếp cận trên thì quá cao cho tập dữ liệu lớn và nhiều ứng dụng thực tế cần các dự đoán có thể được tạo ra nhanh chóng. Những yếu tố này là điểm khởi đầu cho cách tiếp cận dựa trên mô hình [4]. Ý tưởng chung là bắt nguồn từ một mô hình dữ liệu được lưu trữ (off-line) để dự đoán các đánh giá trực tuyến (on-line) nhanh nhất có thể. Mô hình đầu tiên được đề xuất bao gồm việc phân nhóm người dùng sử dụng kỹ thuật phân cụm (clustering) và sau đó việc dự đoán đánh giá một người dùng trên một tài nguyên chỉ sử dụng các đánh giá của những người dùng thuộc về cùng nhóm. Các mô hình Bayesian cũng được đề xuất để mô hình sự phụ thuộc giữa các tài nguyên. Việc phân nhóm tài nguyên được nghiên cứu kỹ trong [29]. Cũng vậy, các mô hình dựa trên các luật kết hợp cũng được nghiên cứu bởi [27] và [18]. Các thuật toán phân nhóm theo xác xuất cũng được sử dụng để cho phép người dùng thuộc về, một mức độ nào đó, các nhóm khác nhau [22], [16]. Và sự phân cấp các nhóm cũng được đề xuất, để nếu một nhóm người dùng được xem xét không có ý kiến trên một tài nguyên cụ thể, thì nhóm cao hơn có thể được xem xét [14]. Trong những tiếp cận như vậy, số lượng các nhóm là quan trọng chính yếu. Trong nhiều trường hợp, các số lượng khác nhau của các nhóm được kiểm tra, và số lượng nào dẫn đến tỉ lệ lỗi thấp nhất trong việc kiểm tra chéo sẽ được giữ. Các nhóm nói chung được biểu diễn bởi tâm của chúng, và sau đó đánh giá dự đoán của một người dùng cho một tài nguyên có thể tính trực tiếp từ đánh giá của tâm gần nhất với nó. Nếu cả hai, nhóm người dùng và nhóm tài nguyên được sử dụng, đánh 19 giá dự đoán là đánh giá trung bình, trên các tài nguyên (thuộc nhóm tài nguyên) của các người dùng (thuộc nhóm người dùng). Độ phức tạp thời gian của thuật toán dựa trên phân nhóm là O(NxMxKxL) cho giai đoạn học và O(I) cho một dự đoán đánh giá. Độ phức tạp chung, khi việc phân nhóm cả người dùng và tài nguyên được xem xét là O((N+M)xK). 2.1.4 Các độ đo tương tự (Similarity Measures) Độ tương đồng giữa người dùng và tài nguyên là định nghĩa thiết yếu trong CF. Độ đo đầu tiên được đưa ra trong [3] là độ tương đồng Pearson - tương đương với Cosine của độ lệch từ khoảng giữa. Độ tương đồng đơn giản Cosine và Manhattan cũng là những độ tương đồng truyền thống. Vì những độ tương đồng này chỉ xét tập thuộc tính chung giữa hai vector. Do đó hai vector có thể hoàn toàn tương đồng ngay cả khi chúng chỉ chia sẽ một đánh giá trên một thuộc tính. Những độ đo như vậy có khuyết điểm. Ví dụ, trong ngữ cảnh tư vấn phim, xem xét trường hợp khi một người dùng là fan của khoa học viễn tưởng trong khi một người khác chỉ xem hài kịch, hơn nữa hai người dùng này chưa đánh giá bất kỳ phim chung nào vì vậy độ tương đồng của họ là rỗng (null). Bây giờ cả hai nói rằng họ thích “Men In Black”, một phim hài kịch khoa học viễn tưởng. Do đó những người dùng này trở nên hoàn toàn tương đồng nhau theo những độ đo đã được trình bày trên, ví dụ này cho thấy họ chỉ có một điểm (phim) tham chiếu chung được đánh giá bằng nhau. Tuy nhiên, độ tương tự Jaccard không bị khuyết điểm này, vì nó đo độ chồng lấp thuộc tính của hai vector với nhau. Mặt khác, độ đo này không xem xét sự khác nhau giữa các đánh giá của hai vector. Trong trường hợp này, nếu 2 nguời dùng xem cùng một số phim nhưng có ý kiến hoàn toàn trái ngược nhau trên những phim này, thì chúng được xem là tương tự nhau theo độ tương đồng Jaccard. Khi Jaccard được kết hợp với một độ đo tương đồng khác, một hệ thống có thể thu lợi từ sự bổ sung qua lại của chúng. Ví dụ, nhân Jaccard với một độ đo tương 20 đồng khác cho ra một kết quả mới. Trong trường hợp này, Jaccard phục vụ như một trọng số. Dó đó, có thể wPearson thể hiện một độ đo Pearson trọng số - được sinh ra bởi phép nhân Pearson và Jaccard. Tương tư, wCosine và wManhattan ký hiệu tương ứng cho sự kết hợp của Jaccard với Cosine và Manhattan. Giá trị của Cosine dựa trên độ đo tương đồng nằm giữa -1 và 1 trong khi các độ đo tương đồng khác có giá trị nằm giữa 0 và 1. Các kết quả thực nghiệm cho thấy độ tương đồng kết hợp này dành cho kiểu dữ liệu có giá trị tượng trưng (ví dụ. rất thưa), thường cho kết quả tốt hơn. Trong những nhược điểm chính của hệ thống CF, chúng ta có thể đề cập đến vấn đề cold start, xuất hiện khi một người dùng mới chưa cung cấp bất cứ đánh giá nào hoặc một tài nguyên mới chưa nhận bất kỳ đánh giá nào từ người dùng. Hệ thống thiếu dữ liệu để cho ra các tư vấn phù hợp (ví dụ, hệ thống tư vấn MovieLens đòi hỏi ít nhất 15 đánh giá trước khi nó có thể cung cấp tư vấn). Đối với vấn đề người dùng mới, [21][21] đề xuất khai thác dữ liệu nhân khẩu học về người dùng chẳng hạn như tuổi, vị trí, nghề nghiệp để cải tiến các tư vấn ban đầu được cung cấp cho một người dùng mới, mà họ chưa đánh giá bất kỳ tài nguyên nào. Vấn đề tài nguyên mới và người dùng mới có thể xử lý bằng cách sử dụng cách tiếp cận tư vấn lai (Hybrid Filtering). Cách tiếp cận này là sự kết hợp của hai kiểu CB và CF theo một cách nào đó để cho ra kết quả tốt hơn. 2.2 Tạo lập cộng đồng Ở phần 2.1.3 luận văn đã đề cập đến các phương pháp theo hướng tiếp cận dựa trên mô hình, trong phần này luận văn sẽ trình bày các phương pháp thuộc mô hình phân nhóm (clustering model) dùng để tạo lập cộng đồng (nhóm người dùng) trong hệ thống. Bên cạnh đó, luận văn cùng trình bày mô hình cộng đồng đa tiêu chí. 2.2.1 Mô hình phân nhóm (clustering model) Trong CF ta có thể phân nhóm người dùng hoặc tài nguyên theo các kỹ thuật phân nhóm, sau đó dựa trên các nhóm người dùng hoặc tài nguyên hoặc kết hợp cả 21 hai, các tư vấn được tạo ra. Các kỹ thuật phân nhóm được trình bày chi tiết trong [29]. Ở đây luận văn sẽ trình bày 2 kỹ thuật cơ bản nhất được sử dụng trong nhiều ứng dụng CF là phương pháp hàng xóm gần nhất và phương pháp khoảng cách tâm. Hai phương pháp này thành lập cộng động dựa trên khoảng cách giữa các người dùng, và khoảng cách này được tính bằng độ tương đồng hoặc cosine của các vector đánh giá của người dùng. 2.2.1.1 Phương pháp phân nhóm hàng xóm gần nhất (nearest neighbor clustering) Đây là phương pháp được sử dụng nhiều nhất [3], [4], [25]. Phương pháp này sử dụng hệ số k làm ngưỡng xác lập cộng đồng, k có thể là ngưỡng số lượng thành viên của một nhóm (gọi tắc là ngưỡng thành viên) hoặc ngưỡng khoảng cách giữa 2 thành viên trong một nhóm (gọi tắc là ngưỡng khoảng cách). Đầu tiên xuất phát từ người dùng u, hệ thống tìm ra k người dùng có khoảng cách gần u nhất (trong trường hợp k là ngưỡng thành viên) hoặc tất cả người dùng có khoảng cách không lớn hơn k (trong trường hợp k là ngưỡng khoảng cách) để hình thành một cộng đồng. Ví dụ ở hình 2.3, ta thấy các phần tử (đại diện cho người dùng) được phân thành 3 nhóm C1, C2, C3 với k = 6 (trong trường hợp k là ngưỡng thành viên) hoặc khoảng cách giữa hai phần tử bất kỳ trong một nhóm phải nhỏ hơn k (trong trường hợp k là ngưỡng khoảng cách). Hình 2.3: Phân nhóm bằng phương pháp hàng xóm gần nhất 22 2.2.1.2 Phương pháp phân nhóm khoảng cách tâm (k-mean clustering) Phương pháp này sẽ phân người dùng trong hệ thống thành k nhóm, bắt đầu bằng việc chọn tâm của k nhóm một cách ngẫu nhiên. Sau đó lần lượt gán mỗi người dùng vào nhóm có khoảng cách từ tâm của nó đến người dùng đó là gần nhất. Tâm của mỗi nhóm chính là vector trung bình của của các vector đánh giá của tất cả người dùng hiện có trong nhóm. Ví dụ ở hình 2.4 cho thấy, hệ thống có 3 cộng đồng và người dùng u sẽ thuộc về cộng đồng C3 vì khoảng cách từ u đến tâm C3 là ngắn nhất so với khoảng cách từ u đến tâm của C1 và C2. Hình 2.4: Phân nhóm bằng phương pháp k-mean Hai phương pháp trên đơn giản và hiệu quả trong phần lớn các trường hợp, ngoại trừ nhược điểm về thời gian và chi phí vì phải tính toán trên toàn bộ ma trận đánh giá R. 2.2.2 Tạo lập cộng đồng dựa trên mô hình cộng đồng đa tiêu chí Với hai phương pháp phân nhóm theo hàng xóm gần nhất và khoảng cách tâm thì quá trình tạo lập cộng đồng chỉ dựa trên một tiêu chí là điểm đánh giá. Trong trường hợp người dùng mới đăng nhập vào hệ thống, khi đó hệ thống chưa có thông tin đánh giá của người dùng. Để tạo lập cộng đồng, hệ thống phải cung cấp các tài nguyên để người dùng đánh giá và dựa trên những thông tin này để thành lập cộng 23 đồng. Theo cách này người dùng phải tốn khá nhiều công sức trước khi được xếp vào một cộng đồng nào đó. Ngoài ra, thông tin tư vấn mà nguời dùng nhận được không có tính đa dạng và phong phú (vì chỉ dựa trên một tiêu chí là điểm đánh giá). Mô hình không gian cộng đồng đa tiêu chí có thể khắc phục được những hạn chế trên [21]. Với cách tiếp cận này, mỗi thuộc tính trong profile (tuổi tác, nghề nghiệp, nơi cư trú, trình độ, chủ đề quan tâm, sở thích, thông tin phản hồi …) đều có thể được sử dụng như một tiêu chí để thành lập cộng đồng. Như vậy, một người dùng có thể thuộc về nhiều cộng đồng khác nhau và tập hợp tất cả những cộng đồng trong hệ thống hình thành nên một không gian cộng đồng và sẽ được biểu diễn bằng một bảng cộng đồng (-community table) Tmxn.  U   j  n u1 … ui uij … um Hình 2.5: Bảng cộng đồng Tmxn Trong đó, ui  U là tập người dùng, j  A là tập tiêu chí dùng để phân nhóm hoặc phân hoạch người dùng, mỗi giá trị T[ui, j] thể hiện người dùng ui thuộc về cộng đồng tiêu chí j. Với những tiêu chí đơn giản (ví dụ: tuổi, nghề nghiệp, nơi cư trú …) hệ thống có thể phân nhóm người sử dụng bằng cách so sánh trực tiếp. Ngược lại, với những tiêu chí phức tạp (ví dụ: nền tảng kiên thức, thông tin đánh giá, …) hệ thống có thể sử dụng các phương pháp hàng xóm gần nhất, khoảng cách tâm, … để phân hoạch người sử dụng. 24 Trong trường hợp người dùng mới chưa có thông tin gì về đánh giá, tiếp cận này còn đưa ra một phương pháp quy nạp dựa trên luật để suy diễn ra cộng đồng theo tiêu chí đánh giá của người dùng dựa trên những cộng đồng theo tiêu chí khác. 2.3 Định vị người dùng mới vào cộng đồng Khi một người dùng mới đăng ký vào hệ thống, để cung cấp những thông tin tư vấn dựa trên cộng đồng, hệ thống phải định vị họ vào các cộng đồng thích hợp. Đối với những cộng đồng dựa vào tiêu chí là các giá trị nhân khẩu học (tuổi, nghề nghiệp, nơi cư trú …) thì việc định vị người dùng vào cộng đồng là tương đối đơn giản. Tuy nhiên, trong các phương pháp CF cổ điển, việc thành lập cồng đồng dựa vào tiêu chí đánh giá (điểm đánh giá của người dùng lên tài nguyên) thì tại thời điểm này, cộng đồng theo tiêu chí đánh giá của người dùng mới vẫn còn chưa biết. Vì thế, hệ thống không thể cung cấp tư vấn thích hợp. Để giải quyết vấn đề này, hiện nay có nhiều cách tiếp cận khác nhau [24]. 2.3.1 Khai thác thông tin thăm dò Theo phương pháp này hệ thống yêu cầu người dùng mới đánh giá một số lượng tối thiểu các tài nguyên. Hệ thống có thể đưa ra một danh sách tài nguyên đã được chọn một cách ngẫu nhiên hoặc chọn theo một tiêu chí nào đó để người dùng đánh giá. Tuy nhiên cách này có thể gây khó khăn cho người dùng trong trường hợp người dùng không thể đưa ra những đánh giá cụ thể cho một số tài nguyên nào đó vì chưa biết gì về những tài nguyên đó hoặc nhiều lý do khác. Vì vậy người dùng mới cũng có thể tự chọn những tài nguyên trong phạm vi hiểu biết của mình để đánh giá. 2.3.2 Cung cấp profile mẫu Trước tiên, hệ thống sẽ xây dựng sẵn những profile mẫu – profile là một cấu trúc mô tả đặc trưng của người dùng - và sau đó dựa trên những giá trị nhân khẩu học (tuổi, nghề nghiệp, …) hay trả lời một số câu hỏi mà người dùng sẽ được tự động gán cho một trong những profile mẫu. Xuất phát từ profile này, hệ thống sẽ áp 25 dụng sự thích nghi cá nhân [21] nhằm cung cấp những tài nguyên phù hợp cho người dùng, và quá trình phản hồi thông tin đã có thể được bắt đầu để sau đó được dùng cho việc định vị. Nhìn chung, các phương pháp nêu trên đều yêu cầu người dùng phải tốn nhiều thời gian và công sức để được định vị vào một cộng đồng ban đầu theo tiêu chí đánh giá mà cũng chưa chắc đã thực sự phù hợp. Hiện nay, có một cách tiếp cận có thể khắc phục được vấn đề này. 2.3.3 Phương pháp suy diễn cộng đồng Phương pháp này dựa trên một mô hình cộng đồng đa tiêu chí (phần 2.2.2). Với U là tập người dùng, A là tập tiêu chí, một vector định vị của người dùng u, ký hiệu là Pu, là danh sách n cộng đồng của u trong các không gian tương ứng: Pu = [Gα] α  A, trong đó, Gα là những cộng đồng theo tiêu chí α mà u thuộc vào. Khi có một người dùng mới đăng ký, vector định vị của họ có thể không hoàn hảo, nghĩa là vẫn còn một số cộng đồng chưa xác định đặc biệt là cộng đồng theo tiêu chí đánh giá. Để có thể định vị người dùng mới vào trong cộng đồng theo tiêu chí đánh giá mà không cần họ phải cung cấp những thông tin phản hồi, phương pháp này sử dụng kỹ thuật quy nạp dựa trên luật. Nghĩa là dựa vào các tiêu chí đơn giản có sẵn trong profile (tuổi, nghề nghiệp, …) để suy diễn ra các giá trị còn thiếu trong vector định vị trong đó có giá trị đánh giá. Từ đó có thể định vị người dùng mới vào trong cộng đồng theo thiêu chuẩn đánh giá này. Phương pháp này đã phần nào làm giảm công sức của người dùng trong quá trình định vị và tạo nên sự đa dạng hóa về các thông tin tư vấn mà hệ thống cung cấp cho người dùng. Nó là một phương thức giao tiếp mới bên cạnh thông tin phản hồi. 2.3.4 Định vị dựa trên CP Khuyết điểm của 3 phương pháp trên là việc các cộng đồng được tạo ra giống như những hộp đen đối với người dùng [10]. Nghĩa là họ hoàn toàn không biết quá 26 trình thành lập cộng đồng dựa trên tiêu chí đánh giá được diễn ra như thế nào? Họ được hệ thống sắp xếp vào một cộng đồng nào đó vì lý do gì? Hiện nay, có một cách thức định vị mới có thể khắc phục được khuyết điểm này là dựa trên CP [9]. Trong các phần tiếp theo luận văn sẽ trình bày chi tiết hình thức định vị này, vì đây là trọng tâm của luận văn. CP là khái niệm dùng để chỉ những tài nguyên tiêu biểu nhất được dùng làm đặc trưng, mô tả tóm tắt một cộng đồng. Các tài nguyên này được trích ra theo một số tiêu chí nào đó từ tập các tài nguyên mà cộng đồng đã đánh giá. Vì CP mô tả nét đặc trưng của mỗi cộng đồng, nên nó có thể giúp cho người dùng hiểu và phân biệt một cách cơ bản các cộng đồng với nhau. Các tiêu chí cơ bản cho việc trích chọn tài nguyên làm đặc trưng trong hầu hết các hệ thống CF được trình bày dưới đây: Tính Phổ biến (Popularity) của tài nguyên: tiêu chí này thể hiện mức độ người dùng trong cộng đồng tham gia đánh giá tài nguyên. Số lượng người dùng tham gia đánh giá tài nguyên càng cao thì tính phổ biến càng cao. Giả sử cộng đồng có n người dùng khi đó tính phổ biến của tài nguyên thuộc đoạn [1, n], tính phổ biến nhỏ nhất khi chỉ có một người dùng đánh giá và lớn nhất khi được tất cả người dùng trong cộng đồng đánh giá. Chất lượng (AvgRating) của tài nguyên: tiêu chí này thể hiện điểm đánh giá trung bình của người dùng trong cộng đồng đã đánh giá tài nguyên. Điểm trung bình càng cao thì chất lượng càng tốt. Tiêu chí chất lượng có thang điểm trùng với thang điểm đánh giá tài nguyên của hệ thống. Tính Duy nhất (Uniqueness) của tài nguyên: tiêu chí này thể hiện mức độ trùng lắp các tài nguyên giữa các CP với nhau. Nếu sự trùng lắp càng lớn thì tính duy nhất càng thấp. Giả sử hệ thống có k cộng đồng và mỗi cộng đồng có m tài nguyên làm CP khi đó, tính duy nhất sẽ thuộc đoạn [k, mk], nghĩa là tính duy nhất nhỏ nhất bằng n khi tất cả các CP đều giống nhau và tính duy nhất lớn nhất bằng mk 27 khi tất cả các CP đều phân biệt với nhau. Tính duy nhất càng cao thì mức độ phân biệt giữa các CP trong hệ thống càng lớn. Trong phần tiếp theo, luận văn sẽ giới thiệu 3 phương pháp xây dựng CP được giới thiệu trong các nghiên cứu [9], đồng thời phân tích ưu, nhược điểm của chúng dựa trên 3 tiêu chí đã đề cập trên. Bài toán xây dựng CP: Với C = { Ci }: Ci là cộng đồng hay nhóm người sử dụng. I = { Ij }: Ij là tài nguyên (văn bản, phim, …) Với mỗi cộng đồng Ci  C, chúng ta cần tìm CPi - là những tài nguyên Ij  I được dùng làm đặc trưng cho Ci. 2.3.4.1 Phương pháp 1 - POP (Porpularly Rated) Đây là phương pháp dựa trên số lượng người dùng trong mỗi cộng đồng đã đánh giá các tài nguyên. Trong phương pháp này mỗi cộng đồng Ci  C sẽ được mô tả bởi n tài nguyên được nhiều người dùng trong cộng đồng đánh giá nhất. Thuật toán 1 Input: C : là tập k cộng đồng I : là tập m tài nguyên của hệ thống n : số lượng tài nguyên cần lấy cho mỗi CP Output: { CPk } : Tập đặc trưng cộng đồng của hệ thống Với mỗi Ci  C, (S1) Lấy tất cả tài nguyên Ij  I sao cho có ít nhất một người dùng trong Ci đã đánh giá Ij. Xếp hạng các Ij theo số người dùng trong Ci đã đánh giá. (S2) Lấy n tài nguyên có thứ hạng cao nhất làm CPi - đặc trưng của cộng 28 đồng Ci. (S3) Đánh dấu thứ tự các tài nguyên được chọn làm CPi. Tài nguyên thứ j được thêm vào là tài nguyên đặc trưng thứ j của cộng đồng Ci. Nhận xét: Ưu điểm của phương pháp POP là đơn giản, dễ cài đặt vì không tốn nhiều thời gian và công sức để tính toán số lượng người dùng tham gia đánh giá các tài nguyên, và hiệu quả trong trường hợp các hệ thống chỉ quan tâm đến tính phổ biến. Hơn nữa, phương pháp này cho ra CP có tính phổ biến rất cao (vì bản chất của phương pháp là dựa vào số lượng người sử dụng). Hạn chế của phương pháp POP là trong một số trường hợp, chất lượng của CP có thể không cao. Ví dụ, có thể xảy ra trường hợp một tài nguyên được nhiều người dùng đánh giá nhưng điểm trung bình đánh giá không cao, hoặc một tài nguyên nào đó mà đa số những người dùng đều rất ghét, vì thế họ cho điểm rất thấp. Hạn chế thứ hai của phương pháp này là CP có tính duy nhất thấp vì một tài nguyên được nhiều người dùng ở một cộng đồng quan tâm thì cũng có khả năng được nhiều người dùng ở cộng đồng khác quan tâm nên tài nguyên này có thể làm CP của nhiều cộng đồng dẫn đến mức độ trùng lắp các tài nguyên giữa các CP cao nghĩa là tính duy nhất thấp. 2.3.4.2 Phương pháp 2 – HR20 (High Ratings 20) Phương pháp HR20 dựa trên điểm đánh giá trung bình của tài nguyên. Phương pháp này sẽ chọn ra n tài nguyên có điểm trung bình đánh giá cao nhất và số lượng người dùng đánh giá không nhỏ hơn 20 để làm CP. Thuật toán 2: Input: C : là tập k cộng đồng I : là tập m tài nguyên của hệ thống n : số lượng tài nguyên cần lấy cho mỗi CP Output: {CPk } : tập đặc trưng cộng đồng của hệ thống 29 Với mỗi Ci  C, (S1) Lấy tất cả các tài nguyên Ij  I mà mỗi tài nguyên này có ít nhất 20 người sử dụng trong Ci đã đánh giá. Xếp hạng các tài nguyên này theo điểm đánh giá trung bình của Ci cho mỗi tài nguyên. (S2) Lấy n tài nguyên được xếp hạng cao nhất làm CPi - đặc trưng của cộng đồng Ci. (S3) Đánh dấu thứ tự các tài nguyên được chọn làm CP. Tài nguyên có thứ hạng j là tài nguyên đặc trưng thứ j của cộng đồng Ci. Nhận xét: Phương pháp HR20 hướng đến tiêu chí chất lượng, do đó nếu sử dụng phương pháp này sẽ cho ra CP có chất lượng rất cao. Tuy nhiên cũng như phương pháp POP, CP thu được từ phương pháp này có tính duy nhất không cao – vì khả năng trùng lắp tài nguyên nhiều. Về tính phổ biến thì với ngưỡng phổ biến 20, phương pháp này cho ra CP có tính phổ biến không quá thấp, tuy nhiên để CP có tính phổ biến cao hơn chúng ta có thể tăng ngưỡng phổ biến (>20), nhưng nếu ngưỡng phổ biến quá cao sẽ khiến cho chất lượng của CP giảm - vì những tài nguyên có điểm đánh giá trung bình cao nhưng số lượng người dùng tham gia đánh giá không vượt ngưỡng phổ biến bị loại bỏ, do đó làm giảm chất lượng của CP. 2.3.4.3 Phương pháp 3 – avgMatch Phương pháp này nhằm đạt được tính duy nhất tối đa và CP được xây dựng dựa trên điểm đánh giá trung bình của tài nguyên. Với mỗi tài nguyên Ij  I, cộng đồng Ci  C sẽ thêm Ij vào danh sách đặc trưng của nó nếu một trong hai điều kiện sau đây được thỏa:  Ij chưa được thêm vào bất kỳ cộng đồng nào khác và điểm trung bình của Ci đã đánh giá Ij là lớn nhất so với điểm trung bình của Ci đã đánh giá tất cả các tài nguyên khác nằm trong tập tài nguyên chưa được xét của Ci. 30  Ij đã được thêm vào cộng đồng Ck nhưng Ij thích hợp với Ci hơn Ck (điểm trung bình của Ci đã đánh giá Ij lớn hơn điểm trung bình của Ck đã đánh giá Ij). Thuật toán 3 Input: C : là tập k cộng đồng I : là tập m tài nguyên của hệ thống n : số lượng tài nguyên cần lấy cho mỗi CP Output: {CPk } : tập đặc trưng cộng đồng của hệ thống (S1) Đặt mỗi tài nguyên trong I là “chưa khớp”. (S2) Với mỗi cộng đồng Ci  C, xếp hạng tất cả tài nguyên trong I dựa trên điểm đánh giá trung bình của cộng đồng Ci cho tài nguyên đó. Giảm tuyến tính giá trị điểm trung bình đánh giá của Ci cho các tài nguyên có số lượng đánh giá nhỏ hơn 50. (S3) Trong khi còn tồn tại một tài nguyên “chưa khớp” trong I. Với mỗi cộng đồng Ci thuộc C, (S3.1) Trong khi Ci chưa tìm thấy một tài nguyên để thêm, Ci để xuất tài nguyên Ij có thứ hạng cao nhất và chưa được xét bởi Ci. (S3.1.1) Ij chấp nhận đề xuất của Ci nếu nó là “chưa khớp” hoặc nếu nó thích hợp với Ci hơn cộng đồng hiện tại nó được “khớp”. (S3.1.2) Nếu Ij chấp nhận đề xuất của Ci, đặt Ij là “khớp”, loại bỏ Ij ra khỏi bất kỳ cộng đồng nào trước đó mà Ij được “khớp” và thêm Ij vào Ci. (S3.2) Đánh dấu thứ tự các tài nguyên được thêm vào trong Ci. Tài nguyên thứ n được thêm vào trong Ci là tài nguyên điển hình nhất thứ n của Ci (S4) Mỗi Ci lấy ra n tài nguyên điển hình nhất. 31 Một cách trực quan, chúng ta tin tưởng 100 đánh giá với điểm trung bình là 4.5 hơn là chỉ có một đánh giá với điểm 5. Để mô hình hóa điều này avgMatch thực hiện việc giảm tuyến tính điểm trung bình cho những tài nguyên có điểm đánh giá nhỏ hơn 50 (xem ở bước S2). Những hệ thống khác nhau có thể chọn các ngưỡng khác với 50 hoặc các kỹ thuật giảm tuyến tính phù hợp với nó. Cụ thể, cách giảm tuyến tính điểm đánh giá trung bình của Ci như sau: Gọi Avg là điểm trung bình của nhóm Ci đã đánh giá tài nguyên Ij Num_ratings là số người sử dụng trong nhóm Ci đã đánh giá Ij Threshold là ngưỡng giảm tuyến tính. iF (num_ratings < threshold) then Avg = Avg * (num_ratings/threshold) End if Nhận xét: Phương pháp avgMatch được xây dựng nhằm khắc phục tình trạng trùng lắp tài nguyên giữa các CP trong hệ thống. Do đó, CP của mỗi cộng đồng là duy nhất, phân biệt giữa các cộng đồng với nhau. Hạn chế của phương pháp avgMatch là tính phổ biến của các tài nguyên được chọn làm CP có thể không cao. Vì phương pháp này dựa chủ yếu vào điểm trung bình đánh giá của tài nguyên nên có trường hợp một tài nguyên có chất lượng cao nhưng tính phổ biến lại thấp hơn so với những tài nguyên khác (ví dụ, một số lượng ít những người dùng trong cộng đồng rất thích tài nguyên này nên cho điểm rất cao). Hạn chế thứ hai của phương pháp avgMatch là trả về các tài nguyên được chọn làm CP có thể có chất lượng không cao. Mặc dù phương pháp này dựa vào điểm đánh giá trung bình của tài nguyên những vẫn có thể xảy ra trường hợp tài nguyên được chọn có chất lượng không cao so với những tài nguyên khác. Ví dụ, nếu hai cộng đồng C1 và C2 có điểm đánh giá trung bình tài nguyên Ij là bằng nhau, 32 cộng đồng nào xét Ij trước thì Ij sẽ được thêm vào CP của cộng đồng đó. Khi đó, cộng đồng còn lại sẽ phải xét những tài nguyên có chất lượng thấp hơn Ij. Nếu tình huống này xảy ra nhiều lần thì sẽ gặp phải vấn đề: CP của một cộng đồng có chất lượng rất cao, còn CP của cộng đồng khác có chất lượng rất thấp. Hạn chế cuối cùng của phương pháp avgMatch đó là CP của mỗi cộng đồng phụ thuộc vào thứ tự duyệt các cộng đồng. Nghĩa là, nếu thứ tự duyệt các cộng đồng Ci  C khác nhau thì có thể cho ra kết quả tập CP của hệ thống khác nhau. 2.4 Quan điểm xây dựng CP như giải bài toán ra quyết định đa tiêu chí Nhìn chung, các phương pháp POP, HR20, avgMatch đều hướng đến những tiêu chí riêng, có thể đáp ứng được bài toán xây dựng CP trong một số tình huống cụ thể :  Phương pháp POP áp dụng cho các hệ thống chỉ quan tâm đến tính phổ biến của CP.  Phương pháp HR20 đáp ứng các hệ thống quan tâm đến chất lượng CP, và  Phương pháp avgMatch dành cho các hệ thống muốn đạt được tính duy nhất tối đa. Tuy nhiên trong thực tế hiếm khi người ta chỉ quan tâm đến một tiêu chí mà thông thường người ta mong muốn có sự dung hòa nhiều tiêu chí khác nhau theo một cách thức nào đó và cho phép người xây dựng hệ thống ấn định mức độ quan trọng của từng tiêu chí. Với nhu cầu này thì phương pháp POP không thể đáp ứng được vì phương pháp này chỉ cho ra CP có tính phổ biến cao nhất, còn chất lượng cũng như tính duy nhất thì không thể kiểm soát được, trong một số trường hợp cho kết quả rất kém trên 2 tiêu chí này. Phương pháp HR20 hướng đến tiêu chí chất lượng CP, mặc dù có sử dụng ngưỡng 20 để tránh tình trạng tính phổ biến của CP quá thấp, tuy nhiên việc sử dụng ngưỡng 20 cố định khiến cho phương pháp này không được linh hoạt. Vì lẽ đó 33 trong [1] tác giả đã cải tiến HR20 thành HAR (High Average Rating) bằng cách dùng ngưỡng d thay cho 20. Khi đó, với ngưỡng d có thể thay đổi, người thiết kế hệ thống có thể điều khiển được tính phổ biến theo ý muốn, tuy nhiên sự kết hợp này cũng chưa phải là sự thỏa hiệp đúng nghĩa, hơn nữa HAR cũng chưa kiểm soát được tính duy nhất của CP. Phương pháp avgMatch hướng đến việc đạt được tính duy nhất tối đa, nghĩa là tập CP của hệ thống không có sự trùng lắp. Tuy nhiên không phải lúc nào hệ thống cũng mong muốn có độ duy nhất tối đa, trong trường hợp hệ thống mong muốn tính duy nhất chỉ đảm bảo ở một mức nào đó (chẳng hạn cho phép 50% tài nguyên trùng lắp) thì sao? Trong những tình huống này phương pháp avgMatch không đáp ứng được. Nói cách khác, phương pháp avgMatch chỉ cho tính duy nhất tối đa chứ không điều khiển được tính duy nhất theo ý muốn của người thiết kế hệ thống. Bên cạnh đó việc kết hợp hai tiêu chí tính phổ biến và chất lượng của tài nguyên bằng cách giảm tuyến tính điểm đánh giá trung bình, phần nào tăng tính hợp lý của việc xếp hạng tài nguyên, tuy nhiên đó cũng chưa phải là sự thỏa hiệp linh hoạt. Việc chọn ra các tài nguyên làm CP chưa nhất quán, còn phụ thuộc vào thứ tự duyệt của cộng đồng. Trong [1] tác giả cũng đã đề xuất một phương pháp cải tiến từ phương pháp avgMatch là freq_avgMatch. Phương pháp cải tiến này đã đưa ra một cách kết hợp 2 tiêu chí tính phổ biến và chất lượng của tài nguyên theo hướng xác suất thống kê nhằm cải thiện hai tiêu chí này nhưng đồng thời vẫn đảm bảo tính duy nhất tối đa. Ngoài ra phương pháp freq_avgMatch cũng đưa ra cách xử lý khuyết điểm tập CP của hệ thống phụ thuộc vào thứ tự duyệt cộng đồng. Phương pháp cải tiến này đã cho ra kết quả tốt hơn so với phương pháp avgMatch, tuy nhiên vẫn chưa cho phép điều khiển tính duy nhất theo ý muốn của người thiết kế hệ thống. Với nhu cầu tìm CP không phải đáp ứng một tiêu chí duy nhất mà thỏa mãn nhiều tiêu chí. Đặc biệt là những tiêu chí này xung đột với nhau, nghĩa là trong hầu hết các trường hợp tập CP của hệ thống không thể đạt được sự tối ưu ở cả 3 tiêu chí, 34 nếu như tính phổ biến tối ưu thì có chất lượng và tính duy nhất rất thấp, hoặc nếu có tính duy nhất tối ưu thì hai tiêu chí còn lại rất thấp. Điều này luôn dẫn đến một kết cục là tìm tập CP của hệ thống thỏa hiệp tốt nhất 3 tiêu chí trên và bài toán xây dựng CP mặc nhiên chính là bài toán đa tiêu chí. Chương 3 tiếp theo, luận văn sẽ giới thiệu bài toán đa tiêu chí cùng với các phương pháp hỗ trợ quyết định đa tiêu chí, đặc biệt là phương pháp PROMETHEE mà luận văn sẽ sử dụng để phát triển một phương pháp xây dựng CP mới.

Các file đính kèm theo tài liệu này:

  • pdf5_2.pdf
  • pdf0_2.pdf
  • pdf10_3.pdf
  • pdf1_2.pdf
  • pdf2_2.pdf
  • pdf3.pdf
  • pdf4.pdf
  • pdf6_4.pdf
  • pdf7.pdf
  • pdf8.pdf
  • pdf9.pdf
Tài liệu liên quan