Mô hình hệ thống sử dụng hệ tiêu chuẩn (multi-criteria)

Một phần của tài liệu Mô hình hóa người dùng và ứng dụng bộ lọc cộng tác trong hệ thống gợi ý tin tức (Trang 26)

2.3.2.1. Giới thiệu hệ thống

. Multiple Criteria Decision Analysis (MCDA) là lĩnh vực được quan tâm trong kỹ thuật tạo quyết định, hướng vào việc phân tích, mô hình hóa giá trị hệ thống của người ra

quyết định, hỗ trợ quá trình ra quyết định. Do vậy một cơ chế kết hợp giữa MCDA và bộ lọc cộng tác đã ra đời [21].

Phương pháp đưa ra tăng hiệu suất của các hệ thống gợi ý tính điểm (Multi-rating Recommender Systems), hệ quả của hai nguyên nhân chính: việc tạo nhóm người dùng thực hiện trước thuật toán bộ lọc cộng tác mà những hồ sơ người dùng lại là kết quả quá trình xử lý mô hình dựa trên giá trị của từng cá nhân áp dụng kỹ thuật MCDA.

2.3.2.2. Các bƣớc xử lý

Hệ thống xử lý đa tiêu chuẩn hoạt động theo 4 bước như trong hình minh họa 2.2, gồm có: thu thập thông tin, mô hình hóa người dùng, phân cụm, tạo gợi ý.

Hình 2.2: Kiến trúc hệ thống xử lý đa tiêu chuẩn[21]

Bƣớc 1: Thu nhận thông tin

Ở bước đầu, có 2 kiểu dữ liệu được thu thập từ người dùng. Kiểu thứ nhất là dữ liệu mô tả sở thích dưới dạng điểm số đánh giá, kiểu thứ hai là thứ tự của các mục ưu tiên.

Tập người dùng U = {u1, u2, u3, … , un} được yêu cầu đánh giá cho các đối tượng thuộc tập tham khảo AR. Với mỗi đối tượng được chọn Ai∈ AR, i=1,2,…,m (m là số đối tượng trong tập AR) người dùng u đánh giá một số điểm là rij, với mỗi tiêu chuẩn cj, j=1,2,…,k, theo một tỉ lệ đo định trước. Ngoài những đánh giá cá nhân này, người dùng còn được yêu cầu sắp xếp các đối tượng của tập tham chiếu theo thứ tự ưu tiên giảm dần, cung cấp trình tự ưu tiên yếu. Sau quá trình đánh giá cho điểm, thu được một ma trận

được tạo ra làm đầu vào cho bước 2.

Bƣớc 2: Mô hình hóa ngƣời dùng

Ma trận điểm số từ cuối bước 1 được chuyển sang phân tích và xử lý trong bước 2, đưa tới vector k-chiều cho mỗi người dùng, gọi là vector trọng số ý nghĩa hoặc vector trọng số. Trong suốt bước mô hình hóa người dùng theo tiêu chuẩn, hệ thống áp dụng

thuật toán UTA* để phân tích hướng ra quyết định của người dùng. UTA* là một trong những thuật toán tiêu biểu, phổ biến của giải thuật bất đồng – đồng nhất (Disaggregation- Aggregation).

Hình 2.3 – Phương pháp bất đồng – đồng nhất[21]

Bước đầu tiên của phương pháp bất đồng – đồng nhất là giải thích cụ thể vấn đề cần giải quyết. Có 3 khai báo thường đi cùng các vấn đề trong hệ thống gợi ý. Đó là: lựa chọn 1 hoặc nhiều hành động tiềm năng từ tập hành động A, xếp hạng chúng theo thứ tự giảm

dần, hoặc sắp xếp chúng vào những thể loại đã xếp hạng. Có rất nhiều cách giới thiệu gợi ý tới cho người dùng, có thể là việc đưa ra cho người dùng đối tượng tốt nhất (lựa chọn), hiện ra tốp N đối tượng trong danh sách gợi ý (xếp hạng), hoặc đưa vào những lớp như “nên xem”, “có thể bạn thích”, “không nên xem” (sắp xếp).

Quá trình mô hình hóa tiếp theo phải đưa ra kết luận với một họ tiêu chuẩn {g1,g2,..,gk}. Mỗi tiêu chuẩn phải là hàm số thực giá trị không giảm trong A.

Về lý thuyết thuật toán UTA* lấy đầu vào là cấu trúc mô tả sở thích trình tự yếu cùng với hiệu suất của khả năng, kết quả đầu ra là tập hợp những hàm gia tăng giá trị dựa trên tiêu chuẩn bội, cấu trúc kết quả phù hợp nhất có thể so với cấu trúc đầu vào. Điều này hoàn thành nhờ các công nghệ lập trình định tuyến.

Bốn bước cơ bản được làm theo UTA* giúp tính toán tất cả tham số cần thiết cho các hàm ước lượng giá trị của đối tượng và người dùng. Mỗi đối tượng trong tập tham chiếu được gán một giá trị, xác định giá trị đối với người dùng, đảm bảo tính đồng nhất với giá trị trong hệ thống của người dùng. Kết quả của thuật toán UTA* bao gồm hàm tính giá trị cho mỗi tiêu chuẩn, ước lượng gần đúng bằng phân đoạn tuyến tính, kèm theo cả trọng số ý nghĩa của tiêu chuẩn. Trọng số ý nghĩa của tiêu chuẩn biểu diễn vector trọng số của mỗi người dùng, cung cấp lược đồ giá trị của anh ta trên hệ thống và giá trị mô hình hóa người dùng phục vụ cho bước 3.

Bƣớc 3: Phân cụm

Thông thường thuật toán phân cụm chia tập dữ liệu ban đầu thành những nhóm rời rạc. Phân cụm là tiến trình không có giám sát tập trung vào việc nhóm các đối tượng dữ liệu, chỉ dựa trên thông tin tìm thấy trong dữ liệu có mô tả quan hệ giữa chúng. Mục đích của thuật toán phân cụm là các đối tượng trong cùng nhóm phải có tính tương đồng hoặc liên hệ nhiều nhất có thể, đồng thời phải có tính khác biệt hoặc không liên hệ tới đối tượng thuộc nhóm khác. Hầu hết thuật toán phân cụm đang tồn tại bị ảnh hưởng nhiều bởi các tham số khởi tạo, ví dụ số cụm hoặc các vị trí trung tâm. Để giảm thiểu các thiếu sót, trong bước thứ 3 chúng ta bổ sung phương pháp K-mean toàn cục. Phương pháp K-mean toàn cục không phụ thuộc vào bất cứ giá trị tham số khởi tạo nào và tận dụng thuật toán K-mean như quy trình tìm kiếm cục bộ. Thay vì chọn ngẫu nhiên các giá trị khởi tạo cho tất cả tâm các nhóm, thuật toán hoạt động một cách mở rộng, thêm một trung tâm cụm mới vào mỗi giai đoạn.

Giả sử chúng ta có tập dữ liệu {x1, x2,...xn}, xi∈Rd. Vấn đề khi phân cụm là chia tập hợp thành k nhóm tách rời C1, C2, C3, …, Ck bằng việc đánh giá lạc quan hóa tiêu chuẩn phân cụm hiện tại. Tiêu chuẩn phân cụm được dùng rộng rãi nhất là tổng bình phương sai

lệch (SSE - Sum of Squared Error) giữa mỗi điểm dữ liệu xi với tâm điểm mj của tập con

2 1 2 3 1 1 ( , , ..., ) ( ) | | N K K i j i j i j SSE m m m m I x C x m      (2.10)

Phương pháp k-mean toàn cục được dùng cho tập vector trọng số người dùng và gán nhãn từng người dùng vào nhóm riêng.

Bƣớc 4: Tạo gợi ý

Dựa vào sự sắp xếp nhóm người dùng với sự tương đồng sở thích, các đối tượng gợi ý thích hợp được cung cấp cho người dùng. Bước đưa gợi ý được hoàn thành bằng việc thực hiện bộ lọc cộng tác trong mỗi nhóm người dùng.

Phương pháp bộ lọc cộng tác đa chiều đa tiêu chuẩn (MRCF-dim: multidimensional Multi-criteria Collaborative Filtering) được áp dụng ở đây, dựa trên luật về khoảng cách đa chiều. Trước tiên tính khoảng cách giữa hai người dùng u và u’

đối với cùng đối tượng

' ' 2 , 1 ( ) k un u u u n n d r r     (2.11) (adsbygoogle = window.adsbygoogle || []).push({});

Trong công thức 2.7, ru và ru'là vetor đánh giá tương ứng với người dùng u và u’. Vector đánh giá là tập hợp những điểm số mà người dùng u dành cho đối tượng i, bao gồm tổng điểm đánh giá, k là số chiều của vector điểm số.

Tiếp theo khoảng cách tổng quát giữa hai người dùng u và u’ tính bởi công thức

' ' ' ' 1 | ( , )| ( , ) is ( , ) uu U u u i U u u d t u u d    (2.12)

U(u,u’) biểu thị tập các đối tượng mà cả u và u’ đều đánh giá, điều này có nghĩa khoảng cách toàn cục giữa hai người dùng là khoảng cách trung bình giữa đánh giá của họ về các đối tượng.

Cuối cùng độ tương đồng người dùng là phép nghịch đảo khoảng cách

' ' 1 1 is ( , ) ( , ) d t u u sim u u   (2.13)

Độ tương đồng tiến tới 0 nếu khoảng cách giữa hai người dùng tăng lên và tiến về 1 nếu hai người dùng cho điểm các đối tượng giống nhau. Độ đo sim(u,u’) được tính khi và chỉ khi u và u’ thuộc cùng nhóm, U(u,u’) không phải là tập rỗng.

Điểm số tiềm năng R(u,i) của đối tượng i ' ' ' ( ) ' ' 1 ( , ) ( ) ( , ) * ( , ). ( , ) u C u sim u u u C u R u i sim u u R u i             (2.14)

Chƣơng 3: Xây dựng bộ lọc cộng tác trong hệ thống gợi ý tin tức

Nội dung chính của chương 3 bao gồm mô tả bộ lọc cộng tác do tác giả xây dựng và thử nghiệm trên hệ thống gợi ý tin tức tiếng Việt có tên xenoNews. Trình tự nội dung các mục trong chương:

- Các yêu cầu chung đối với bộ lọc cộng tác

- Thiết kế sơ bộ trên cơ sở kết hợp với hệ thống xenoNews: dữ liệu đầu vào, dữ liệu đầu ra, các thành phần chính trong bộ lọc

- Chi tiết thiết kế, hoạt động của các thành phần trong bộ lọc

Một phần của tài liệu Mô hình hóa người dùng và ứng dụng bộ lọc cộng tác trong hệ thống gợi ý tin tức (Trang 26)