Phương pháp tư vấn kết hợp ba hành vi Comment, Like, Friend

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp tư vấn dựa trên hành vi người dùng mạng xã hội (Trang 62)

Phương pháp tư vấn cộng tác dựa vào hành vi Combinated-Comment-

Friend-Like đề xuất được mô tả chi tiết trong Hình 2.8. Tại bước 1, thuật toán thực

hiện tính toán tìm K1 người dùng láng giềng của người dùng hiện thời iU dựa vào

ma trận đánh giá. Tại bước 2, thuật toán thực hiện tính toán tìm K2 người dùng láng

giềng của người dùng hiện thời iU dựa vào ma trận Friend. Tại bước 3, thuật toán

thực hiện tính toán tìm K3 người dùng láng giềng của người dùng hiện thời iU dựa

vào ma trận Like. Tại bước 4, thuật toán thực hiện tính toán tìm K4 người dùng láng

giềng của người dùng hiện thời iU dựa vào ma trận Comment. Tại bước 5, thuật

toán thực hiện tính toán tìm Ki người dùng láng giềng của người dùng hiện thời iU

dựa vào ma trận đánh giá và ma trận Comment, ma trận Like, ma trận Friend. Tại

bước 6, thuật toán dự đoán quan điểm của người dùng i đối với các sản phẩm mới

xP\Pi bằng cách lấy giá trị trung bình các đánh giá của những người dùng j trong

tập láng giềng Ki. Bước 7 chọn K sản phẩm có mức độ tương tự cao nhất tư vấn cho

người dùng i.

Thuật toán Combinated-Comment-Friend-Like Input:

- Ma trận quan hệ bạn bè F = (fij:i=1, 2,..,n; j=1, 2,..,n). - Ma trận Like Li = (liij:i=1, 2,..,n; j=1, 2,..,m).

- Ma trận Comment C = (cij:i=1, 2,..,n; j=1, 2,..,m).

- iU là người dùng cần tư vấn.

Output:

- Top K sản phẩm phù hợp nhất đối với người dùng i.

Các bước tiến hành: Begin:

Bước 1. Xác định K1 là tập láng giềng của người dùng iU dựa vào ma trận đánh giá

1.1. Tính tooán mức độ tương tự giữa các cặp người dùng dựa vào ma trận đánh giá.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

1.2. Sắp xếp theo thứ tự giảm dần của 1.3.

Bước 2. Xác định K2 là tập láng giềng của người dùng iU dựa vào ma trận Friend

2.1. Tính toán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Friend.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

2.2. Sắp xếp theo thứ tự giảm dần của fijL

2.3. K2 = >;

Bước 3. Xác định K3 là tập láng giềng của người dùng iU dựa vào ma trận Like.

3.1. Tính toán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Like.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

3.2. Sắp xếp theo thứ tự giảm dần của

3.3. ;

Bước 4. Xác định K4 là tập láng giềng của người dùng iU dựa vào ma trận Comment.

4.1. Xác định mức độ tương tự giữa các cặp người dùng dựa vào ma trận Comment.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

4.3. ;

Bước 5. Xác định Ki là tập láng giềng của người dùng iU dựa vào ma trận đánh giá và ma trận friend, ma trận post, ma trận like, ma trận comment.

Bước 6. Dự đoán các sản phẩm phù hợp nhất đối với người dùng i.

Bước 7. Chọn K sản phẩm có mức độ tương tự cao nhất tư vấn cho người dùng i.

End.

Hình 2.8. Thuật toán Combinated-Comment-Friend-Like 2.4.2 Phương pháp tư vấn kết hợp ba hành vi Comment, Like, Post

Phương pháp tư vấn cộng tác dựa vào hành vi Combinated-Like-Post-

Comment đề xuất được mô tả chi tiết trong Hình 2.9. Tại bước 1, thuật toán thực

hiện tính toán tìm K1 người dùng láng giềng của người dùng hiện thời iU dựa vào

ma trận đánh giá. Tại bước 2, thuật toán thực hiện tính toán tìm K2 người dùng láng

giềng của người dùng hiện thời iU dựa vào ma trận Post. Tại bước 3, thuật toán

thực hiện tính toán tìm K3 người dùng láng giềng của người dùng hiện thời iU dựa

vào ma trận Like. Tại bước 4, thuật toán thực hiện tính toán tìm K4 người dùng láng

giềng của người dùng hiện thời iU dựa vào ma trận Comment. Tại bước 5, thuật

toán thực hiện tính toán tìm Ki người dùng láng giềng của người dùng hiện thời iU

dựa vào ma trận đánh giá và ma trận Comment, ma trận Like, ma trận Post. Tại

bước 6, thuật toán dự đoán quan điểm của người dùng i đối với các sản phẩm mới

xP\Pi bằng cách lấy giá trị trung bình các đánh giá của những người dùng j trong

tập láng giềng Ki. Bước 7 chọn K sản phẩm có mức độ tương tự cao nhất tư vấn cho

- Ma trận đánh giá R = (rix:i=1, 2,..,n; j=1, 2,..,m). - Ma trận Post Po= (poij:i=1, 2,..,n; j=1, 2,..,m). - Ma trận Like Li = (liij:i=1, 2,..,n; j=1, 2,..,m). - Ma trận Comment C = (cij:i=1, 2,..,n; j=1, 2,..,m).

- iU là người dùng cần tư vấn.

Output:

- Top K sản phẩm phù hợp nhất đối với người dùng i.

Các bước tiến hành: Begin:

Bước 1. Xác định K1 là tập láng giềng của người dùng iU dựa vào ma trận đánh giá.

1.2. Tính toán mức độ tương tự giữa các cặp người dùng dựa vào ma trận

đánh giá.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

1.2. Sắp xếp theo thứ tự giảm dần của 1.3.

Bước 2. Xác định K2 là tập láng giềng của người dùng iU dựa vào ma trận Post.

2.1. Tính tooán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Post.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

2.2. Sắp xếp theo thứ tự giảm dần của

2.3.

Bước 3. Xác định K3 là tập láng giềng của người dùng iU dựa vào ma trận Like.

3.1. Tính toán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Like.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

3.2. Sắp xếp theo thứ tự giảm dần của

3.3. ;

Bước 4. Xác định K4 là tập láng giềng của người dùng iU dựa vào ma trận Comment.

4.1. Xác định mức độ tương tự giữa các cặp người dùng dựa vào ma trận Comment.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

Until ( với mọi j(U \ i)); 4.2. Sắp xếp theo thứ tự giảm dần của

4.3. ;

Bước 5. Xác định Ki là tập láng giềng của người dùng iU dựa vào ma trận đánh giá và ma trận friend, ma trận post, ma trận like, ma trận comment.

Bước 6. Dự đoán các sản phẩm phù hợp nhất đới với người dùng i.

Bước 7. Chọn K sản phẩm có mức độ tương tự cao nhất tư vấn cho người dùng i.

End.

Hình 2.9. Thuật toán Combinated-Like-Post-Comment

2.5 Phương pháp tư vấn kết hợp bốn hành vi Comment, Like, Friend, Post Post

2.5.1 Thuật toán

Phương pháp tư vấn cộng tác dựa vào hành vi Combinated- Comment-

Friend- Like-Post đề xuất được mô tả chi tiết trong Hình 2.10. Tại bước 1, thuật toán thực hiện tính toán tìm K1 người dùng láng giềng của người dùng hiện thời iU dựa vào ma trận đánh giá. Tại bước 2, thuật toán thực hiện tính toán tìm K2

người dùng láng giềng của người dùng hiện thời iU dựa vào ma trận Friend. Tại

bước 3, thuật toán thực hiện tính toán tìm K3 người dùng láng giềng của người dùng

hiện thời iU dựa vào ma trận Post. Tại bước 4, thuật toán thực hiện tính toán tìm

K4 người dùng láng giềng của người dùng hiện thời iU dựa vào ma trận Like.

Bước 5, thuật toán thực hiện tính toán tìm K5 người dùng láng giềng của người dùng

hiện thời iU dựa vào ma trận Comment. Tại bước 6, thuật toán thực hiện tính toán

giá và ma trận Friend, ma trận Like, ma trận Post, ma trận Comment. Tại bước 7, thuật toán dự đoán quan điểm của người dùng i đối với các sản phẩm mới xP\Pi

bằng cách lấy giá trị trung bình các đánh giá của những người dùng j trong tập láng

giềng Ki. Bước 8 chọn K sản phẩm có mức độ tương tự cao nhất tư vấn cho người

dùng i.

Thuật toán Combinated- Comment-Friend- Like-Post Input:

- Ma trận đánh giá R = (rix:i=1, 2,..,n; j=1, 2,..,m). - Ma trận quan hệ bạn bè F = (fij:i=1, 2,..,n; j=1, 2,..,n). - Ma trận Post Po= (poij:i=1, 2,..,n; j=1, 2,..,m).

- Ma trận Like Li = (liij:i=1, 2,..,n; j=1, 2,..,m). - Ma trận Comment C = (cij:i=1, 2,..,n; j=1, 2,..,m).

- iU là người dùng cần tư vấn.

Output:

- Top K sản phẩm phù hợp nhất đối với người dùng i.

Các bước tiến hành: Begin:

Bước 1. Xác định K1 là tập láng giềng của người dùng iU dựa vào ma trận đánh giá

1.1. Tính tooán mức độ tương tự giữa các cặp người dùng dựa vào ma trận đánh giá.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

1.3.

Bước 2. Xác định K2 là tập láng giềng của người dùng iU dựa vào ma trận Friend

2.1. Tính toán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Friend.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

2.2. Sắp xếp theo thứ tự giảm dần của fijL

2.3. K2 = >;

Bước 3. Xác định K3 là tập láng giềng của người dùng iU dựa vào ma trận Post.

3.1. Tính tooán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Post.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

3.2. Sắp xếp theo thứ tự giảm dần của

3.3.

Bước 4. Xác định K4 là tập láng giềng của người dùng iU dựa vào ma trận Like.

4.1. Tính toán mức độ tương tự giữa các cặp người dùng dựa vào ma trận Like.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

4.2. Sắp xếp theo thứ tự giảm dần của

4.3. ;

Bước 5. Xác định K5 là tập láng giềng của người dùng iU dựa vào ma trận Comment.

5.1. Xác định mức độ tương tự giữa các cặp người dùng dựa vào ma trận Comment.

L 2;//Thiết lập độ dài đường đi ban đầu L=2

Repeat

LL + 2; //Tăng độ dài đường đi.

Until ( với mọi j(U \ i));

5.2. Sắp xếp theo thứ tự giảm dần của

5.3. ;

Bước 6. Xác định Ki là tập láng giềng của người dùng iU dựa vào ma trận đánh giá và ma trận friend, ma trận post, ma trận like, ma trận comment.

Bước 8. Chọn K sản phẩm có mức độ tương tự cao nhất tư vấn cho người dùng i.

End.

Hình 2.10. Thuật toán Combinated- Comment-Friend- Like-Post 2.5.2 Ví dụ minh họa

Giả sử ta thu thập được các đánh giá, hành vi like, hành vi post, hành vi comment và hành vi add friend của một số người dùng với một số khách sạn. Giá trị đánh giá nằm trong khoảng từ 1 đến 5 được thể hiện trong ví dụ 2.1, 1.1, 1.2, 1.3, và 1.4.

Đầu vào:

- Ma trận đánh giá người dùng-sản phẩm

- Ma trận Friend người dùng-người dùng

- Ma trận Post người dùng-sản phẩm

- Ma trận Comment người dùng-sản phẩm

là người dùng cần được tư vấn

K = 3 là số lượng người dùng của tập láng giềng Thuật toán được tiến hành qua 8 bước như sau:

Bước 1: Xác định K1 là tập láng giềng của người dùng iU dựa vào ma trận đánh giá.

Sử dụng kết quả trong bước 1 của mục 2.2.1.2 ta được kết quả: Chọn 3 người dùng đầu tiên làm tập láng giềng của người dùng 5:

Bước 2: Xác định K2 là tập láng giềng của người dùng iU dựa vào ma trận Friend. Sử dụng kết quả trong bước 2 của mục 2.2.4.2 ta được kết quả:

Chọn 3 người dùng đầu tiên làm tập láng giềng của người dùng 5: K25={2,3,4}

Bước 3: Xác định K3 là tập láng giềng của người dùng iU dựa vào ma trận Post. Sử dụng kết quả trong bước 2 của mục 2.2.2.2 ta được kết quả:

Chọn 3 người dùng đầu tiên làm tập láng giềng của người dùng 5:

Bước 4: Xác định K4 là tập láng giềng của người dùng iU dựa vào ma trận Like. Sử dụng kết quả trong bước 2 của mục 2.2.1.2 ta được kết quả:

4.3. Chọn 3 người dùng đầu tiên làm tập láng giềng của người dùng 5:

Bước 5: Xác định K5 là tập láng giềng của người dùng iU dựa vào ma trận Comment.

Sử dụng kết quả trong bước 2 của mục 2.2.3.2 ta được kết quả: Chọn 3 người dùng đầu tiên làm tập láng giềng của người dùng 5:

Bước 6: Lấy tập láng giềng K cho người dùng

Bước 7: Dự đoán quan điểm người dùng đối với các sản phẩm .

Bước 8: Chọn 3 sản phẩm có mức độ tương tự cao nhất tư vấn cho người dùng thứ 5 (trừ 2 sản phẩm đã có là khách sạn “Grand Sunrise” và “Hagl Plaza”) là khách sạn

“ ” có , khách sạn “Hanoi Zesty Hotel” có

, khách sạn “ ” có

2.6 Kết luận chương 2

Trong chương 2, luận văn đã trình bày các thuật toán kết hợp hành vi người dùng trong mạng xã hội vào hệ tư vấn, trong đó lấy hành vi đánh giá lần lượt kết hợp với các hành vi còn lại như like, friend, post, comment. Sau đó, lấy hành vi đánh giá lần lượt kết hợp với hai hành vi, ba hành vi và cả bốn hành vi. Quá trình tư vấn được xem xét thêm với các hành vi người dùng khi sử dụng mạng xã hội. Bằng cách này ta có thể thu hẹp lại số lượng người dùng trong tập láng giềng có cùng mức độ tương tự.

CHƯƠNG 3. THỬ NGHIỆM VÀ ĐÁNH GIÁ

Dưới đây là các vấn đề chương 3 sẽ trình bày: - Dữ liệu thử nghiệm

- Phương pháp thử nghiệm - Kết quả thử nghiệm - Kết luận

3.1 Dữ liệu thử nghiệm

Luận văn thu thập dữ liệu thực tế từ người dùng và các trang về khách sạn trên trang mạng xã hội FaceBook. Dữ liệu người dùng bao gồm:

- 5090 người dùng - 753 khách sạn - 2702 hành vi Rate - 2585 hành vi Add Friend - 961 hành vi Post - 4629 hành vi Like - 1995 hành vi comment

Các hành vi lấy được từ mạng xã hội FaceBook là: Friend, Post, Like, Comment, Rate.

Bộ dữ liệu được lấy trong vòng 8 tháng: 3/2016 - 11/2016 vàvới các bộ dữ liệu đã được xử lý để đạt được mức quy định sau:

- Loại bỏ khách sạn không có các hành vi tương tác nào của người dùng.

- Loại bỏ các người dùng không tương tác với bất kỳ một khách sạn nào.

- Phân loại, gán nhãn cho các bài post và comment, giữ lại các bài có nội dung

tích cực.

 Hành vi Post, Comment có chứa các câu quan điểm có thể bằng tiếng

Việt hoặc tiếng Anh.

 Các hành vi bằng tiếng Việt sẽ được gán nhãn bằng tay.

nhãn là tích cực trong trường hợp điểm số trả về: score ≥ 0.7 (0 ≤ score ≤ 1)

Mô hình dữ liệu hệ thống tư vấn khách sạn dựa trên hành vi người dùng trong mạng xã hội:

Hình 3.1. Mô hình dữ liệu hệ thống HotelRecomendSystem

Bảng tbluser

Đây là bảng lưu trữ thông tin của người dùng. Bảng bao gồm 3 trường:

STT Tên trường Kiểu dữ liệu

và độ dài Nullable Unique

P/F Key

Mặc

định Mô tả

1 user_id varchar(25) X P Khóa chính

của bảng tbluser, là một chuỗi lưu thông tin theo id của

2 name varchar(100) Tên người dùng

3 link varchar(100) Địa chỉ truy

cập của người dùng

Bảng tblhotel

Đây là bảng lưu trữ thông tin của khách sạn. Bảng bao gồm 4 trường:

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp tư vấn dựa trên hành vi người dùng mạng xã hội (Trang 62)

Tải bản đầy đủ (PDF)

(89 trang)