66
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Quỳnh Nga TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢP KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2015

TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Quỳnh Nga

TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT

TĂNG CƯỜNG THÍCH HỢP

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Công nghệ thông tin

HÀ NỘI - 2015

Page 2: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Quỳnh Nga

TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT

TĂNG CƯỜNG THÍCH HỢP

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Công nghệ thông tin

Cán bộ hướng dẫn: PGS. TS. Hà Quang Thụy

NCS. Lương Thái Lê

HÀ NỘI - 2015

Page 3: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

VIETNAM NATIONAL UNIVERSITY

UNIVERSITY OF ENGINEERING AND TECHNOLOGY

Nguyen Quynh Nga

SOCIAL GROUP RECOMMENDATION BASED ON

HIGHLY ENHANCED ADAPTIVE

RECOMMENDATION TECHNOLOGY

A THESIS PRESENTED FOR THE DEGREE BACHELOR

Department: Information Technology

Supervisors: Assoc. Prof. Ha Quang Thuy

MsC. Luong Thai Le

HA NOI - 2015

Page 4: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

i

LỜI CẢM ƠN

Trước tiên, em xin bày tỏ lòng biết ơn chân thành và sâu sắc nhất tới Thầy giáo, Phó

Giáo sư – Tiến sĩ Hà Quang Thụy đã tận tình chỉ bảo, hướng dẫn, động viên và giúp đỡ em

trong suốt quá trình thực hiện đề tài.

Em xin gửi lời cảm ơn sâu sắc tới quý thầy cô giáo trong Khoa Công nghệ thông tin nói

riêng và trong trường Đại học Công nghệ - Đại học Quốc Gia Hà Nội nói chung, đã truyền

đạt kiến thức quý báu cho em trong những năm học đại học.

Em cũng xin được gửi lời cảm ơn tới các anh chị, các bạn và các em sinh viên trong

phòng thí nghiệm Công nghệ tri thức và khoa học dữ liệu KT-Lab, đặc biệt là trong nhóm

“Tư vấn xã hội” đã giúp em rất nhiều trong việc hỗ trợ kiến thức chuyên môn để hoàn thành

tốt khóa luận.

Con xin tỏ lòng biết ơn vô hạn đến bố mẹ vì công ơn sinh thành dưỡng dục, luôn động

viên, chăm lo và dành trọn tình yêu thương cho con, động viên, ủng hộ con trên con đường

học tập.

Cuối cùng, xin gửi lời cảm ơn tới các anh chị và các bạn, đặc biệt là các thành viên

phòng 519B Kí túc xá Ngoại ngữ và lớp K56C-CLC đã ủng hộ, giúp đỡ trong suốt quá trình

tôi học tập trên giảng đường đại học và thực hiện đề tài.

Tôi xin chân thành cảm ơn!

Nguyễn Quỳnh Nga

Hà Nội, ngày 05 tháng 05 năm 2015

Sinh viên

Page 5: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

ii

TÓM TẮT

Tóm tắt: Trong bối cảnh hiện nay, khi mà các phương tiện xã hội (social media) phát triển

nhanh chóng (chẳng hạn, Facebook1 hay Twitter2) thì các thông tin đặc trưng từ phương

tiện xã hội trở nên ngày càng hữu ích cho hoạt động tư vấn người dùng. Theo Jiliang Tang

và cộng sự, 2014 [20], tư vấn xã hội được hình thành và phát triển nhanh chóng dựa trên

việc khai thác các thông tin đặc trưng bổ sung từ mạng xã hội cho tư vấn người dùng.

Hệ tư vấn truyền thống hướng tới tư vấn cá nhân hóa, tức là tư vấn các mục mà một

người dùng cá nhân có thể ưa thích. Đặc trưng cộng đồng (community) trong mạng xã hội

cho phép phát triển các chức năng tư vấn nhóm (cộng động) mà đối tượng cần tư vấn là các

nhóm người dùng. Theo Ludovico Boratto, 2011 [3], tư vấn nhóm hướng tới tư vấn các

mục mà một nhóm có thể ưa thích, bằng cách kết hợp các sở thích của các cá nhân trong

nhóm.

Khóa luận này đi sâu vào bài toán tư vấn nhóm và các hướng giải quyết. Dựa trên các

kết quả nghiên cứu của HaoMa, 2014 [8] và Ludovico Boratto [3] về phát hiện nhóm cho

tư vấn xã hội, về tính toán độ tương đồng của người dùng mạng xã hội trong các hệ tư vấn,

tôi đề nghị một mô hình tư vấn nhóm dựa trên giải pháp phát hiện nhóm tự động sử dụng

độ tương đồng hệ số tương quan Pearson và sử dụng mối quan hệ tin cậy trong lọc cộng tác

dựa trên người dùng và tổng hợp các đánh giá cá nhân để đưa ra dự đoán cho nhóm. Khóa

luận cũng xây dựng hệ thống thử nghiệm thi hành mô hình đề nghị. Đánh giá thực nghiệm

mô hình tư vấn trên tập dữ liệu Epinion11 với 581 người dùng và 3430 đánh giá cho 1832

mục Game cho độ sai số NMAE khoảng 0.16.

Từ khóa: hệ tư vấn, phát hiện cộng đồng, phương tiện xã hội, tư vấn nhóm, tư vấn xã hội

1 https://www.facebook.com/ 2 https://www.twitter.com/

Page 6: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

iii

Abstract

Abtract: Along with the growth of social media (some widely-used social network such as

Facebook1 or Twitter2), it becomes increasingly potential value of social relations in

recommender systems. Social recommendation was formed and developed rapidly by

considering social relations information to improve user recommendations (Jiliang Tang et

al., 2014) [20].

A classic recommender system produce personalized content for users, means, giving

suggestions about some items that user might interested like. Community feature in social

network allows develop group recommendation functionalities where objective of the

recommender system is group of users. Group recommender systems suggest items that a

group might like, by combining individual models that contain a user’s preferences

(Ludovico Boratto, 2011) [3].

This thesis present details about group recommendation problem, solution approaches,

and propose an automatic group recommender system that detect community automatically

using Pearson Correlation Coefficient similarity, then, combine individual interest for

group interest. This approach is based on HaoMa research on 2014 [8] and Ludovico

Boratto’s PhD thesis [3] about community detection in social recommendation and

measuring Social friend interest similarities. I also perform an experiment with the

Epinion11 dataset contain 581 users and 3430 ratings for 1832 items in Game category with

normalized mean square error is 0.16 in result.

Keywords: Recommender system, group recommendation, community detection, social

media, social recommendation

Page 7: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

iv

LỜI CAM ĐOAN

Tôi xin cam đoan các kỹ thuật sử dụng trong hệ tư vấn nhóm hướng cộng đồng hoặc

nhóm người dùng được trình bày trong khóa luận này do tôi thực hiện dưới sự hướng dẫn

của PGS.TS. Hà Quang Thụy.

Tất cả những tham khảo từ các nghiên cứu liên quan đều được nêu nguồn gốc một cách

rõ ràng từ danh mục tài liệu tham khảo trong khóa luận. Trong khóa luận, không có việc

sao chép tài liệu, công trình nghiên cứu của người khác mà không chỉ rõ về tài liệu tham

khảo.

Nguyễn Quỳnh Nga

Hà Nội, ngày 05 tháng 05 năm 2015

Tác giả

Page 8: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

Mục lục

LỜI CẢM ƠN ..................................................................................................................... i

TÓM TẮT .......................................................................................................................... ii

Abstract ............................................................................................................................. iii

LỜI CAM ĐOAN ............................................................................................................. iv

Danh sách thuật ngữ và từ viết tắt ..................................................................................... v

Danh sách bảng ................................................................................................................ vii

Danh sách hình vẽ........................................................................................................... viii

Mở đầu ............................................................................................................................... 1

Chương 1. Hệ tư vấn và tư vấn xã hội ............................................................................... 3

1.1. Hệ tư vấn truyền thống......................................................................................... 3

1.1.1. Giới thiệu chung ........................................................................................ 3

1.1.2. Các loại hệ tư vấn truyền thống ................................................................. 4

1.2. Tư vấn xã hội ....................................................................................................... 6

1.2.1. Phương tiện xã hội ..................................................................................... 6

1.2.2. Khái niệm tư vấn xã hội ............................................................................. 7

1.2.3. Các bài toán tư vấn xã hội ......................................................................... 9

Tóm tắt chương 1 ......................................................................................................... 10

Chương 2. Tư vấn nhóm .................................................................................................. 11

2.1. Nhóm trong mạng xã hội ................................................................................... 11

2.1.1. Khái niệm ................................................................................................. 11

2.1.2. Các phương pháp phát hiện nhóm ........................................................... 12

2.2. Khái niệm tư vấn nhóm ...................................................................................... 14

2.3. Giải pháp cho tư vấn nhóm ................................................................................ 15

2.3.1. Các giải pháp phổ biến ............................................................................ 16

2.3.2. Một số giải pháp nổi bật .......................................................................... 21

Page 9: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

2.4. Tiếp cận tư vấn nhóm trong khóa luận ................................................................. 33

Tóm tắt chương 2 ......................................................................................................... 34

Chương 3. Một mô hình tư vấn nhóm xã hội dựa trên kĩ thuật tăng cường thích hợp .... 35

3.1. Giới thiệu sơ bộ .................................................................................................... 35

3.1.2. Tư vấn cá nhân sử dụng lọc cộng tác dựa trên người dùng ........................... 35

3.1.2. Phát hiện nhóm tự động ........................................................................... 36

3.1.3. Mô hình hóa nhóm ......................................................................................... 36

3.2. Mô hình tư vấn đề nghị ........................................................................................ 37

3.2.1. Trích xuất dữ liệu ..................................................................................... 38

3.2.2. Dự đoán đánh giá cá nhân ........................................................................ 39

3.2.3. Phát hiện nhóm tự động ........................................................................... 40

3.2.4. Mô hình nhóm .......................................................................................... 41

Tóm tắt chương 3 ......................................................................................................... 42

Chương 4. Thực nghiệm và đánh giá .............................................................................. 43

4.1. Giới thiệu chung ................................................................................................... 43

4.2. Phần mềm thực nghiệm ........................................................................................ 44

4.3. Dữ liệu .................................................................................................................. 45

4.4. Kết quả thực nghiệm ............................................................................................. 46

4.5. Đánh giá mô hình ................................................................................................. 48

Tóm tắt chương 4 ......................................................................................................... 49

Kết luận ............................................................................................................................ 50

Kết quả đạt được của khóa luận .................................................................................. 50

Định hướng tương lai .................................................................................................. 50

Tài liệu tham khảo ........................................................................................................... 51

Tài liệu tiếng Việt ........................................................................................................ 51

Tài liệu tiếng Anh ........................................................................................................ 51

Page 10: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại
Page 11: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

v

Danh sách thuật ngữ và từ viết tắt

Tiếng Anh/Từ viết tắt Tiếng Việt/Cụm từ đầy đủ

Bayesien network/BN Mạng Bayes

Matrix factorization/MF Nhân tử hóa ma trận

Item mục (còn được dịch là "mặt hàng", "sản phẩm", "dịch vụ" )

Colaborative Filtering/CF Lọc cộng tác

Recommender system | Recommendation system

Hệ tư vấn

Social media Phương tiện xã hội

Social network Mạng xã hội

Social recommendation system Hệ tư vấn xã hội

group recommender system Hệ tư vấn nhóm

Variable neighborhood search algorithm Thuật toán tìm kiếm lân cận bất định

Group recommendation Tư vấn nhóm

least misery tối thiểu sự không hài lòng

random walk based methods Phương pháp dựa trên bước ngẫu nhiên

Term Frequency - Inverse Document Frequency /TF-IDF

Tần số xuất hiện – tần số nghịch của một từ trong văn bản

Individual model/IM mô hình cá nhân

Group users model/GUM một mô hình nhóm người dùng

Distributed Optimization Constraint Problem/ DCOP

Vấn đề hạn chế phân tán tối ưu

User Agent/UA Đại diện người dùng

Recommender Agent/RA Đại diện phía tư vấn

Generalist Recommender System Kernel/GRSK

Nhân/lõi hệ tư vấn tổng quát

Page 12: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

vi

Communities of Interest/CoI Cộng đồng cùng sở thích

Model-based Automatic Recommendation Technology/MART

Kỹ thuật tư vấn tự động dựa trên mô hình

State-of-the-art Model-based Automatic Recommendation Technology/ SMART

Kỹ thuật tư vấn tự động dựa trên mô hình tiên tiến

Aggregated Preferences-based Automatic Recommendation Technology/APART

Kỹ thuật tư vấn tự động dựa trên tổng hợp các sở thích

Baseline Automatic Recommendation Technology/BART

Kỹ thuật tư vấn tự động dựa trên đường cơ sở

Highly Enhanced Automatic recommendation Technology/HEART

Kỹ thuật tư vấn tự động tăng cường thích hợp

Additive Utilitarian/AU Chiến lược trung bình

Borda Count/BC Xếp hạng đánh giá

Approval Voting/AV Bầu cử dựa trên sự hài lòng

Misery Least/ML Tối thiểu sự không hài lòng

Most Pleasure Strategy/MP Chiến lược vừa lòng nhất

Average Without Misery Strategy/AWM Chiến lược trung bình bỏ qua sự không hài lòng

Pearson Correlation Coefficient/PCC Hệ số tương quan Pearson

Trust Tin cậy

Page 13: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

vii

Danh sách bảng

Bảng 2.1. Ví dụ chiến lược trung bình ............................................................................... 24

Bảng 2.2. Ví dụ chiến lược xếp hạng đánh giá ................................................................... 24

Bảng 2.3. Ví dụ chiến lược bầu cử bằng sự hài lòng ......................................................... 25

Bảng 2.4. Ví dụ chiến lược tối thiểu sự không hài lòng ..................................................... 25

Bảng 2.5. Ví dụ chiến lược vừa lòng nhất .......................................................................... 25

Bảng 2.6. Ví dụ chiến lược trung bình bỏ qua sự không hài lòng ...................................... 26

Bảng 4.1. Cấu hình hệ thống thực hiện thực nghiệm ......................................................... 44

Bảng 4.2. Các công cụ phần mềm được sử dụng ............................................................... 45

Bảng 4.3. So sánh kết quả thực nghiệm ............................................................................. 49

Page 14: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

viii

Danh sách hình vẽ

Hình 1.1 Từ đồ thị người dùng sang ma trận người dùng – người dùng ........................... 10

Hình 2.1. Cấu trúc nhóm trong mạng xã hội ...................................................................... 12

Hình 2.2. Sai số RMSE khi sử dụng các chiến lược mô hình hóa nhóm khác nhau trong kĩ

thuật HEART với số nhóm = 20 ......................................................................................... 34

Hình 3.1. Một mô hình tư vấn nhóm tự động. .................................................................... 37

Hình 4.1. Các module chính ............................................................................................... 44

Hình 4.2. Một đoạn dữ liệu tin cậy ..................................................................................... 46

Hình 4.3. Một đoạn dữ liệu đánh giá sau khi dự đoán cá nhân .......................................... 47

Hình 4.4. Một phần đánh giá dự đoán cho nhóm ............................................................... 47

Hình 4.5. Các giá trị sai số thu được .................................................................................. 48

Page 15: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

1

Mở đầu

Trong bối cảnh hiện nay, khi mà các phương tiện xã hội phát triển nhanh chóng, lượng

thông tin mà chúng mang lại đã góp phần quan trọng làm giàu tài nguyên và mở ra miền

dữ liệu đa dạng mới cho khai phá dữ liệu. Có thể kể đến một số mạng xã hội lớn như

Facebook (Theo số liệu thống kê3, đến cuối tháng 9 năm 2014, số người dùng tích cực hàng

tháng trên trang mạng xã hội này là 1,35 tỷ người, tăng 14% so với cùng kỳ năm 2013) hay

Twitter (số lượng các tweet sinh ra trong một ngày đạt mức 500 triệu4). Số lượng người

dùng trong mạng tăng, dẫn đến số lượng các kết nối giữa các người dùng với nhau cũng

tăng lên đáng kể tạo nên các nhóm người hay cộng đồng trong mạng xã hội. Điều này cho

thấy tiềm năng của khai phá dữ liệu liên quan tới nhóm người dùng (cộng đồng) trên các

phương tiện xã hội.

Một kỳ nghỉ lễ ba ngày đang tới dần mà một hoạt động quan trọng trong kỳ nghỉ đó

là đi tham quan. Thông qua một phương tiện xã hội (chẳng hạn như Facebook), các nhóm

bạn trẻ cùng sở thích đi tham quan ("phượt") được nhận diện. Một tiện ích cần được xây

dựng trong phương tiện xã hội nói trên để tư vấn cho từng nhóm bạn trẻ nói trên về một

vài địa điểm tham quan phù hợp nhất cho từng nhóm đó dựa trên sở thích tham quan từ

trước tới nay của mỗi thành viên trong nhóm. Đây được coi là một ví dụ về bài toán tư vấn

nhóm trong phương tiện xã hội.

Tư vấn nhóm là tư vấn được thiết kế để tư vấn cho một tập nhiều hơn một người. Một

hệ tư vấn truyền thống hướng tới việc tư vấn một số mục (item)5 mà người dùng có thể

thích dựa trên các sở thích cá nhân của người dùng, trong khi đó, một hệ tư vấn nhóm hướng

tới việc tư vấn một số mục mà nhóm (group)6 đó có thể thích dựa trên các sở thích nhóm

được mô hình hóa bằng việc kết hợp các sở thích cá nhân của mọi người dùng trong nhóm

[3].

Đối tượng hướng đến của hoạt động quảng bá sản phẩm, quảng cáo thương hiệu,…

của các doanh nghiệp thường là các nhóm. Hệ tư vấn nhóm phát hiện các nhóm, hiểu sâu

hơn về các nhóm, từ đó giúp cho các doanh nghiệp đưa ra những chiến lược quảng bá hợp

3 http://investor.fb.com 4 https://about.twitter.com/company 5 Thuật ngữ "mục" được dùng để chỉ "sản phẩm" (product), dịch vụ "service", hoặc mọi đối tượng quan tâm khác 6 Thuật ngữ "nhóm" được dùng để chỉ nhóm người dùng (user group) hoặc cộng đồng (communication).

Page 16: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

2

lý nhằm nâng cao thương hiệu, hình ảnh,… Mục tiêu của hệ tư vấn nhóm là nhằm phát hiện

nhóm, tư vấn cho nhóm những mục sát nhất mà nhóm có thể quan tâm.

Khóa luận này đề cập tới hệ tư vấn nhóm sử dụng giải pháp phát hiện nhóm tự động

kết hợp mô hình hóa nhóm. Phát hiện nhóm tự động sử dụng thuật toán phân cụm k-means

với độ đo tương đồng hệ số tương quan Pearson, sau đó thực hiện tư vấn cho nhóm vừa

phát hiện sử dụng kĩ thuật HEART và chiến lược AU. Hướng tiếp cận này dựa trên nghiên

cứu của HaoMa [8] về việc tính toán độ tương đồng của người dùng mạng xã hội trong các

hệ tư vấn và luận văn tiến sĩ của Ludovico Boratto [3].

Nội dung của khóa luận được chia thành các chương như sau:

Chương 1: Khóa luận giới thiệu khái quát về hệ tư vấn truyền thống và tư vấn xã hội,

các loại hệ tư vấn truyền thống và các bài toán tư vấn xã hội. Ngoài ra, chương này cũng

nêu lên cái nhìn tổng quan về phương tiện xã hội và một số phương tiện xã hội phổ biến

hiện nay như Twitter, Facebook…Từ đó chúng ta có thể thấy được tiềm năng khai thác

mạng xã hội để phát hiện cộng đồng/nhóm ứng dụng vào tư vấn nhóm.

Chương 2: Khóa luận trình bày về tư vấn nhóm, bao gồm khái niệm, các phương

pháp phát hiện nhóm, bài toán tư vấn nhóm và các giải pháp cho tư vấn nhóm. Từ đó đề

cập đến giải pháp phát hiện và tư vấn nhóm tự động được áp dụng trong khóa luận.

Chương 3: Khóa luận trình bày về tư tưởng chính của mô hình đề xuất cho bài toán

tư vấn nhóm tự động. Khóa luận giới thiệu chi tiết các pha cũng như từng bước thực hiện

trong mô hình giới thiệu với miền dữ liệu là tập dữ liệu Epinions.

Chương 4: Khóa luận trình bày thực nghiệm việc phát hiện nhóm tự động và tư vấn

cho nhóm sử dụng thuật toán tư vấn tăng cường thích hợp, đồng thời so sánh kết quả của

việc thực hiện các chiến lược khác với chiến lược trong mô hình đề xuất ở chương 3.

Phần kết luận: Tóm lược kết quả đạt được của khóa luận và định hướng phát triển

tương lai.

Page 17: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

3

Chương 1. Hệ tư vấn và tư vấn xã hội

1.1. Hệ tư vấn truyền thống

1.1.1. Giới thiệu chung

Hệ tư vấn (Recommender Systems, Recommendation Systems) là những công cụ

phần mềm và kỹ thuật đưa ra gợi ý về các mục cho một người sử dụng [11]. Các tư vấn liên

quan đến quá trình đưa ra các quyết định như ăn gì, xem gì, mua gì, vào trang web nào,…

Hệ tư vấn thường hướng tới cá nhân, dựa trên kinh nghiệm hoặc sở thích của người

dùng để đưa ra tư vấn cho một mục mà họ quan tâm. Ví dụ như việc tư vấn một quyển sách

cho một bạn đọc. Một trong số những trang Web nổi tiếng sửa dụng hệ tư vấn để đưa ra các

gợi ý cho cá nhân mỗi người dùng là Amazon.com7. Trên trang Web này, hệ tư vấn sẽ dựa

theo lịch sử các mặt hàng bạn đã xem, mua hoặc ưa thích để đưa ra tư vấn các sản phẩm sát

nhất có thể nằm trong sự quan tâm của bạn. Những người dùng khác nhau hoặc các nhóm

người dùng sẽ nhận được các tư vấn khác nhau. Ngoài ra, cũng có những tư vấn không

mang tính cá nhân như trong tạp chí, báo.

Trong trường hợp đơn giản nhất, tư vấn cho người dùng dựa trên danh sách các đánh

giá của người dùng với các mục. Trong một hệ tư vấn thông thường, có một tập người dùng

U={u1,u2,...,un} và 1 tập mục I = {i1, i2,...,in}. trong đó n là số người dùng và m là số mục.

Một người dùng ui đánh giá một tập nhỏ các mục bằng một số điểm nào đó. Ma trận R ∈

Rn x m biểu thị ma trận đánh giá trong đó Rij là điểm số mà người dùng ui dùng để đánh giá

mục ij, ta sử dụng dấu “?” để biểu thị các đánh giá chưa biết. Ma trận đánh giá thường rất

thưa, cho thấy còn rất nhiều các đánh giá chưa biết trong R. Ví dụ mật độ của ma trận đánh

giá trong hệ tư vấn quảng cáo thường ít hơn 1%. Nếu mục ij có nhiều thuộc tính, chúng ta

sử dụng xj ∈ Rl để đại diện cho ij trong đó l là số lượng thuộc tính.

Nhiệm vụ của các hệ tư vấn là dự đoán đánh giá của người dùng ui đối với mục chưa

được đánh giá ij hoặc tư vấn một vài mục cho người dùng chỉ định,..., để dự đoán các giá

trị còn thiếu trong R dựa trên các giá trị đánh giá đã biết [19]. Vậy các hệ tư vấn hướng đến

những người dùng thiếu kinh nghiệm hoặc không thể đánh giá được một số lượng lớn các

7 http://www.amazon.com/

Page 18: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

4

mục thay thế trên các trang Web hay nói cách khác, hệ tư vấn giúp đưa ra các gợi ý mà

người dùng có thể thích.

1.1.2. Các loại hệ tư vấn truyền thống

Theo sự nghiên cứu và tổng hợp của Jiliang Tang và cộng sự [19], từ khi các hệ tư vấn

đầu tiên trở thành một lĩnh vực nghiên cứu độc lập (giữa những năm 1990), đã có nhiều hệ

tư vấn được đưa ra, các hệ tư vấn này thường được nhóm thành các hệ thống dựa trên nội

dung (content-based methods), dựa trên lọc cộng tác (collaborative filtering methods) và

các phương pháp lai (hybrid methods).

Các hệ tư vấn dựa trên nội dung

Các hệ tư vấn dựa trên nội dung có nguồn gốc từ nghiên cứu về sự truy hồi thông tin và

lọc thông tin. Các hệ tư vấn này gợi ý các mục tương tự như những thứ mà người dùng ưa

thích trong quá khứ. Hầu hết các hệ tư vấn dựa trên nội dung tập trung vào tư vấn các mục

với thông tin dạng text như báo, sách và tài liệu. Nội dung trong các hệ thống này thường

được miêu tả bằng các từ khóa và trọng số TF-IDF (lượng thông tin mà một từ khóa mang

lại đối với một tài liệu). Trọng số TF của một từ khóa đối với một tài liệu biểu thị tần suất

của từ khóa đó trong tài liệu, trong khi trọng số IDF được định nghĩa như tần số nghịch của

các từ khóa trong văn bản [12].

Đặt xjk là trọng số TF-IDF của k từ khóa trong ij và nội dung của ij có thể đại diện bởi xj

= {xj1, xj2,...,xjl} Với các đại diện đó, hệ tư vấn dựa trên nội dung giới thiệu các mục cho

người dùng mà tương tự như các mục người dùng thích trong quá khứ. Đặc biệt, các mục

ứng viên được so sánh với các mục trước đây đã được người dùng đánh giá bằng cách sử

dụng độ đo tương tự như độ đo tương tự cosin để cho điểm các mục ứng viên. Bên cạnh

các phương pháp chẩn đoán truyền thống dựa trên tìm kiếm thông tin, cũng có các hệ tư

vấn dựa trên nội dung có sử dụng các kỹ thuật khác như các thuật toán phân lớp và phân

cụm.

Các hệ tư vấn dựa trên lọc cộng tác

Lọc cộng tác là một trong những kỹ thuật phổ biến nhất để xây dựng hệ tư vấn. Nó có

thể dự đoán sở thích người dùng trực tiếp bằng cách phát hiện các mẫu phức tạp và bất

thường từ hành vi trong quá khứ của người dùng như đánh giá sản phẩm mà không cần bất

kỳ kiến thức miền nào. Giả định cơ bản của hệ tư vấn dựa trên lọc cộng tác là nếu người

Page 19: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

5

dùng đã đồng tình với nhau trong quá khứ, họ có nhiều khả năng đồng tình với nhau trong

tương lai hơn là đồng tình với người dùng lựa chọn ngẫu nhiên. Hiện phương pháp lọc cộng

tác có thể được phân loại thành các phương pháp dựa trên bộ nhớ và các phương pháp dựa

trên mô hình [13].

- Lọc cộng tác dựa trên bộ nhớ

Phương pháp dựa trên bộ nhớ (memory-based) sử dụng cả ma trận người dùng – mục

và một mẫu để tạo ra một dự đoán, có thể được chia thành các phương pháp hướng người

dùng và phương pháp hướng mục. Phương pháp hướng người dùng dự đoán đánh giá chưa

biết của một người dùng với một mục là trung bình trọng số của tất cả các xếp hạng từ

những người dùng tương tự với người dùng đó đối với mục, trong khi phương pháp hướng

mục dự đoán đánh giá của một người dùng với một mục dựa trên đánh giá trung bình của

các mục tương tự được đánh giá bởi người dùng đó. Vấn đề trọng tâm mà phương pháp lọc

cộng tác dựa trên bộ nhớ cần phải giải quyết là tính toán độ tương tự và tổng hợp các đánh

giá. Các phương pháp hướng người dùng và hướng mục có thể tận dụng kỹ thuật tương tự

để giải quyết hai vấn đề này.

- Lọc cộng tác dựa trên mô hình

Phương pháp dựa trên mô hình (model-based) giả định một mô hình để tạo ra các

đánh giá và áp dụng các kỹ thuật khai phá dữ liệu và học máy để tìm mô hình từ dữ liệu

huấn luyện, có thể được sử dụng để đưa ra dự đoán cho đánh giá chưa biết. Phương pháp

dựa trên mô hình nổi tiếng bao gồm mô hình lọc cộng tác mạng niềm tin Bayesian, mô hình

phân cụm CF, Phương pháp dựa trên bước ngẫu nhiên và mô hình CF dựa trên nhân tử hóa

ma trận (matrix factorization). Phương pháp CF dựa trên nhân tử hóa ma trận được coi là

tốt nhất và được áp dụng rộng rãi để xây dựng hệ tư vấn [19].

Hệ tư vấn dựa trên lọc cộng tác có thể khắc phục một số thiếu sót của hệ tư vấn dựa

trên nội dung. Ví dụ, hệ thống dựa trên lọc cộng tác sử dụng thông tin các đánh giá. Nó là

những miền độc lập và có thể tư vấn bất kỳ mục nào. Tuy nhiên, hệ thống dựa trên CF có

những hạn chế riêng của nó chẳng hạn như vấn đề xuất phát nguội (mặt hàng mới hoặc

người dùng mới) và các vấn đề thưa thớt dữ liệu.

Các hệ tư vấn lai

Để tránh những hạn chế nhất định về hệ thống lọc cộng tác và nội dung, các phương

pháp lai kết hợp các phương pháp dựa trên nội dung và dựa trên CF. Các chiến lược khác

Page 20: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

6

nhau được đề xuất để kết hợp các phương pháp dựa trên nội dung và CF, mà có thể được

tạm chia thành ba loại:

- Kết hợp các hệ tư vấn khác nhau: Theo chiến lược này, các phương pháp dựa trên nội

dung và CF được thực hiện một cách riêng biệt. Sau đó dự đoán của họ được kết hợp để

có được những tư vấn cuối cùng.

- Thêm đặc tính dựa trên nội dung và mô hình CF: Hệ thống với chiến lược này sử dụng

hồ sơ dựa trên nội dung và số ít các mục đã được đánh giá để tính độ tương đồng giữa

các người dùng. Những hệ thống này có thể khắc phục một số vấn đề liên quan đến thưa

thớt dữ liệu của phương pháp CF và giới thiệu các mục trực tiếp khi điểm số mục cao

so với hồ sơ của người sử dụng.

- Thêm các đặc tính dựa trên CF vào các mô hình dựa trên nội dung: Phương pháp phổ

biến nhất trong chiến lược này là sử dụng một kỹ thuật giảm chiều trên ma trận nội dung

hồ sơ.

1.2. Tư vấn xã hội

1.2.1. Phương tiện xã hội

Chúng ta đang sống trong thời đại toàn cầu hóa với sự thay đổi và phát triển chóng mặt

của Web và Internet. Với sự ra đời của hàng loạt các mạng xã hội, các ứng dụng Web, cùng

với đó các hình thức tương tác và liên lạc mới giữa những người dùng cũng ra đời. Các chợ

trực tuyến giới thiệu các sản phẩm bằng cách sử dụng trí tuệ đám đông thông qua các tương

tác trong việc mua sắm và đánh giá sản phẩm của người dùng [14].

Các phương tiện xã hội bao gồm nhiều loại như: blog (Worldpress, Blogspot,...), mạng

xã hội (Facebook, LinkedIn,...), wikis (Wikipedia,...), nền tảng chia sẻ phương tiện truyền

thông (Youtube, Flickr,...), diễn đàn (vn-zoom, Yahoo! answer,...) hay microblogging

(Twitter,...) [14]. Có thể kể đến một số phương tiện xã hội phổ biến với số người dùng và

lượng thông tin mang lại khổng lồ như: Wikipedia – thành lập năm 2001, hiện nay có

4,679,851 bài viết và số người dùng đăng kí lên đến 23,567,283 bao gồm 1,374 người quản

trị8; hay mạng xã hội Facebook với số người dùng tích cực hàng tháng là 1,35 tỷ người (tính

đến tháng 9 – 2014)3, Twitter với 500 triệu tweets được đăng lên mỗi ngày4.

8 http://en.wikipedia.org/wiki/Wikipedia:About

Page 21: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

7

Các phương tiện xã hội có một tính năng phổ biến để phân biệt với các trang web cổ

điển và phương tiện truyền thống: người dùng của các nội dung, thông tin và tri thức cũng

đồng thời là người tạo ra các nội dung, thông tin và tri thức. Phương tiện xã hội truyền

thống như tivi, báo, đài, phim ảnh chủ yếu chỉ có một số ít những chuyên gia hay các nhà

sản xuất quyết định nội dung, lượng và phân phối thông tin và tri thức. Hình thức tương tác

là một chiều từ các nhà sản xuất đến rộng rãi người dùng, tách riêng phía người dùng và

nhà sản xuất.

Người dùng các phương tiện xã hội ngày nay có thể chính là những người tạo ra thông

tin, quyết định nội dung thông tin được đăng lên nhờ có sự ra đời của các quyền, tính năng

mới trong việc tương tác người dùng – phương tiện xã hội. Ví dụ như người dùng Youtube

hoàn toàn có khả năng chia sẻ một video của bản thân bằng cách đăng lên trang

youtube.com từ tài khoản cá nhân và lựa chọn quyền công khai cho video, hay như việc

bạn hoàn toàn có thể đóng góp bài đăng của chính mình lên Wikipedia nhờ có cơ chế cộng

tác mở của nó.

Một điểm làm nên sự khác biệt của phương tiện xã hội là sự phong phú trong các tương

tác giữa những người dùng [14]. Sự thành công của các phương tiện xã hội được đánh giá

bằng sự tham gia của người dùng. Càng nhiều người dùng tích cực tương tác thì càng thúc

đẩy những người dùng khác tham gia nhiều hơn. Giống như việc hầu hết bạn bè của bạn sử

dụng Facebook để liên lạc, nói chuyện hay lập nhóm trao đổi thì bản thân bạn cũng sẽ tham

gia. Facebook báo cáo có trung bình 864 triệu người sử dụng hoạt động mỗi ngày tính đến

tháng 9 năm 20143. Sự phát triển của các phương tiện xã hội mở ra một thách thức mới cho

khai phá dữ liệu sử dụng nguồn dữ liệu khổng lớn mà nó mang lại.

1.2.2. Khái niệm tư vấn xã hội

Sự phát triển của các phương tiện xã hội đã mạng lại một nguồn dữ liệu mới từ các mối

quan hệ xã hội phong phú giữa những người dùng. Ví dụ như mối quan hệ bạn bè hai chiều

trên mạng xã hội Facebook hay quan hệ following – follower trên Twitter, quan hệ tin cậy

trên các diễn đàn,... Các mối quan hệ này cho phép những người dùng trao đổi ý kiến và

chia sẻ ý tưởng, quan điểm với bạn bè của họ. Những sở thích của người dùng tương tự với

hoặc chịu ảnh hưởng bởi bạn bè kết nối xã hội của họ và lý do đằng sau giả định có thể

được giải thích bởi lý thuyết tương quan xã hội như homophily và ảnh hưởng xã hội.

Homophily chỉ ra rằng những người dùng có sở thích tương tự có nhiều khả năng được kết

Page 22: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

8

nối, và ảnh hưởng xã hội cho thấy những người dùng đã kết nối có nhiều khả năng có sở

thích tương tự [19]. Đối chiếu với thực tế, mỗi khi chúng ta muốn mua một sản phẩm hoặc

đưa ra một quyết định nào đó, chúng ta thường có xu hướng hỏi bạn bè, những người xung

quanh mà ta tin cậy để nghe những gợi ý của họ. Điều này cho thấy khả năng sử dụng các

mối quan hệ xã hội để cải tiến hệ tư vấn.

Hệ tư vấn xã hội đầu tiên xuất hiện năm 1997 [19]. Cùng với sự phát triển của các

phương tiện xã hội, các nghiên cứu về tư vấn xã hội cũng được quan tâm, chú ý nhiều hơn

do tiềm năng phát triển của nó. Tuy nhiên, chưa có một khái niệm chính thức nào được

công nhận. Dựa trên các tài liệu hiện có, Jiliang Tang và cộng sự đã đưa ra định nghĩa hẹp

và định nghĩa rộng của tư vấn xã hội.

Theo đó, định nghĩa hẹp của tư vấn xã hội là một hệ tư vấn bất kì nào có sử dụng các

mối quan hệ xã hội như một đầu vào bổ sung như việc cải tiến hệ tư vấn hiện tại sử dụng

thêm các tín hiệu xã hội. Các mối quan hệ xã hội có thể là tình bạn (như trên Facebook

chẳng hạn), quan hệ tin cậy, quan hệ thành viên. Từ giả thiết người dùng chịu sự ảnh hưởng

của các mối quan hệ xã hội như việc có sở thích giống như bạn bè của họ, đã có nhiều

nghiên cứu đưa ra các hệ tư vấn xã hội sử dụng sự tương tác này để nâng cao hiệu suất tư

vấn như: TidalTrust trong công bố của Golbeck năm 2006; MoleTrust trong công bố của

Massa và Avesani năm 2007, Victor và cộng sự năm 2011; SoRec trong công bố của Ma

và cộng sự 2009; SocialMF trong công bố của Jamali and Ester năm 2009; SoReg trong

công bố của Ma và cộng sự năm 2011 và LOCALBAL trong công bố của Tang và cộng sự

năm 2013.

Định nghĩa rộng của tư vấn xã hội là hệ tư vấn bất kì nhắm đến lĩnh vực phương tiện xã

hội [19]. Định nghĩa này chỉ ra: đối tượng của hệ tư vấn xã hội là bất kì trong các lĩnh vực

phương tiện xã hội như con người, cộng đồng, mục, thẻ,...; các nguồn sử dụng trong tư vấn

xã hội không giới hạn ở các mối quan hệ xã hội mà bao gồm cả các loại dữ liệu phương

tiện xã hội có sẵn như tương tác người dùng, gắn thẻ hay hành vi click chuột của người

dùng,...

Ngoài các thông tin như ở hệ tư vấn truyền thống, tư vấn xã hội sử dụng thêm các kết

nối giữa những người dùng với nhau. Các kết nối này có thể là mối quan hệ bạn bè, quan

hệ tin cậy,... � ∈ R�×� biểu thị các mối quan hệ người dùng – người dùng. Tij = 1 nếu uj

Page 23: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

9

kết nối với ui và bằng 0 nếu ngược lại. Các mối quan hệ có sẵn T dung cấp một nguồn độc

lập cho tư vấn và là tùy chọn bổ sung của tư vấn xã hội.

Các hệ tư vấn truyền thống sử dụng giả thiết người sử dụng độc lập và phân phối giống

nhau. Tuy nhiên trong thực tế, những người dùng trực tuyến vốn đã có sự kết nối với những

người dùng các thông qua các mối quan hệ bạn bè, tin cậy. Những người có kết nối với

nhau thường có xu hướng chia sẻ các sở thích cá nhân, ý tưởng cho nhau. Từ đó, sở thích

của họ cũng ảnh hưởng lẫn nhau. Một người dùng có khả năng tương đồng với những người

họ có kết nối hơn là với những người dùng ngẫu nhiên. Tuy nhiên điều này không có nghĩa

một người dùng ui có kết nối với k người thì k người này tương đồng với hầu hết những

người tương đồng với ui trong việc đánh giá các mục [19]. Từ đó, người ta xem xét các kết

nối như các phép đo tương tự, thông tin xã hội cung cấp bằng chứng tương tự.

Bên cạnh các hệ tư vấn, tư vấn xã hội liên quan đến lĩnh vực nghiên cứu phân tích mạng

xã hội. Phân tích mạng xã hội (SNA) là phương pháp nổi lên như một kỹ thuật quan trọng

trong xã hội hiện đại với những công cụ sẵn có có thể sử dụng. Hệ tư vấn xã hội có thể tận

dụng lợi thế của kết quả nghiên cứu phân tích mạng xã hội như lý thuyết tương quan xã hội,

phân tích trạng thái, phát hiện nhóm (cộng đồng), niềm tin trực tuyến và mạng không đồng

nhất để tư vấn. Kết quả nghiên cứu từ phân tích mạng xã hội mở ra cách để khai thác các

mối quan hệ xã hội và có thể được áp dụng để xây dựng hệ tư vấn xã hội..

1.2.3. Các bài toán tư vấn xã hội

Người dùng trên các phương tiện xã hội được miêu tả bằng 3 loại thông tin: thông tin

xã hội (như bạn bè, người theo dõi, người được theo dõi,...), thông tin nội dung (nhạc, phim,

tin tức, sản phẩm...) và thông tin địa điểm (địa điểm địa lý, các địa điểm thú vị,...) [20].

Từ 3 loại thông tin đó dẫn đến 3 bài toán của tư vấn xã hội là: tư vấn bạn bè, tư vấn nội

dung và tư vấn địa điểm.

Tư vấn bạn bè

Các mối liên kết người dùng trên các phương tiện xã hội có thể được miêu tả bằng đồ

thị người dùng có hướng tương tác với các nút là những người dùng, các cạnh biểu thị các

kết nối giữa họ. Từ đồ thị này, ta chuyển sang một ma trận kề S người dùng – người dùng

với các ô Sij có giá trị bằng 1 nếu người dùng ui và uj đã có kết nối và bằng 0 nếu chưa (hình

1.1)

Page 24: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

10

Hình 1.1 Từ đồ thị người dùng sang ma trận người dùng – người dùng

Tư vấn bạn bè cơ bản là dự đoán những liên kết còn thiếu sử dụng 2 hướng tiếp cận

chủ yếu là học máy giảm sát và bán giám sát [20]. Hướng tiếp cận sử dụng học máy giám

sát coi việc dự đoán như một bài toán phân lớp, trích chọn đặc trưng của từng cặp người

dùng, nhãn của mỗi cặp là 1 nếu có liên kết và là 0 nếu không có liên kết, áp dụng các mô

hình phân lớp. Hướng tiếp cận sử dụng học máy không giám sát dựa trên đặc điểm của

mạng được lấy, dựa trên khả năng kết nối (dùng các độ đo tương tự, láng giềng gần nhất,...)

hoặc dựa trên nhân tử hóa ma trận (matrix factorization).

Tóm tắt chương 1

Chương 1 trình bày các nội dung cơ bản về tư vấn và tư vấn xã hội, cho cái nhìn tổng

quan về tư vấn và hệ tư vấn cũng như một số phương pháp giải quyết bài toán tư vấn. Đồng

thời, khóa luận cũng đưa ra cái nhìn tổng quan về khả năng khai thác các mối quan hệ xã

hội trong tư vấn.

Chương tiếp theo sẽ trình bày về tư vấn nhóm và các phương pháp giải quyết bài toán

tư vấn nhóm.

U1 U2 U3 U4

U1 0 1 1 0

U2 0 0 0 0

U3 1 0 0 1

U4 1 0 1 0

U1

U2 U3

U4

Page 25: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

11

Chương 2. Tư vấn nhóm

2.1. Nhóm trong mạng xã hội

2.1.1. Khái niệm

Một nhóm6 hay cộng đồng (community) là một tập hợp xã hội của các cá thể sống chung

trong cùng một môi trường và thường có cùng các mối quan tâm chung. Trong các mạng

xã hội, người dùng thường có xu hướng tương tác thường xuyên với một số người dùng

nhất định khác tạo nên các nhóm khăng khít. Các nhóm còn được gọi là các cộng đồng, các

cụm, các nhóm nhỏ gắn kết hay các module tùy theo từng ngữ cảnh khác nhau [14]. Người

dùng trong một nhóm mạng xã hội thường chia sẻ, trao đổi ý kiến, tương tác nhiều với

những người dùng trong cùng nhóm hơn là những người dùng ở ngoài nhóm.

Phát hiện nhóm6 là một vấn đề quan trọng trong việc phân tích mạng xã hội. Việc phát

hiện các nhóm cũng giúp khám phá các nhóm đối tượng tương tác với nhau và các mối

quan hệ giữa chúng. Ví dụ, trong các mạng xã hội, nhóm tương ứng với các nhóm bạn bè,

người học cùng trường hay những người cùng quê. Xác định các nhóm mạng cho phép

khám phá đối tượng chức năng liên quan, nghiên cứu sự tương tác giữa các phân hệ, suy ra

giá trị bị mất thuộc tính, và dự đoán các kết nối không quan sát được [14].

Page 26: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

12

Hình 2.1. Cấu trúc nhóm trong mạng xã hội

2.1.2. Các phương pháp phát hiện nhóm

Mạng xã hội thực rất phức tạp. Theo Jiang Tang và cộng sự [15, 19], không có ai chỉ

xuất hiện ở duy nhất một mạng xã hội, (ví dụ như mạng công khai và mạng bí mật, mạng

doanh nghiệp và mạng gia đình,...), tuy nhiên các mạng đang tồn tại thì lại mong muốn đưa

tất cả mọi người về một mạng lớn. Ví dụ như Facebook và Twitter đều có tham vọng trở

thành mạng xã hội lớn duy nhất tập hợp tất cả mọi người (Facebook tạo nên các nhóm, danh

sách,...), hay Google+, khi bạn cho một người vào vòng kết nối, bạn sẽ được chọn lựa loại

vòng kết nối để đưa vào (sẵn có như bạn cùng lớp, gia đình,... hoặc tạo mới). Trên thực tế,

có rất ít người tạo các nhóm với bạn bè của mình, đơn giản vì lười hoặc với một người có

quá nhiều mối quan hệ, ta không biết phải nhóm họ như thế nào. Vì vậy, các nhóm có sẵn

ở các mạng xã hội là rất ít.

Page 27: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

13

Phát hiện nhóm (group/community detection) không chỉ tạo điều kiện cho các tác vụ

liên quan đến phân tích mạng mà còn được ứng dụng trong thực tế. Ví dụ, trong việc quảng

cáo sản phẩm của một công ty, việc phát hiện ra các cộng đồng/nhóm người dùng với những

đặc trưng khác nhau ứng với từng loại sản phẩm giúp cho việc tư vấn, quảng cáo sản phẩm

hướng đến đúng đối tượng, tăng khả năng giao dịch thành công giúp nâng cao doanh số.

Nhóm cũng có thể sử dụng để nén một mạng lưới khổng lồ trở thành một mạng nhỏ hơn –

mạng các nhóm (giải quyết vấn đề ở mức nhóm thay vì từng nút), từ đó cung cấp một giải

pháp trực quan đề phân tích mạng, hình dung mạng ở các mức phân giải khác nhau [14].

Đôi khi, nhóm có thể cho thấy các tính chất mà không cần lộ ra thông tin riêng tư của các

cá nhân trong nhóm [21].

Việc phát hiện các nhóm có thể coi như việc phân nhóm một tập các người dùng, mỗi

người dùng có thể thuộc nhiều nhóm khác nhau, dựa trên các đặc điểm, thuộc tích, các mối

liên kết trong mạng của người dùng [14].

Sự phát triển mạnh mẽ của các phương tiện xã hội ngày nay tạo nên nguồn dữ liệu mới,

đa dạng. Trong đó có thể kể đến nguồn dữ liệu khổng lồ về các mối quan hệ giữa những

người dùng trong mạng xã hội. Điều này đã thúc đẩy các nghiên cứu về phát hiện nhóm

trong mạng xã hội, sinh ra các luồng nghiên cứu mới về phát hiện nhóm trong mạng xã

hội. Có ba luồng nghiên cứu chính trong phát hiện nhóm mạng xã hội [14]:

- Luồng thứ nhất tập trung vào mở rộng phạm vi của các phương pháp phát hiện nhóm

đã có để xử lý mạng xã hội với kích thước khổng lồ như hiện nay do các phương pháp

cũ không được xử lý để có thể áp dụng với mạng xã hội.

- Luồng thứ hai tập trung vào nghiên cứu các mạng chứa những thực thể không đồng nhất

và các mối tương tác giữa chúng. Ví dụ như mạng trong Youtube chứa các loại thực thể

như người dùng, video, các thẻ. Các thực thể trong các loại khác nhau có thể tương tác

với nhau (như việc người dùng gắn thẻ cho video, người dùng xem video, hay bình luận

trên một video của người khác,...). Người dùng trong mạng này có thể giao tiếp với nhau

bằng nhiều cách như gửi tin nhắn, để lại nhận xét,... Các loại thực thể khác nhau hoặc

cách tương tác khác nhau giữa các thực thể tạo nên một mạng lưới không đồng nhất

trong phương tiện xã hội. Trong luồng này, các nhà nghiên cứu xem xét làm thế nào

nhóm trong một loại thực thể tương quan với nhóm trong loại thực thể khác và cách

phát hiện các nhóm ẩn trong các tương tác không đồng nhất.

Page 28: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

14

- Luồng thứ ba xem xét đến tính động của nhóm. Các mạng xã hội phát triển và thay đổi

theo thời gian về cả kích thước và thành phần, trong quá trình đó người dùng có thể thay

đổi nhóm (rời nhóm cũ tham gia vào một nhóm mới) hoặc rời khỏi mạng xã hội. Bản

chất các mạng xã hội là thay đổi theo thời gian, ví dụ như Facebook tăng số lượng người

dùng hoạt động hàng ngày3 từ 757 triệu người dùng (trung bình tính đến tháng 9-2013)

lên đến 864 triệu người dùng (trung bình tháng 9-2014), tăng 19%. Các nghiên cứu xem

xét làm thế nào để phát hiện nhóm bắt kịp với sự phát triển của nhóm đó, sử dụng các

mẫu có thời hạn và làm thế nào các mẫu này có thể giúp phát hiện nhóm.

Theo Jaewon Yang và cộng sự [14], các hướng tiếp cận phổ biến đối với bài toán phát

hiện nhóm có thể được chia làm bốn loại chính: tập trung nút (node-centric), tập trung nhóm

(group-centric), tập trung mạng (network-centric) và tập trung cấu trúc phân cấp (hierarchy-

centric).

2.2. Khái niệm tư vấn nhóm

Trở lại ví dụ ở phần giới thiệu:

Một kỳ nghỉ lễ ba ngày đang tới dần mà một hoạt động quan trọng trong kỳ nghỉ đó

là đi tham quan. Thông qua một phương tiện xã hội (chẳng hạn như Facebook), các nhóm

bạn trẻ cùng sở thích đi tham quan ("phượt") được nhận diện. Một tiện ích cần được xây

dựng trong phương tiện xã hội nói trên để tư vấn cho từng nhóm bạn trẻ nói trên về một

vài địa điểm tham quan phù hợp nhất cho từng nhóm đó dựa trên sở thích tham quan từ

trước tới nay của mỗi thành viên trong nhóm.

Làm thế nào để một hệ tư vấn có thể đưa ra được địa điểm để gợi ý cho nhóm bạn này đi

du lịch trong khi mỗi người trong nhóm có một sở thích riêng ?

Mục đích của các hệ tư vấn cổ điển là đưa ra gợi ý cho người dùng về một mục mà họ

có thể quan tâm, dựa trên việc phân tích các dữ liệu liên quan đến người dùng đó như sở

thích hồ sơ cá nhân của người đó. Tuy nhiên, trong một số trường hợp, hệ tư vấn cổ điển

không thể sử dụng được, có thể kể đến [3]:

- Tư vấn cho một nhóm người dùng chia sẻ các sở thích giống nhau cùng làm một việc

(ví dụ như một nhóm bạn thích chụp ảnh rủ nhau đi du lịch).

- Tư vấn cho một nhóm người không đồng nhất, mục đích và sở thích khác nhau nhưng

tạo nhóm nhân một dịp đặc biệt (ví dụ như việc một lớp tổ chức đi liên hoan).

Page 29: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

15

- Tư vấn trong môi trường chia sẻ, mọi người không có điểm chung (ví dụ như chơi nhạc

trong một câu lạc bộ).

- Trong trường hợp các mục chỉ định cho hệ tư vấn là có hạn, những người dùng có sở

thích tương tự được nhóm lại với nhau (ví dụ như việc quảng bá sản phẩm của một công

ty).

Tư vấn nhóm đưa ra gợi ý phản ảnh các mối quan tâm và sở thích của tất cả các thành viên

trong nhóm ở mức cao nhất có thể bằng cách tính toán điểm số cho những gợi ý dựa trên

sở thích và đặc điểm của mọi người trong nhóm.

Từ các trường hợp nêu trên, ta phân loại nhóm trong tư vấn nhóm thành 4 loại:

- Nhóm được thành lập: những người trong nhóm tự nguyện tham gia vào nhóm để chia

sẻ những sở thích lâu dài.

- Nhóm không thường xuyên: những người trong nhóm cùng mục tiêu trong một thời

điểm nhất định.

- Nhóm ngẫu nhiên: gồm những người trong môi trường chia sẻ trong một dịp đặc biệt,

không có sở thích chung nào tường minh giữa họ.

- Nhóm được phát hiện tự động: nhóm này được phát hiện tự động dựa trên việc xem xét

các sở thích của người dùng trong nhóm và các thông tin sẵn có khác, phục vụ tư vấn

trong trường hợp giới hạn các mục.

Mỗi cách chia nhóm ảnh hưởng đến hướng giải quyết của hệ tư vấn nhóm.

2.3. Giải pháp cho tư vấn nhóm

Như đã trình bày ở mục 2.2, bốn loại nhóm được định nghĩa ứng với 4 trường hợp

khác nhau của tư vấn nhóm. Mỗi loại có những hướng tiếp cận khác nhau. Trong giới hạn

của khóa luận, tôi xin trình bày các công nghệ tư vấn tự động (ứng với nhóm được phát

hiện tự động), tức là, một tập hợp các nhóm thuật toán tư vấn, tạo ra các tư vấn trong trường

hợp các tư vấn có thể tạo ra là giới hạn. Để xem xét sở thích của mỗi người dùng và số

lượng hạn chế các tư vấn có thể sinh ra, tiến hành phát hiện các nhóm người dùng, sau đó

kết hợp những sở thích cá nhân, xây dựng một mô hình nhóm, cho phép dự đoán sở thích

của nhóm.

Page 30: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

16

2.3.1. Các giải pháp phổ biến

Mục này giới thiệu sơ qua một số hướng tiếp cận phổ biến hiện nay đối với mỗi loại

nhóm người dùng đã trình bày ở trên:

Loại 1. Tư vấn cho nhóm được thành lập

Đặc điểm của nhóm được thành lập là các thành viên trong nhóm tự chọn tham gia

vào nhóm vì mục đích chia sẻ sở thích lâu dài. Ở đó, các thành viên trong nhóm cần phải

có sự kiên trì và tích cực tham gia nhóm. Hệ tư vấn thiết kế cho nhóm này thường đưa ra

gợi ý về các lĩnh vực như: giải trí / mục văn hóa phẩm (như sách, nhạc và phim) và tài liệu

(như các trang web và các tài liệu hội nghị) [3].

Một số hệ tư vấn phổ biến [5, 3, 7]:

- Hệ tư vấn cho nhóm các mục thuộc lĩnh vực giải trí/văn hóa như Grec_OC trong công

bố của Kim và cộng sự năm 2009 tư vấn nhóm cho nhóm trực tuyến; Jukola trong công

bố của O'Hara và cộng sự năm 2004 và PartyVote trong công bố của Sprague và cộng

sự năm 2008 là hai hệ thống có thể cung cấp âm nhạc cho một nhóm xã hội được thành

lập từ những người tham dự một bữa tiệc/sự kiện xã hội; Các hệ thống được đề xuất

trong công bố của Recio-Garc' Ia và cộng sự năm 2009 tạo ra các tư vấn nhóm xem

xét đến tính cách của các thành viên trong nhóm (sự tổ hợp của các cá nhân trong nhóm)

và sự ảnh hưởng của các xung đột đến quá trình tư vấn.

- Hệ thống tư vấn nhóm cho các tài liệu như I-SPY trong công bố của Smyth và cộng sự

là một công cụ tìm kiếm cá nhân hóa các kết quả tìm kiếm web, sử dụng các sở thích

của một nhóm những người sử dụng có suy nghĩ giống nhau; Glue trong công bố của

Carta và cộng sự năm 2008 sử dụng một thuật toán truy hồi hợp tác giám sát các hoạt

động của nhóm người dùng trong một công cụ tìm kiếm, nhằm khai thác phản hồi tiềm

ẩn; CAPS trong công bố của Sharon và cộng sự năm 2003 tư vấn trang và chú thích liên

kết, dựa vào sự nổi tiếng của chúng trong số các đồng nghiệp của người dùng và của hồ

sơ người dùng. Hệ thống này được thiết kế tăng cường các hoạt động tìm kiếm của

người dùng xem xét kinh nghiệm của các đồng nghiệp của người dùng, sử dụng tiếp cận

CF và một giao diện không-đầu vào (có thể thu thập thông tin ẩn); Phương pháp được

đề xuất trong công bố của Baskin và Krishnamurthi năm 2009 được phát triển để giúp

một nhóm các thành viên trong ủy ban hội nghị lựa chọn các mục phù hợp nhất trong

một tập lớn các ứng cử viên. Phương pháp này được dựa trên các sở thích tương đối của

Page 31: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

17

từng nhà đánh giá, tức là, thể hiện sở thích bằng bảng xếp hạng không có điểm các mục

ưa thích. Tất cả các thứ tự thích của các nhà đánh giá được tổng hợp thông qua một

thuật toán tìm kiếm lân cận bất định được cải thiện bởi các tác giả với mục đích tư vấn.

Loại 2. Các hệ thống xem xét các nhóm không thường xuyên với một mục đích cụ thể

Có rất nhiều bối cảnh trong đó một nhóm không được thành lập, nhưng có thể cùng

quan tâm đến một mục tiêu chung. Trường hợp của những người đi du lịch với nhau là một

ví dụ: họ có thể không biết nhau, nhưng họ chia sẻ sở thích cho cùng một nơi phổ biến. Một

hệ tư vấn nhóm có thể hữu ích trong trường hợp này vì nó có thể xử lý sở thích của một

nhóm không đồng nhất, để đạt được các mục đích chung. Hệ tư vấn cho các nhóm không

thường xuyên được phát triển cho các mảng tư vấn phim, điểm đến du lịch hay các chương

trình truyền hình.

Hệ tư vấn nhóm cho các chương trình truyền hình xem xét các nhóm không thường

xuyên nhưng có cùng một mục đích cụ thể (như xem TV với nhau) và chia sẻ ngẫu nhiên

một môi trường.

- Tư vấn cho nhóm các bộ phim như PolyLens [10] trong công bố của O'Connor và cộng

sự năm 2001 là một hệ thống được xây dựng để đưa ra các tư vấn cho các nhóm người

dùng muốn xem một bộ phim sử dụng một thuật toán CF để đưa ra tư vấn cho mỗi người

dùng của nhóm và sử dụng chiến lược tối thiểu sự không hài lòng để mô hình nhóm; Hệ

thống được đề xuất trong công bố của de-Campos và cộng sự năm 2007 và 2009 trình

bày một cách tiếp cận tư vấn nhóm dựa trên mạng Bayesian (BN).

- Tư vấn nhóm cho các điểm đến du lịch như CATS (hệ tư vấn cộng tác cho du lịch) có

mục đích là giúp một nhóm bạn lên kế hoạch và sắp xếp ngày nghỉ để đi trượt tuyết

bằng cách thu thập những lời phê bình (các phản hồi) của người dùng khi duyệt những

tư vấn (ví dụ, một người dùng có thể xác định rằng anh/cô ấy đang tìm kiếm một khách

sạn rẻ hơn, bằng cách phê phán các tính năng giá). Tư vấn cá nhân được xây dựng bằng

cách sử dụng cả IM(mô hình cá nhân) và GUM(mô hình nhóm người dùng) để tối đa

hóa sự hài lòng của nhóm, trong khi tư vấn nhóm dựa trên những lời phê bình chứa

trong GUM; INTRIGUE (tương tác hướng dẫn thông tin du lịch) trong công bố của

Ardissono và cộng sự năm 2005 là một hệ tư vấn sử dụng các điểm tham quan yêu thích

của các thành viên nhóm xem xét tính không đồng nhất của một nhóm. Mỗi nhóm này

được chia thành các phân nhóm đồng nhất của các thành viên tương tự phù hợp với một

Page 32: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

18

khuôn mẫu (ví dụ, trẻ em, thanh niên, người già,…). Các khuyến nghị được dự đoán

cho mỗi nhóm dựa trên xây dựng một sở thích chung có xem xét một số các phân nhóm

(ví dụ, người tàn tật) có ảnh hưởng nhiều hơn; TravelDecision Forum trong công bố

của Jameson và cộng sự năm 2003, 2004 là một hệ thống cho phép các nhóm người lên

kế hoạch cho một kỳ nghỉ. Tư vấn được thực hiện bằng cách sử dụng một tập hợp đơn

giản (trung bình) của các sở thích cá nhân; Lorenzi và cộng sự năm 2008 đưa ra một hệ

thống đa đại diện, các đại diện thay mặt cho một nhóm khách hàng, để đưa ra các tư vấn

của nhóm. Hệ thống hoạt động với hai loại đại diện: một là đại diện người dùng (UA),

người thay mặt cho một người dùng và biết sở thích của người dùng đó, và một đại diện

phía tư vấn (RA), người thay mặt cho các nhà cung cấp dịch vụ du lịch. Hệ thống đề

xuất một chức năng tối ưu hóa để xử lý các tương tác của các đại diện và tìm thấy những

tư vấn tốt nhất; e-Tourism trong công bố của Garcia và cộng sự năm 2009 là một hệ tư

vấn kế hoạch tour du lịch cho nhóm người dùng. Hệ thống xem xét các khía cạnh khác

nhau, như sở thích nhóm, phân loại nhân khẩu học (demographic9) và các địa điểm đã

đến thăm. Sở thích nhóm được tính bằng cách tổng hợp, tìm điểm chung và các phương

pháp tăng điểm chung và lọc đi danh sách các mục đã tư vấn; Pocket RestaurantFinder

trong công bố của McCarthyn năm 2002 là một hệ tư vấn dùng cho các nhóm có nhu

cầu tìm nhà hàng để cùng đi ăn với nhau. Mỗi người tham dự tạo nên một hồ sơ cá nhân

với những yêu cầu của họ với nhà hàng, như phạm vi giá cả hoặc các loại món ăn họ

thích (hoặc không thích). Hệ thống ước tính sở thích cá nhân của người dùng cho mỗi

nhà hàng và trung bình các giá trị để xây dựng một sở thích nhóm và tạo ra một danh

sách các tư vấn.

- Tư vấn nhóm các chương trình truyền hình như FIT (Hệ thống truyền hình tương tác

gia đình) trong công bố cua Goren-Bar và Glinansky năm 2004 là một hệ tư vấn nhằm

lọc các chương trình TV xem xét sở thích của khán giả. Hệ thống tự động cập nhật một

hồ sơ cá nhân, bằng cách thu thập ý kiến phản hồi tiềm ẩn từ thói quen xem của người

sử dụng. Các chương trình được tư vấn thông qua một thuật toán kết hợp xác suất và sở

thích của người dùng; Hệ thống được đề xuất trong trong công bố của Vildjiounaite và

cộng sự năm 2009 tư vấn các chương trình truyền hình cho một gia đình bằng cách quan

sát các chỉ số như lượng thời gian một chương trình truyền hình đã được theo dõi, từ đó

9 Demographic: thuộc tính nhân khẩu học, bao gồm 1 số thuộc tính như: Độ tuổi, Giới tính, Tình trạng hôn nhân, Thu nhập…

Page 33: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

19

khai thác sở thích của người dùng và xây dựng hồ sơ. Để ước tính sở thích của người

sử dụng trong các khía cạnh khác nhau, hệ thống thực hiện huấn luyện trên mỗi lịch sử

gia đình 3 mô hình vector học máy SVM cho tên trương trình, thể loại và lịch sử xem.

Sau khi các mô hình đã được huấn luyện, việc tư vấn được thực hiện với công nghệ

CBR (suy luận dựa trên trường hợp); TV4M trong công bố của Yu và cộng sự năm

2006 là một hệ tư vấn các chương trình truyền hình cho nhiều người xem. Để xác định

được ai đang xem TV, hệ thống cung cấp một tính năng đăng nhập. Để xây dựng một

hồ sơ nhóm đáp ứng hầu hết các thành viên trong nhóm, tất cả các hồ sơ người xem hiện

tại được sát nhập, bằng cách tính một tổng các khoảng cách nhỏ nhất của các đặc trưng

có sẵn (ví dụ, thể loại, diễn viên, vv).

Loại 3. Tư vấn nhóm xem xét các nhóm ngẫu nhiên cùng chia sẻ một môi trường

Một nhóm ngẫu nhiên được hình thành bởi những người cùng chia sẻ một môi trường

mà không có một mục đích cụ thể. Bản chất của nó là không đồng nhất và các thành viên

của nó có thể không chia sẻ sở thích. Hệ tư vấn nhóm làm việc với các nhóm ngẫu nhiên

tính toán danh sách các mục để dự báo thường xuyên, như việc một người dùng có thể tham

gia hoặc rời khỏi môi trường bất cứ lúc nào. Phần này sẽ mô tả hệ tư vấn nhóm làm việc

với các nhóm ngẫu nhiên. Hai lĩnh vực tư vấn chính có liên quan đến loại hình này là các

mục đa phương tiện (ví dụ như âm nhạc) phát sóng trong một môi trường chia sẻ và các

mục thông tin (ví dụ, tin tức hoặc các trang web).

- Tư vấn cho nhóm các mục phát sóng đa phương tiện như AdaptiveRadio trong công

bố của Chao và cộng sự năm 2005 là một hệ thống tư vấn chương trình phát sóng bài

hát cho một nhóm người có chung một môi trường. Cách tiếp cận này sẽ cố gắng để cải

thiện sự hài lòng của người sử dụng bằng cách tập trung vào sở thích tiêu cực, tức là,

nó theo dõi các bài hát một người dùng không muốn nghe và tránh được chơi cho họ.

Các các bài hát được đánh giá cao nhất giữa những bài còn lại sẽ được tự động phát; In-

Vehicle Multimedia Recommender trong công bố của Zhiwen và cộng sự năm 2005

là một hệ thống nhằm mục đích để chọn các mục đa phương tiện cho một nhóm người

đi du lịch cùng nhau. Hệ thống tập hợp các hồ sơ của các hành khách và kết hợp chúng

sử dụng một khái niệm về khoảng cách giữa các hồ sơ. Một khi các hồ sơ này được sáp

nhập, một hệ tư vấn dựa trên nội dung được sử dụng để so sánh các mục đa phương tiện

và sở thích của nhóm; Flytrap trong công bố của Crossen và cộng sự năm 2002 tư vấn

Page 34: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

20

âm nhạc chơi trong một phòng công cộng. Mọi người trong một căn phòng (hay các

thành viên trong nhóm) thay đổi thường xuyên, hệ thống được thiết kế để dự đoán bài

hát để chơi xem xét sở thích của người dùng hiện tại trong phòng tại thời điểm của việc

lựa chọn bài hát, phân tích các tập tin MP3 được chơi bởi một người dùng trong máy

tính của họ và xem xét các thông tin sẵn có về âm nhạc để xây dựng một mô hình sở

thích của mỗi người dùng. Bài hát được lựa chọn thông qua một hệ thống bình chọn,

trong đó mỗi người đại diện cho một người dùng trong phòng và đánh giá các bài hát

ứng cử viên; MusicFX trong công bố của McCarthy và Anagnost năm 2000 tư vấn âm

nhạc cho các thành viên của một trung tâm thể dục, ảnh hưởng (nhưng không kiểm soát)

các nhạc đã chọn. Vì cơ cấu nhóm (hay người trong phòng) thay đổi liên tục, hệ thống

cung cấp cho người dùng làm việc trong các trung tâm thể dục tính năng đăng nhập.

Nhạc được bật được chọn bằng việc xem xét các sở thích của mỗi người dùng trong một

công thức tổng kết.

- Tư vấn cho nhóm các mục thông tin như Let'sBrowse trong công bố của Lieberman và

cộng sự năm 1999 là một hệ tư vấn các trang web cho những người cùng duyệt web với

nhau. Hệ thống này được xây dựng một hồ sơ người dùng phân tích các từ trong trang

chủ của người dùng, mô hình hóa nhóm bởi một sự kết hợp tuyến tính của các hồ sơ cá

nhân và hệ thống phân tích những từ mà xuất hiện trong các trang duyệt bởi nhóm;

GAIN (Group Adapted Interaction for News) trong công bố của Pizzutilo và cộng sự

năm 2005b và 2009 là một hệ thống mà lựa chọn các thông tin nền để hiển thị trong một

môi trường chia sẻ công cộng. Các tác giả cho rằng các nhóm người dùng có thể hoàn

toàn không biết, biết một phần hoặc hoàn toàn. Nhóm này được mô hình hóa bằng cách

chia nó thành hai nhóm nhỏ: các phân nhóm đã biết (người đó chắc chắn ở gần màn

hình hiển thị trong một khoảng thời gian) và các nhóm chưa biết (những người không

được công nhận bởi hệ thống). Các tư vấn được dự đoán sử dụng một tập dữ liệu thống

kê được xây dựng từ các mô hình nhóm.

Loại 4. Tư vấn nhóm với phát hiện các nhóm ưa thích

Phương pháp được đề xuất trong trong công bố của Cantador và cộng sự năm 2008

nhằm mục đích để tự động phát hiện ra nhóm cùng sở thích (một nhóm các cá nhân chia sẻ

và trao đổi ý kiến về một mối quan tâm nhất định) và tư vấn cho họ. CoI khai thác các sở

thích người thể hiện trong các hồ sơ cá nhân dựa trên ontology. Mỗi hồ sơ đo sự quan tâm

của người dùng đối với các khái niệm của ontology. Mối quan tâm của người dùng được

Page 35: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

21

sử dụng để phân cụm các khái niệm. Hồ sơ người dùng sau đó được chia thành các tập con

của sở thích, để liên kết các sở thích của mỗi người dùng với một cụm cụ thể của khái niệm.

Vì vậy có thể để xác định mối quan hệ giữa những người dùng ở các mức độ khác nhau, từ

đó có được một mạng lưới quan tâm nhiều lớp cho phép tìm nhiều CoI. Các tư vấn được

xây dựng sử dụng một phương pháp tiếp cận dựa trên nội dung CF [3].

2.3.2. Một số giải pháp nổi bật

Mục này trình bày các kỹ thuật tư vấn tự động có thể đưa ra tư vấn nhóm trong trường

hợp các tư vấn có thể được tạo ra là có hạn. Để hạn chế các tư vấn tạo ra, tiến hành phát

hiện nhóm sau đó kết hợp các sở thích cá nhân để tạo thành một mô hình nhóm, cho phép

dự đoán sở thích của nhóm. Theo [11] có năm thuật toán, thực hiện theo những cách khác

nhau, các phương pháp tiếp cận khác nhau để tạo ra các tư vấn cho một nhóm. Các thuật

toán bao gồm MART (kĩ thuật tư vấn tự động dựa trên mô hình), SMART (kỹ thuật tư vấn

tự động dựa trên mô hình tiên tiến), APART (Kỹ thuật tư vấn thích hợp dựa trên tổng hợp

các sở thích), BART (kỹ thuật tư vấn thích hợp đường cơ sở) và HEART (kỹ thuật tư vấn

tăng cường thích hợp).

Trước khi trình bày 5 giải pháp nổi bật cụ thể đã nêu, tôi sẽ trình bày cơ bản về lý thuyết

phân cụm và các chiến lược mô hình hóa nhóm để có được cơ sở cho các giải pháp cụ thể

được trình bày ở phần tiếp theo.

2.3.2.1. Cơ sở về phân cụm và các chiến lược mô hình hóa nhóm

Phân cụm

Phân cụm, còn được gọi là phân lớp dữ liệu, học không giám sát hoặc phân lớp không

giám sát, là các phân vùng dữ liệu không có nhãn thành các nhóm (đặt tên cho cụm), như

vậy mà các đối tượng trong một nhóm rất giống nhau và các đối tượng thuộc các cụm khác

nhau là rất khác nhau. Điều đó có nghĩa là dữ liệu được phân thành hai hoặc nhiều lớp

không biết trước cấu trúc mà dựa trên một hàm khoảng cách cho thấy tương tự của các đối

tượng. Lưu ý rằng trong phần này chỉ có các khía cạnh của phân cụm có liên quan đến

nghiên cứu tiến hành cho khoá luận này sẽ được trình bày. Đặc biệt hai lớp quan trọng của

thuật toán phân cụm được xem xét.

Page 36: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

22

Phân cụm trong một không gian metric10. Một tập hợp các dữ liệu và hàm khoảng cách

đáp ứng các đặc tính của một metric được xác định, để đo sự giống nhau giữa các đối tượng

và phân chia dữ liệu thành các nhóm đồng nhất [2].

Phân cụm đồ thị. Mục tiêu là để phân chia các điểm của đồ thị thành các cụm, xem xét các

cạnh giữa các điểm. Gọi là các phân vùng là khi mà có rất nhiều cạnh trong mỗi cụm và

một vài cạnh ở giữa các cụm [2].

Phân cụm trong một không gian metric

Một không gian metric (X, �) bao gồm một tập dữ liệu X và một hàm khoảng cách �: � ×

� → � mà đáp ứng 3 đặc tính của một metric:

1. Phản xạ: �(�, �) ≥ 0, với �(�, �) = 0 nếu � = �

2. Đối xứng: �(�, �) = �(�, �)

3. Bất đẳng thức tam giác: �(�, �) ≤ �(�, �) + �(�, �)

Một trong những thuật toán phổ biến và được sử dụng nhiều nhất phân cụm trong một

không gian metric là k-means.

Thuật toán k-means:

Đầu vào: tập dữ liệu D, số lượng các cụm k

Đầu ra: tập dữ liệu đã được phân thành k cụm

Thuật toán k-means [6]

1. Chọn ngẫu nhiên k phần tử trong tập D làm trọng tâm ban đầu cho các cụm.

2. Phân các phần từ dữ liệu trong tập D vào các cụm dựa vào độ tương đồng của nó với

trọng tâm của các cụm. Phần tử dữ liệu sẽ được phân vào cụm có độ tương đồng lớn

nhất.

3. Tính lại trọng tâm của các cụm.

4. Nhảy đến bước 2 cho đến khi quá trình hội tụ (không có sự thay đổi các cụm, hay

trọng tâm của các cụm là không thay đổi).

Điểm mấu chốt của giải thuật ở bước 2, các phần tử dữ liệu được di chuyển giữa các

cụm để làm cực đại hóa độ tương tự giữa các phần tử dữ liệu bên trong 1 cụm (hay cực tiểu

10 không gian mêtric là một tập hợp mà một khái niệm của khoảng cách (được gọi là mêtric) giữa các phần tử của tập hợp đã được định nghĩa.

Page 37: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

23

hóa khoảng cách giữa các phần tử dữ liệu trong nội tại một cụm). Độ đo tương tự trong nội

tại một cụm được tính bằng công thức:

� = ∑ ∑ ���(�, ��)�∈��

����

Trong đó:

Ci và mi lần lượt là kí hiệu cụm thứ I và trọng tâm của nó.

sim(p,mi) là độ tương tự giữa p và mi.

Trọng tâm mi của Ci được tính theo công thức sau:

�� = ��

|�|�∈�

Nói một cách khác, giải thuật k-mean hoạt động sao cho hàm điều kiện của nó là hội tụ.

thông thường hàm hội tụ được chọn là hàm tổng bình phương lỗi được định nghĩa:

� = ∑ ∑ |� − ��|��∈�� (1)

Phân cụm một đồ thị

Các thuật toán phân cụm đồ thị kiểm tra cấu trúc của một đồ thị, để tìm ra một nhóm

các điểm trong đó số lượng các liên kết bên trong nhóm này cao hơn nhiều so với các liên

kết giữa các nhóm. Một cụm trong một đồ thị được gọi là đồ thị phân nhóm và cũng được

biết đến như là phát hiện nhóm [3]. Hai thuật toán phân nhóm đồ thị được sử dụng rộng rãi

là phương pháp Louvain trong công bố của Blondel và cộng sự năm 2008 có khả năng co

cụm mạng rất lớn trong thời gian tuyến tính (các phân tích của một mạng lưới các 2.000.000

nút mất hai phút trên PC) và MCL (Markov Clustering) là một thuật toán dựa trên thủ tục

bootstrapping áp dụng cho một ma trận ngẫu nhiên (còn được gọi là ma trận Markov), có

nguồn gốc từ các ma trận kề của đồ thị. Chi tiết về hai thuật toán này đã được trình bày rõ

trong [3].

Mô hình hóa nhóm

Mục này trình bày các chiến lược mô hình hóa nhóm.

Chiến lược Additive Utilitarian

Page 38: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

24

Các đánh giá cá nhân cho từng mục đã được đúc kết và tạo nên một danh sách các đánh

giá của nhóm. Danh sách các mục được xếp hạng của nhóm được tạo ra bằng trung bình

các đánh giá cá nhân, nên trong chiến lược này cũng được gọi là “chiến lược trung bình”.

A B C D E F

U1 6 5 10 9 2 6

U2 3 8 5 7 9 5

U3 8 3 1 4 10 1

Group 17 16 16 20 21 12

Bảng 2.1. Ví dụ chiến lược trung bình

Borda Count (xếp hạng đánh giá)

Mỗi mục được một số điểm, theo các vị trí trong danh sách của mỗi người dùng. Các

mục được yêu thích nhất là 0 điểm và một điểm được thêm vào mỗi lần mục tiếp theo trong

danh sách được xem xét. Nếu người dùng đánh giá nhiều mục như nhau, các điểm được

chia đều. Vì vậy, ví dụ, các mục H và I đã được đánh giá bởi người dùng u2 với cùng đánh

giá thấp nên H và I “chia sẻ” các vị trí thấp nhất với 0 và 1 điểm, vì vậy cả hai mặt hàng

được (0 + 1) /2=0.5 điểm. Sở thích nhóm thu được bằng cách cộng các điểm cá nhân của

một mục. (như ví dụ dưới)

A B C D E F

U1 3 5 1 0 2 4

U2 4 0.5 2 0.5 5 3

U3 0 1.5 4 5 1.5 3

Group 7 7 7 5.5 8.5 10

Bảng 2.2. Ví dụ chiến lược xếp hạng đánh giá

Approval Voting (bầu cử bằng sự hài lòng)

Mỗi người dùng có thể bình chọn cho nhiều mục. Để xem chiến lược hoạt động như thế

nào, giả sử rằng mỗi người dùng bình chọn cho tất cả các mặt hàng với một đánh giá trên

một ngưỡng nhất định (có thể là 5). Ta coi các đánh giá nào có điểm >3 là 1 phiếu bầu cho

mục đó. Sở thích nhóm thu được bằng cách cộng những điểm cá nhân của từng mục.

Page 39: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

25

A B C D E F

U1 1 1 1 1 1

U2 1 1 1

U3 1 1 1 1 1

Group 3 2 2 1 2 3

Bảng 2.3. Ví dụ chiến lược bầu cử bằng sự hài lòng

Chiến lược Misery Least (tối thiểu sự không hài lòng)

Đánh giá đối với một mục của một nhóm là đánh giá thấp nhất được đưa ra cho mục đó

bởi một thành viên của nhóm. Chiến lược này thường được sử dụng để mô hình nhóm nhỏ,

để đảm bảo đáp ứng được mỗi thành viên. Một nhược điểm của chiến lược này là nếu phần

lớn nhóm thực sự thích một cái gì đó, nhưng một người không, mục sẽ không được tư vấn

cho nhóm. Đó là những gì xảy ra trong ví dụ cho các hạng mục B và C.

A B C D E F

U1 6 10 10 9 8 6

U2 9 8 10 7 9 5

U3 8 3 1 9 10 9

Group 6 3 1 7 8 5

Bảng 2.4. Ví dụ chiến lược tối thiểu sự không hài lòng

Chiến lược vừa lòng nhất

Đánh giá cho một mục của nhóm là đánh giá cáo nhất mà người dùng trong nhóm đưa

ra cho mục đó.

A B C D E F

U1 6 10 10 9 8 6

U2 9 8 10 7 9 5

U3 8 3 1 9 10 9

Group 9 10 10 9 10 9

Bảng 2.5. Ví dụ chiến lược vừa lòng nhất

Page 40: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

26

Chiến lược trung bình bỏ qua sự không hài lòng

Đánh giá cho một mục của nhóm là trung bình các đánh giá của mỗi người dùng cho mục.

Các mục có đánh giá cá nhân thấp dưới một ngưỡng cho trước bị loại khỏi danh sách tư

vấn (không tính đánh giá của nhóm cho mục đó)

Trong ví dụ dưới, ngưỡng là 3.

A B C D E F

U1 6 10 10 9 8 6

U2 9 8 10 7 2 5

U3 8 3 1 9 10 9

Group 23 - - 25 - 20

Bảng 2.6. Ví dụ chiến lược trung bình bỏ qua sự không hài lòng

2.3.2.2. Các giải pháp nổi bật

5 giải pháp nổi bật như đã giới thiệu được chia theo 3 dòng tiếp cận cho quá trình tư vấn

nhóm [3]: (a) Xây dựng một mô hình nhóm kết hợp các sở thích cá nhân, (b) kết hợp các

tư vấn xây dựng cho các người dùng cá nhân, (c) tập hợp của các sở thích cá nhân. Trong

đó, MART và SMART thuộc dòng tiếp cận dựa trên xây dựng các mô hình sở thích nhóm;

APART thuộc dòng tiếp cận kết hợp các tư vấn xây dựng cho các người dùng cá nhân và

BART và HEART thuộc dòng tiếp cận tập hợp của các sở thích cá nhân.

Các dòng tiếp cận cho quá trình tư vấn nhóm

(a) Xây dựng mô hình sở thích nhóm

Cách tiếp cận này xây dựng một mô hình nhóm sử dụng các sở thích của mỗi người

dùng, sau đó dự đoán một đánh giá cho các mục không được đánh giá bởi nhóm sử dụng

mô hình đó.

Mô tả phương pháp tiếp cận:

1. Xây dựng một mô hình �� cho nhóm g đại diện cho các sở thích của cả nhóm.

2. Với mỗi mục i chưa được nhóm đánh giá, sử dụng �� để sự đoán một đánh giá ���

(b) Kết hợp các tư vấn xây dựng cho các người dùng cá nhân

Hướng tiếp cận cung cấp một tập các mục được các thành viên trong nhóm yêu thích.

Page 41: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

27

Mô tả hướng tiếp cận:

1. Với mỗi thành viên trong nhóm u:

Với mỗi mục i chưa được đánh giá bởi người dùng, dự đoán đánh giá ���.

Chọn tập các mục �� với đánh giá ��� được dự đoán cao nhất cho ui

2. Với mỗi nhóm, tập hợp các mục với đánh giá dự đoán cao nhất của mỗi thành viên.

(c) Tập hợp các sở thích cá nhân

Hướng tiếp cận này đầu tiên dự đoán các sở thích cá nhân cho tất cả các mục chưa được

người dùng đánh giá, sau đó tổng hợp các sở thích cá nhân cho mỗi mục thành sở thích

nhóm.

Với mỗi mục i:

Với mỗi thành viên u của nhóm g chưa đánh giá i, dự đoán đánh giá ���

Tính một tổng hợp các đánh giá ��� từ tập {���}

Các thuật toán dựa trên xây dựng các mô hình nhóm

MART (kĩ thuật tư vấn tự động dựa trên mô hình)

MART là một thuật toán phát hiện nhóm người dùng tương tự, mô hình mỗi nhóm sử

dụng sở thích của các thành viên trong nhóm và dự đoán sở thích của nhóm.

Thuật toán làm việc trong bốn bước:

1. Để tạo ra các nhóm người dùng, thuật toán lấy đầu vào là các đánh giá bởi mỗi người

dùng và đánh giá thông qua một thước đo tiêu chuẩn (ví dụ độ tương đồng cosin) độ

tương tự sở thích của hai người dùng. Kết quả là một đồ thị có trọng số với các nút

đại diện cho người sử dụng và mỗi cạnh có trọng số đại diện cho các giá trị tương

đồng với người dùng mà nó kết nối, sử dụng kỹ thuật hậu xử lý để loại bỏ nhiễu từ

mạng và giảm độ phức tạp của nó.

2. Để xác định nhóm mà người dùng thuộc về, một thuật toán phát hiện nhóm đề xuất

bởi Blondel và cộng sự năm 2008 được áp dụng cho các đồ thị có chứa những điểm

tương đồng giữa các người dùng và các phân vùng của các độ chi tiết khác nhau được

tạo ra.

Page 42: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

28

3. Khi các nhóm đã được phát hiện, một mô hình nhóm được xây dựng cho mỗi nhóm

g sử dụng một chiến lược mô hình hóa được đưa ra trong phần mô hình hóa nhóm ở

trên.

4. Một đánh giá được dự đoán cho mỗi mục chưa được nhóm đánh giá sử dụng mô hình

bao gồm cả các sở thích của nhóm.

- Chi tiết các bước:

Đồ thị tương đồng của người dùng

Đồ thị mô tả các kết nối giữa các người dùng thể hiện độ tương đồng có thể được xây

dựng từ việc xem xét các sở thích cá nhân đối với một mục.

Sử dụng độ tương đồng cosin đối với hai người dùng u và v:

Trong đó, ���� là tập các mục cả u và v đều đánh giá.

Đồ thị kết quả là đồ thị có trọng số với các cạnh thể hiện các kết nối giữa người dùng

với người dùng. Các cạnh trong đồ thị này không thể hiện được các mối quan hệ thực giữa

các nút mà chỉ thể hiện độ tương đồng giữa chúng. Hơn thế nữa, do trọng số được tính dựa

trên các đánh giá, mà mỗi người có một phong cách đánh giá khác nhau (ví dụ như nếu

thích thì chỉ cho điểm tối đa hoặc không thích thì chỉ cho điểm thấp nhất,...) cộng thêm việc

các cạnh thường bị ảnh hưởng bởi nhiễu gây ra sự mơ hồ trong việc phát hiện nhóm, người

ta sử dụng một tham số nhiễu trong các thuật toán.

Phát hiện nhóm

Mục đích của việc phát hiện nhóm là để tìm ra những nhóm người dùng có cùng sở

thích, với đầu vào là đồ thị có trọng số độ tương đồng giữa những người dùng ở trên. Thuật

toán sử dụng hàm tính toán các phân vùng của tập các nút trong mạng, số lượng các nút ở

trong và các cạnh đối với trường hợp ngẫu nhiên. Sự tối ưu hóa của chức năng này đưa ra

là cấu trúc tự nhiên của nhóm mạng. Hơn nữa không cần phải nhúng các mạng vào trong

một không gian metric như trong thuật toán k-means.

Page 43: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

29

Thuật toán được đề xuất gần đây dựa trên việc tối ưu hóa các mô đun trọng số, để có

thể dễ dàng xử lý các mạng với hàng triệu nút, cũng tạo ra một đồ thị phân cấp - một cấu

trúc nhóm mạng ở độ phân giải khác nhau.

Mô hình hóa nhóm

Để tạo ra một mô hình đại diện cho sở thích của một nhóm g, các chiến lược được mô

tả trước đó phải được đưa vào tài khoản. Như có thể thấy trong các ví dụ, các đánh giá

nhóm được sản xuất theo mỗi chiến lược trong quy mô đại diện hoàn toàn khác (trong ví

dụ sở thích cá nhân được thể hiện với một đánh giá từ 1 đến 10, trong khi xếp hạng cá nhân

có thể cao hơn nhiều so với 10). Để đánh giá các đánh giá nhóm phản ánh sở thích cá nhân

như thế nào,cả đánh giá cá nhân và nhóm cần phải trong cùng một miền đánh giá.

group-rating : max-group-rating = new-group-rating : max-rating

Trong đó:

group-rating là đánh giá bởi chiến lược mô hình hóa

max-group-rating là đánh giá cao nhất một người dùng có thể đưa ra đối với 1 mục

max-rating là đánh giá có giá trị cao nhất trong các group-rating đối với 1 mục

Suy ra new-group-rating = ������������. ����������

����������������

Công thức không cần thiết với tất cả các chiến lược đã xem xét hoặc cần phải thay đổi cho

một số chiến lược. Một số trường hợp đặc biệt như:

Với 2 chiến lược tối thiểu sự không hài lòng và hài lòng nhất đưa ra các đánh giá thuộc

về cùng 1 miền với các đánh giá gốc, do vậy sự giảm thiểu là không cần thiết.

Với 2 chiến lược Additive Utilitarian và Average without Misery tính tổng các đánh

giá cá nhân. Công thức ở trên có thể được viết lại:

new-group-rating = ������������. ����������

�����������. ���������� =

������������

�����������

là trung bình cộng các đánh giá

Với 2 chiến lược Xếp hạng đánh giá và Bầu cử bằng sự hài lòng cho thấy giá trị max-

group-rating cần phải được ước lượng mỗi lần tạo ra một đánh giá.

Sau khi nhóm đã được mô hình, để tính toán các đánh giá có nghĩa cho nhóm g, một

đánh giá tổng hợp ��� là một phần của mô hình chỉ khi một phần thống nhất của nhóm đã

Page 44: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

30

đánh giá mục i. Tạo một biến coratings là phần trăm tối thiểu số thành viên nhóm phải đánh

giá một mục để bao gồm các đánh giá trong mô hình.

Dự đoán các đánh giá còn thiếu sử dụng mô hình nhóm

Trong các mô hình được tạo ra bởi các bước trước đó, cho một tập con của các mục

không có sở thích, vì các mục được đánh giá bằng một phần nhỏ của nhóm và không thể

được coi là đại diện của các sở thích của nhóm như một toàn thể. Để ước lượng các sở thích

đó, một đánh giá ��� cho một mục i (chưa được nhóm g đánh giá) được dự đoán qua mô

hình có chứa sở thích của nhóm. Điều này được thực hiện bằng cách sử dụng thuật toán

Lọc cộng tác láng giềng gần nhất dựa trên mục. Thuật toán dự đoán một đánh giá ��� cho

từng hạng mục i chưa được nhóm g đánh giá, xem xét đánh giá ��� của các mục tương tự

nhất đã được nhóm đánh giá. Công thức được sử dụng để dự đoán xếp hạng:

itemSim() là độ tương tự giữa 2 mục được đo bởi độ tương đồng cosin.

topItems là danh sách các mục tương tự nhất được chọn cho thuật toán dự đoán đánh

giá. Biến top chỉ số lượng các độ tương tự thuật toán xem xét để dự đoán các đánh giá.

Hướng tiếp cận lọc cộng tác dựa trên mục được chọn do sự phù hợp của thuật toán đối

với mô hình nhóm [3]. Nhóm có thể rất lớn, do đó, số lượng người dùng nhiều dẫn đến các

sở thích cá nhân đa dạng. Mô hình nhóm có thể đặt chung nhiều sở thích cá nhân dẫn đến

khó có thể dự đoán theo hướng tiếp cận dựa trên người dùng, nó có thể tìm kiếm các nhóm

giống nhau.

Để đưa ra dự đoán có ý nghĩa, cần đánh giá "độ tin cậy" của các dự đoán tính toán được.

Điều này được thực hiện bằng cách tính trung bình cộng của các độ tương đồng thuộc top

Tham số trust chỉ giá trị trung bình nhỏ nhất của các độ tương đồng phải tính, để được coi

là đáng tin cậy và xem xét đánh giá dự đoán.

Page 45: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

31

SMART (kỹ thuật tư vấn tự động dựa trên mô hình tiên tiến)

Kỹ thuật MART ở phần trước được cải tiến hơn trong SMART.

Thuật toán hoạt động trong 3 bước:

1. Sử dụng tập các sở thích cá nhân, nhóm người dùng được phát hiện nhờ thuật toán k-

means.

2. Sau khi tạo thành các nhóm, xây dựng mô hình nhóm cho mỗi nhóm g sử dụng các

chiến lược ở các phần trước.

3. Đánh giá được dự đoán cho mỗi mục chưa được nhóm đánh giá, sử dụng mô hình

chứa các sở thích của nhóm.

Hai bước 1 và 2 gộp nhóm bằng thuật toán k-means đã nêu ở phần trước. Mô hình hóa

nhóm giống như MART. Bước 3 dự đoán các đánh giá sử dụng mô hình nhóm cũng dựa

trên lọc cộng tác láng giềng gần nhất dựa trên mục. Công thức tính toán đánh giá dự đoán:

Thuật toán này không xem xét hết tất cả các mục được đánh giá bởi nhóm trong mô hình

mà chỉ xem xét top n mục.

Độ tương đồng được tính bởi công thức

APART (Kỹ thuật tư vấn thích hợp dựa trên tổng hợp các sở thích)

Thuật toán này phát hiện các nhóm tương tự, dự đoán các sở thích cá nhân và lựa chọn các

mục với đánh giá dự đoán cao nhất cho mỗi người dùng. Gồm 3 bước:

1. Sử dụng các sở thích cá nhân, các nhóm người dùng tương tự được phát hiện bằng

thuật toán k-means.

2. Các dự đoán cá nhân được tính cho mỗi người dùng sử dụng hướng tiếp cận lọc cộng

tác dựa trên người dùng.

3. Danh sách các mục với đánh giá được dự đoán cao nhất được chọn.

Page 46: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

32

Phát hiện các nhóm

Sử dụng k-means

Dự đoán các đánh giá còn thiếu

Sử dụng thuật toán lọc cộng tác láng giềng gần nhất dựa trên người dùng để dự đoán đánh

giá của các thành viên trong nhóm, theo công thức:

(2.1)

Trong đó,

n là người dùng tương tự với u, còn được gọi là láng giềng của u

��� là đánh giá của n cho mục i

��� là đánh giá dự đoán của u cho i

�� là giá trị trung bình các đánh giá của n

Độ tương đồng userSim() sử dụng độ tương tương tự Pearson:

�������(�, �) = ∑ (���� ��̅)(���� ��̅)�∈���,�

�∑ (���� ��̅)��∈���,� �∑ (���� ��̅)�

�∈���,�

(2.2)

Trong đó,

���,� là tập các mục được cả u và n đánh giá

��� là đánh giá của n cho mục i

��� là đánh giá của u cho i

�� là giá trị trung bình các đánh giá của n

Dự đoán nhóm

Xếp hạng theo thứ tự giảm dần các đánh giá của một người dùng đối với các mục, sau

đó chọn top n mục. Nếu một mục xuất hiện trong danh sách của nhiều người trong cùng

một nhóm, tính trung bình các đánh giá của mục đó.

BART (kỹ thuật tư vấn thích hợp đường cơ sở)

Thuật toán phát hiện các nhóm người dùng tương tự, sự đoán các sở thích cá nhân và tổng

hợp các sở thích cho mỗi mục thành sở thích nhóm. Gồm 3 bước:

1. Sử dụng tập các sở thích cá nhân, phát hiện nhóm bằng k-means

Page 47: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

33

2. Dự đoán cá nhân theo hướng tiếp cận lọc cộng tác dựa trên người dùng

3. Sở thích nhóm là tổng hợp các sở thích cá nhân.

Tổng hợp các sở thích cá nhân

Kết hợp các sở thích của những người dùng cùng nhóm cho một mục. Về cơ bản thì

giống với MART và SMART. Điểm khác là mô hình thuật toán dự đoán cá nhân. Tính tất

cả các đánh giá cho tất cả các mục, tất cả người dùng, không bỏ đi một dự đoán nhóm nào.

HEART (kỹ thuật tư vấn tăng cường thích hợp)

Thuật toán này cải tiến BART nâng cao chất lượng phân cụm. Do số lượng các đánh giá

đã có là rất thưa thớt, HEART sử dụng k-means với cả các đánh giá sẵn có và các đánh giá

dự đoán. HEART thực hiện tính toán các tư vấn cá nhân trước khi phân cụm. Thuật toán

này sử dụng nhiều sở thích hơn nên có thể tạo ra các cụm tương đồng tốt hơn.

2.4. Tiếp cận tư vấn nhóm trong khóa luận

Giả thiết Đoàn thanh niên – Hội sinh viên trường Đại học Công nghệ chuẩn bị tổ chức

giải Game cho sinh viên trong trường. Vấn đề đặt ra là tổ chức Game gì để thu hút được

nhiều sinh viên tham gia nhất? Khóa luận giả sử tập người dùng trên Epinion như tập sinh

viên trường Đại học Công nghệ - Đại học Quốc gia Hà Nội, sở thích của sinh viên được đại

diện bởi các đánh giá cho các mục, mối quan hệ giữa các sinh viên là mối quan hệ tin cậy.

Bài toán đặt ra cho khóa luận là bài toán tư vấn nhóm tự động, tận dụng mối liên kết tin cậy

giữa các người dùng trong mạng.

Từ kết quả nghiên cứu trong luận văn tiến sĩ [3] như hình 2.2, có thể thấy kĩ thuật tư

vấn tăng cường thích hợp cho kết quả tư vấn tốt nhất với sai số RMSE ≈ 0.955. Vì vậy,

trong phạm vi khóa luận này, tôi sẽ đề xuất một mô hình tư vấn nhóm tự động sử dụng kĩ

thuật tư vấn tăng cường thích hợp sử dụng chiến lược trung bình cho mô hình hóa nhóm,

tiến hành thực nghiệm với bộ dữ liệu Epinion để so sánh kết quả với các chiến lược khác

và xem xét sự phù hợp của mô hình với các kết quả thực nghiệm đã có.

Để tư vấn nhóm tự động, khóa luận thực hiện phát hiện nhóm tự động dựa trên độ

tương đồng sở thích của người dùng sử dụng kĩ thuật phân cụm k-means. Vấn đề đặt ra là

việc thưa thớt dữ liệu. Để giảm thiểu ảnh hưởng của dữ liệu thưa đến chất lượng phân cụm,

tôi thực hiện tư vấn cá nhân sử dụng lọc cộng tác dựa trên người dùng tận dụng mối quan

hệ tin cậy giữa các người dùng trong mạng như một mối quan hệ láng giềng.

Page 48: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

34

Độ đo tương đồng sử dụng hệ số tương quan Pearson do độ đo này tính toán chỉ trên

những mục mà 2 người dùng cùng đánh giá, từ đó tính toán nhanh hơn và cũng phù hợp

với trường hợp dữ liệu thưa và số lượng mục lớn.

Hình 2.2. Sai số RMSE khi sử dụng các chiến lược mô hình hóa nhóm khác nhau

trong kĩ thuật HEART với số nhóm = 20

Từ những ưu, khuyết điểm của các chiến lược đã nêu ở phần 2.3.2.1 kết hợp với kết

quả thực nghiệm của Ludovico Boratto như hình 2.2, khóa luận sử dụng chiến lược trung

bình cho mô hình hóa nhóm để tận dụng tối đa các đánh giá của các thành viên, không bị

bỏ đi bất kì giá trị nào. Đồng thời, khóa luận cũng sẽ tiến hành thực nghiệm các chiến lược

khác để so sánh kết quả.

Tóm tắt chương 2

Chương 2 đã trình bày về tư vấn nhóm, các phương pháp phát hiện nhóm tự động, các

kĩ thuật tư vấn nhóm và các chiến lược mô hình hóa nhóm. Khóa luận đã trình bày từ tổng

quan đến chi tiết về các nội dung trên, từ đó đưa ra sự lựa chọn cho mô hình đề xuất ở

chương tiếp theo.

0

0.5

1

1.5

2

2.5

3

HEART

Additive Utilitarian

Borda Count

Least Misery

Most Pleasure

Page 49: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

35

Chương 3. Một mô hình tư vấn nhóm xã hội dựa trên kĩ thuật tăng cường thích hợp

3.1. Giới thiệu sơ bộ

Ở chương trước, tôi đã giới thiệu 5 kĩ thuật tư vấn nhóm tự động nổi bật có thể sử

dụng. Trong chương này tôi sẽ giới thiệu một mô hình tư vấn nhóm tự động sử dụng kĩ

thuật tư vấn tăng cường thích hợp (HEART) gồm 3 bước: tư vấn cá nhân sử dụng CF dựa

trên người dùng, phát hiện nhóm tự động sử dụng thuật toán phân cụm k-means và tổng

hợp sở thích cá nhân để tư vấn cho nhóm. Khóa luận tập trung vào phân tích các đánh giá

của người dùng trên trang Epinion.com, thực hiện tư vấn trên các sản phẩm Game, tận dụng

mối quan hệ tin cậy giữa các người dùng trong mạng này.

Khóa luận xác định tập người dùng bao gồm 581người có đánh giá các sản phẩm

game trên Epinion, tập mục trong chủ đề Game bao gồm 1832 mục. Chi tiết các bước thực

hiện trong mô hình sẽ được mô tả rõ trong các mục dưới đây.

3.1.2. Tư vấn cá nhân sử dụng lọc cộng tác dựa trên người dùng

Do số lượng các đánh giá về các mục Game thu được là thưa thớt nên để nâng cao

chất lượng phân cụm, tránh vấn đề thưa dữ liệu, mô hình tiến hành dự đoán các đánh giá cá

nhân trước khi phân cụm sử dụng kĩ thuật lọc cộng tác dựa trên người dùng.

Mỗi người dùng ui trong mạng có một tập các người dùng tin cậy. Ta coi tập người

dùng này có mối quan hệ hàng xóm với ui. Lọc cộng tác dựa trên người dùng sử dụng các

đánh giá của hàng xóm với ui để đưa ra dự đoán đánh giá các sản phẩm mà ui chưa đánh giá

theo công thức (2.1).

Tin cậy(trust) bao gồm hai thành phần chính là sự tin (belief) và sự cam kết. Một

người tin rằng một người đáng tin cậy sẽ hành động theo một cách nhất định. Tuy nhiên,

chỉ có sự tin thôi là không đủ để có sự tin cậy. Tin cậy xảy ra khi sự tin được sử dụng như

là nền tảng cho việc thực hiện một cam kết đối với một hành động cụ thể. Hai thành phần

này cũng có mặt trong định nghĩa của Deutsch: chúng tôi cam kết đi theo con đường không

rõ ràng nếu chúng tôi tin rằng những người đáng tin cậy sẽ hành động theo cách tạo ra

kết quả tốt [1]. Sự tin cậy cho ta câu trả lời cho câu hỏi ta nên thu thập thông tin từ ai và

chia sẻ thông tin với ai [17]. Tin cậy đóng một vai trò quan trọng trong việc giúp đỡ người

dùng trực tuyến thu thập thông tin đáng tin cậy và độ tin cậy của người sử dụng thường

Page 50: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

36

tương đương với độ tin cậy của các thông tin mà họ cung cấp [18]. Từ định nghĩa về sự tin

cậy là cam kết và làm theo, kết hợp với đặc điểm của mạng Epinion, ta có thể coi mối quan

hệ tin cậy như là mối quan hệ láng giềng. Một người dùng i tin cậy một người dùng j hoàn

toàn dựa trên các đánh giá mà người dùng j đưa ra. Con người thường có xu hướng chia sẻ

sở thích với nhau, từ đó sở thích của chúng ta cũng thường dễ dàng bị ảnh hưởng bởi những

người bạn mà chúng ta tin cậy [9].

3.1.2. Phát hiện nhóm tự động

Mô hình đề xuất thực hiện phát hiện các nhóm tự động sử dụng thuật toán phân cụm k-

means với các bước cụ thể như đã nêu ở mục 2.3.2.1. Tuy nhiên, do đặc điểm dữ liệu thưa,

số lượng mục/sản phẩm lớn nên khóa luận này sử dụng độ đo tương đồng dựa trên hệ số

tương quan Pearson (công thức 2.2)

Dễ thấy, giá trị của độ tương đồng này nằm trong [-1, 1], giá trị càng lớn thì độ tương đồng

càng cao. Ta sử dụng hàm f (x) = (x+1)/2 đưa độ tương đồng PCC về [0, 1] để tính toán

[8].

3.1.3. Mô hình hóa nhóm

Dựa trên thống kê kết quả nghiên cứu từ [3], ta thấy chiến lược Additive Utilitarian đem

lại kết quả cao nhất với kĩ thuật HEART. Do đó, khóa luận sử dụng chiến lược này để mô

hình hóa nhóm. Đánh giá được dự đoán cho nhóm được tính bằng trung bình cộng đánh giá

của các thành viên trong nhóm.

Chất lượng của các đánh giá dự đoán được xem xét thông qua Sai số căn bậc hai bình

phương trung bình:

���� = �∑ ����− ����2�

�=1

Trong đó,

��� là đánh giá của dự đoán của nhóm cho mục i

��� là đánh giá thực của u cho i

n là số lượng item có trong tập dữ liệu test.

Page 51: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

37

3.2. Mô hình tư vấn đề nghị

Mô hình tư vấn thực hiện 4 pha chính:

- Trích xuất dữ liệu: tập mục với chủ đề Game, các đánh giá của người dùng tương ứng với

chủ đề trong bộ dữ liệu Epinion với 23 chủ đề và 922267 đánh giá của 22165 người dùng

trên 296277 mục.

- Dự đoán đánh giá cá nhân: lọc cộng tác dựa trên người dùng

- Phát hiện nhóm tự động: thuật toán phân cụm k-means.

- Mô hình hóa nhóm: chiến lược trung bình.

Hình 3.1. Một mô hình tư vấn nhóm tự động.

Page 52: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

38

3.2.1. Trích xuất dữ liệu

Từ tập dữ liệu Epinion công bố bởi Jiliang Tang11, khóa luận đã trích xuất ra dữ liệu cần

có. Dữ liệu bao gồm 5 thành phần: user_id, item_id, category_id, rating, helpfulness và

timestamp. Trong đó category bao gồm 23 loại, Game có category_id = 2. Từ quan sát trên,

tôi tiến hành trích xuất dữ liệu liên quan đến chủ đề này, loại các dữ liệu không liên quan.

Đồng thời, khóa luận cũng không sử dụng helpfulness – độ hữu dụng [16] của đánh giá do

chưa có thuật toán nào sử dụng thành phần trên. Thành phần timestamp sẽ được sử dụng để

chọn tập dữ liệu test. Bên cạnh đó, tập dữ liệu sự tin cậy (bao gồm những người dùng mà

được người dùng khác tin cậy) cũng được trích xuất để lấy ra những người dùng có đánh

giá các mục Game nhằm phục vụ cho pha lọc cộng tác dựa trên người dùng ở phần sau.

Tập dữ liệu được lưu dưới dạng.csv, các thành phần ngăn cách nhau bởi dấu “,” – kí tự

để phân tách các phần. Do dữ liệu được trích xuất từ tập dữ liệu lớn nên các thành phần như

user_id và item_id không liên tục, ta phải đưa về các giá trị liên tục để dễ tính toán, giảm

chiều dữ liệu. Việc này được thực hiện bằng cách sắp xếp theo thứ tự tăng dần, sau đó các

id mới là thứ tự của các id cũ.

Đầu vào: Tập dữ liệu có sẵn, category_id của Game = 2.

Đầu ra: Tập dữ liệu liên quan đến chủ đề Game.

Các bước:

1. Đọc dữ liệu có sẵn, xác định được category_id của Game = 2.

2. Tìm dữ liệu đánh giá liên quan đến Game:

Đọc từng dòng của file.

Nếu category_id trong dòng đó = 2 thì ghi ra file

Nếu không thì bỏ qua, đọc dòng tiếp theo. 3. Lọc những người dùng trong tập các người dùng tin cậy:

Lấy được tập người dùng có đánh giá Game từ tập dữ liệu đánh giá có được từ bước 2.

Duyệt lần lượt các người dùng được tin cậy, nếu có trong tập người dùng đánh giá game thì lưu lại.

11 http://www.public.asu.edu/~jtang20/

Page 53: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

39

4. Đưa dữ liệu về khoảng liên tục: sắp xếp user_id, item_id theo thứ tự tăng dần, id mới là số thứ tự của id cũ.

3.2.2. Dự đoán đánh giá cá nhân

Dữ liệu thu được thưa đáng kể. Do số lượng mục Game lớn, một số người dùng đánh

giá rất ít mục, điều này ảnh hưởng đến việc tính toán độ tương đồng trong phân cụm làm

giảm chất lượng phân cụm, từ đó giảm hiệu quả tư vấn.

Để nâng cao chất lượng phân cụm, khóa luận sử dụng lọc cộng tác dựa trên người

dùng để dự đoán các đánh giá cá nhân, giảm độ thưa thớt dữ liệu. Công thức (2.1) được sử

dụng để tính toán các đánh giá cho người dùng u, trong đó, tập hàng xóm được xác định là

tập các người dùng mà u tin cậy.

Trong số những người dùng mà u tin cậy, ta lọc lấy những người có đánh giá các sản

phẩm game để tính toán dự đoán đánh giá cho u.

Đầu vào: Tập dữ liệu đánh giá, tập dữ liệu các người dùng tin cậy

Đầu ra: Các đánh giá dự đoán cá nhân cho các mục Game mà người dùng chưa đánh giá

Các bước:

1. Đọc tập dữ liệu các người dùng tin cậy, lọc ra các người dùng có đánh giá các sản phẩm game.

2. Duyệt lần lượt các người dùng trong tập người dùng tin cậy, tính tổng độ tương đồng giữa các người dùng được tin cậy và người dùng u.

3. Duyệt lần lượt các người dùng được tin cậy, tính đánh giá dự đoán của người dùng theo công thức (2.1).

4. Thêm các đánh giá mới được dự đoán cho các mục Game mà người dùng chưa có đánh giá vào tập đánh giá.

Page 54: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

40

Hình 3.2. Một đoạn dữ liệu mẫu

3.2.3. Phát hiện nhóm tự động

Sau khi dự đoán các đánh giá cá nhân, khóa luận tiến hành phát hiện nhóm tự động,

sử dụng thuật toán phân cụm k-means. Độ đo tương đồng được sử dụng là hệ số tương quan

Pearson, số lượng cụm được chọn là 20.

Đầu vào: Tập người dùng với các đánh giá cá nhân.

Đầu ra: Các nhóm người dùng có độ tương tự sở thích cao.

Các bước:

1. Duyệt danh sách các người dùng với các đánh giá cá nhân, chọn 20 người dùng bất kì làm tâm cụm.

2. Phân các phần từ dữ liệu trong tập người dùng vào các cụm dựa vào độ tương đồng

của nó với trọng tâm của các cụm. Phần tử dữ liệu sẽ được phân vào cụm có độ

tương đồng lớn nhất.

3. Tính lại trọng tâm của các cụm theo công thức:

�� = ��

|�|�∈�

Trong đó, C và mc lần lượt là kí hiệu cụm và trọng tâm của nó; p là người dùng để phân

cụm.

Page 55: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

41

4. Nhảy đến bước 2 cho đến khi quá trình hội tụ (không có sự thay đổi các cụm, hay

trọng tâm của các cụm là không thay đổi) hoặc đến một số lần lặp nhất định. Trong

khóa luận này, tôi đặt số lần lặp là 2000 lần.

Dữ liệu sau khi phân cụm được lưu dưới dạng file JSON:

Hình 3.3. Các nhóm sau khi thực hiện phân cụm

3.2.4. Mô hình nhóm

Khóa luận sử dụng chiến lược Additive Utilitarian hay còn gọi là chiến lược trung bình

để mô hình hóa nhóm. Theo đó, dự đoán nhóm có được là trung bình các dự đoán của các

thành viên trong nhóm.

Bên cạnh đó, khóa luận cũng tiến hành thực nghiệm 3 chiến lược mô hình hóa nhóm

khác để so sánh kết quả là chiến lược xếp hạng đánh giá, chiến lược vừa lòng nhất và chiến

lược tối thiểu sự không hài lòng. Các chiến lược bầu cử bằng sự hài lòng và chiến lược

trung bình bỏ qua sự không hài lòng không được xem xét do hai chiến lược này chỉ xem

xét các mục được đánh giá cao (ví dụ >3), do đó, một số lượng lớn các đánh giá bị loại bỏ

sẽ dẫn đến sai số đánh giá kết quả không chính xác.

Dưới đây sẽ chỉ nêu chi tiết các bược thực hiện mô hình hóa nhóm theo chiến lược trung

bình, các chiến lược khác được thực hiện như mô tả trong mục 2.3.2.1.

Page 56: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

42

- Chiến lược trung bình:

Đầu vào: Các nhóm người dùng được phát hiện, bao gồm các đánh giá sẵn có và dự đoán.

Đầu ra: Dự đoán đánh giá cho nhóm tương ứng.

Các bước:

1. Duyệt danh sách người dùng trong nhóm, cộng các đánh giá cho cùng một mục lưu vào một Map<key, value> trong đó “key” là id của mục, “value” là tổng giá trị các đánh giá cá nhân cho mục đó, đồng thời lưu lại số người dùng đánh giá cho mục vào một Map<key, value> khác tương ứng.

2. Duyệt hai Map, tính đánh giá dự đoán cho nhóm bằng trung bình các đánh giá theo

công thức:

��� = ∑ ����∈�,�∈�

��

Trong đó:

��� là đánh giá dự đoán cho nhóm

u là các người dùng trong nhóm C

i là các mục Gamess

��� là đánh giá của người dùng

n là số người dùng đánh giá mục i trong nhóm C

3. Lưu lại tập các đánh giá nhóm vào 1 file JSON

Tóm tắt chương 3

Chương 3 trình bày về tư tưởng chính của phương pháp thực hiện bài toán tư vấn

nhóm tự động thực hiện trong khóa luận bao gồm chi tiết các pha cũng như từng bước thực

hiện trong mỗi pha của hệ thống.

Trong chương tiếp theo, khóa luận tiến hành thực nghiệm trên phương pháp đã xây

dựng và đánh giá kết quả đạt được.

Page 57: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

43

Chương 4. Thực nghiệm và đánh giá

4.1. Giới thiệu chung

Trong chương 3, tôi đã giới thiệu mô hình tư vấn nhóm tự động bao gồm các pha thực

hiện cũng như các bước thực hiện mỗi pha. Trong chương này, một thực nghiệm tư vấn

nhóm tự động dựa trên mô hình đề xuất ở chương 3 được tiến hành nhằm làm rõ các bước

thực hiện các pha đã trình bày.Tư vấn nhóm trong khóa luận được thực hiện trên miền các

mục Game được người dùng từ trang web Epinion.com đánh giá. Tập dữ liệu này đã được

xử lý trước nên toàn bộ giá trị ở dạng số, ta không biết chính xác tên của các mục hay người

dùng. Do đó, việc thực nghiệm này không đưa ra tư vấn hay quảng cáo cụ thể các sản phẩm

cho các nhóm người dùng mà thực hiện đưa ra các dự đoán đánh giá cho nhóm, từ đó đánh

giá mô hình đề xuất.

Mục đích của thực nghiệm là đưa ra dự đoán đánh giá của nhóm được phát hiện tự

động đối với các mục game, từ đó, có thể sử dụng các đánh giá vừa dự đoán để tư vấn cho

nhóm.

Tập dữ liệu thực nghiệm là một phần dữ liệu được trích xuất từ tập dữ liệu Epinion

được công bố bởi Jiliangtang11, bao gồm 3430 đánh giá của 581 người dùng cho 1832 mục

Game được lưu dưới dạng file.csv.

Để cụ thể hóa các bước thực hiện trong mô hình đề xuất ở chương 3, khóa luận tiến

hành xây dựng 4 module chính để xử lý:

nganq.thesis.preprocess: chứa các lớp thực hiện tiền xử lý dữ liệu bao gồm lọc dữ

liệu, tư vấn cá nhân.

nganq.thesis.clustering: chứa các lớp thực hiện thuật toán phân cụm k-means và đánh

giá các thông số cụm.

nganq.thesis.modeling: chứa lớp thực hiện mô hình hóa nhóm, đưa ra dự đoán đánh

giá nhóm và đánh giá mô hình.

nganq.thesis.entity: chứa các lớp định nghĩa các thực thể người dùng, cụm, tập dữ

liệu và dữ liệu test.

Page 58: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

44

Hình 4.1. Các module chính

4.2. Phần mềm thực nghiệm

- Cấu hình phần cứng

Thành phần Chỉ số

CPU Intel Core i5 2.4Ghz

RAM 2 GB

OS Windows 8.1

Bộ nhớ ngoài 500GB

Bảng 4.1. Cấu hình hệ thống thực hiện thực nghiệm

Page 59: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

45

- Các phần mềm sử dụng

STT Tên phần mềm Tác giả Nguồn

1 Eclipse Luna SR2 win64 https://www.eclipse.org

2 Java Machine Learning

Library 0.1.7

Open source software java-ml.sourceforge.net

3 Jackson Open Source http://jackson.codehaus.org/

4 Microsoft Excel 2013 Microsoft https://store.office.com

Bảng 1.2. Các công cụ phần mềm được sử dụng

4.3. Dữ liệu

Khóa luận thực nghiệm với dữ liệu là các đánh giá của người dùng trên trang Epinion

cho các mục Game. Tập dữ liệu ban đầu là tập Epinion11 do Jiliang Tang cung cấp bao gồm

922267 đánh giá của 22166 người dùng cho mục thuộc 23 chủ đề khác nhau như: Movie,

Music, Game,... và dữ liệu tin cậy của người dùng. Từ tập dữ liệu này, khóa luận tiến hành

trích xuất một phần dữ liệu đánh giá liên quan đến các mục Game, đồng thời lọc ra tập

người dùng tin cậy có đánh giá các mục Game.

Căn cứ vào category_id của Game có giá trị bằng 2, sau khi trích xuất dữ liệu, khóa

luận thu được tập dữ liệu bao gồm 3430 đánh giá của 581 người dùng cho 1832 mục Game.

Các đánh giá được cho điểm từ 1 đến 5, id của người dùng được đưa về đoạn [1–581], id

các mục Game được đưa về đoạn [1–1832]. Khóa luận tiến hành thực nghiệm theo hướng

tiếp cận đánh giá mô hình là “sử dụng các đánh giá trong quá khứ để dự đoán các đánh giá

trong tương lai” mà theo hướng tiếp cận đó, 10% các đánh giá có thời gian gần nhất được

tách ra làm dữ liệu test và 90% còn lại được dùng làm dữ liệu học.

Quan sát tập dữ liệu trích xuất ra được, chúng ta nhận thấy một số người dùng đánh

giá rất ít sản phẩm (1-2 sản phẩm). Điều này làm ảnh hưởng đến chất lượng phân cụm. Từ

đó cho thấy việc thực hiện đánh giá cá nhân là rất cần thiết để giảm thiểu việc thưa thớt dữ

liệu. Tập dữ liệu các người dùng tin cậy được sử dụng để dự đoán đánh giá cá nhân bằng

sử dụng lọc cộng tác dựa trên người dùng. Tập dữ liệu tin cậy gốc bao gồm 355813 mối

quan hệ tin cậy. Mỗi dòng thể hiện một quan hệ tin cậy, bao gồm các cặp người dùng có

Page 60: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

46

dạng <u1, u2> nghĩa là người dùng u1 tin cậy người dùng u2. Khóa luận tiến hành lọc các

mối quan hệ liên quan đến người dùng trong tập dữ liệu đánh giá Game.

Hình 4.2. Một đoạn dữ liệu tin cậy

4.4. Kết quả thực nghiệm

Quá trình thực nghiệm sử dụng kĩ thuật HEART như đã mô tả chi tiết trong chương

3. Sau khi lọc dữ liệu và tiến hành dự đoán cá nhân, thu được dữ liệu đánh giá bao gồm

đánh giá có sẵn và đánh giá dự đoán.

Sau khi thực hiện phân cụm với số cụm là 20, lặp 2000 lần, tiến hành mô hình hóa

nhóm, đưa ra các dự đoán đánh giá theo chiến lược trung bình. Như hình 4.4, mỗi nhóm có

một danh sách các đánh giá được dự đoán cho các mục dựa trên các đánh giá cá nhân trong

nhóm.

Page 61: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

47

Hình 4.3. Một đoạn dữ liệu đánh giá sau khi dự đoán cá nhân

Hình 4.4. Một phần đánh giá dự đoán cho nhóm

Page 62: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

48

Hình 4.5. Các giá trị sai số thu được

4.5. Đánh giá mô hình

Để đánh giá mô hình, khóa luận sử dụng các độ đo [3, 4]:

Sai số căn bậc hai bình phương trung bình:

���� = �∑ ����− ����2�

�=1

� (4.1)

Sai số trung bình tuyệt đối (MAE):

��� = ∑ ����� �����

���

� (4.2)

Sai số trung bình tuyệt đối chuẩn (NMAE):

���� = ���

����� ���� (4.3)

Trong đó,

��� là đánh giá của dự đoán của nhóm cho mục i

��� là đánh giá thực của u cho i

n là số lượng item có trong tập dữ liệu test.

0

0.5

1

1.5

2

2.5

RMSE MAE NMAE

Additive Utilitarian

Borda Count

Least Misery

Most Pleasure

Page 63: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

49

Sử dụng tập dữ liệu test bao gồm 10% đánh giá mới nhất, khóa luận tiến hành tính toán

thu được các giá trị sai số như hình 4.4. Theo đó, có thể thấy chiến lược trung bình đem lại

kết quả tốt nhất với các giá trị sai số RMSE ≈ 0.93. Chiến lược tối thiểu sự không hài lòng

cho kết quả thấp nhất với sai số RMSE ≈ 2.3, chiến lược vừa lòng nhất có RMSE ≈ 1.01

và chiến lược xếp hạng đánh giá cho RMSE ≈ 1.08.

So sánh với kết quả thực nghiệm trong luận văn tiến sĩ của Ludovico Boratto như ở hình

2.2, ta thấy kết quả thực nghiệm trong khóa luận là phù hợp.

RMSE Chiến lược

Thưc nghiệm trong khóa luận Thực nghiệm đã có

Trung bình 0.929 0.955

Xếp hạng đánh giá 1.08 1.067

Tối thiểu sự không hài lòng 2.30 2.49

Vừa lòng nhất 1.01 1.5

Bảng 4.3. So sánh kết quả thực nghiệm

Tính toán thêm các sai số MAE và NMAE, chiến lược trung bình cho kết quả tốt nhất

với MAE ≈ 0.6 và NMAE≈ 0.16. Các sai số là nhỏ, có thể chấp nhận được. Qua đó cho

thấy mô hình đề xuất cho kết quả tốt, có thể áp dụng trong thực tế.

Tóm tắt chương 4

Trong chương này, tôi đã tiến hành thực nghiệm, xem xét và đánh giá kết quả thử

nghiệm mô hình tư vấn nhóm tự động trên miền dữ liệu Epinion cho các mục Game. Qua

phân tích kết quả cho thấy mô hình đề xuất trong khóa luận có thể áp dụng được trong thực

tiễn với các sai số nhỏ ở mức chấp nhận được.

Page 64: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

50

Kết luận

Kết quả đạt được của khóa luận

Trong khóa luận này, dựa trên các nghiên cứu của Hao Ma và Ludovico Boratto, tôi

đề xuất một mô hình tư vấn nhóm tự động sử dụng kĩ thuật HEART với chiến lược mô hình

hóa nhóm trung bình, phát hiện nhóm tự động sử dụng thuật toán k-means với độ đo tương

đồng hệ số tương quan Pearson. Đồng thời, khóa luận đã xây dựng một phần mềm thi hành

mô hình đề xuất nói trên. Tiến hành thực nghiệm trên miền dữ liệu Epinion với tập mục

Game. Sai số trung bình tuyệt đối chuẩn của thực nghiệm mô hình trong khóa luận cho kết

quả xấp xỉ 0.16. Giá trị sai số này chứng tỏ mô hình thực nghiệm đạt kết quả chấp nhận

được. Từ đó, có thể thấy được tiềm năng áp dụng mô hình đề xuất vào thực tế.

Do hạn chế về thời gian, nên khóa luận chưa tiến hành thực nghiệm được kĩ thuật

phân cụm với số cụm khác nhau để so sánh kết quả. Bên cạnh đó, bộ dữ liệu không có tên

cụ thể của sản phẩm dẫn đến chưa đưa ra được các tư vấn cụ thể cho nhóm, thông số độ

hữu dụng của đánh giá cũng chưa được xem xét đến.

Định hướng tương lai

Hệ thống tư vấn nhóm tự động sử dụng mô hình đã đề xuất cần được cải tiến để cho

kết quả tốt hơn. Trước mắt, có thể tiến hành thử nghiệm phân cụm với số lượng cụm khác

nhau để so sánh và đánh giá. Bên cạnh đó, cần phải xử lý vấn đề thưa thớt dữ liệu tốt hơn

để cải thiện kết quả phân cụm. Lâu dài, có thể tiến hành thử nghiệm việc phân nhóm các

mục Game - coi vector đặc trưng là các đánh giá của người dùng dựa trên giả thiết sở thích

của người dùng tùy thuộc vào loại Game - để giảm chiều dữ liệu. Ngoài ra, việc mở rộng

miền dữ liệu sang dữ liệu khai thác từ các phương tiện xã hội phổ biến như Facebook cũng

là một hướng cần quan tâm.

Page 65: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

51

Tài liệu tham khảo

Tài liệu tiếng Việt

[1] Nguyễn Đức Vinh (2011), Nghiên cứu độ đo tin cậy và áp dụng vào hệ thống tư vấn, Luận văn thạc sĩ, Đại học Công nghệ - Đại học Quốc gia Hà Nội.

Tài liệu tiếng Anh

[2] Charu C. Aggarwal and Chandan K. Reddy (2014), Data Clustering: Algorithms and

Applications, CRC Press.

[3] Ludovico Boratto (2011), Group Recommendation With Automatic Detection and

Classification of Groups, PhD Thesis, Universita degli Studi di Cagliari.

[4] J. L. Herlocker, J. A. Konstan, L. G. Terveen, and J. T. Riedl (2004), Evaluating

collaborative filtering recommender systems, ACM Transactions on Information

Systems.

[5] Anthony Jameson, Barry Smyth (2007), Recommendation to Groups, Lecture Notes

in Computer Science Volume 4321, 2007, pp 596-627

[6] Tapas Kanungo, Christine D. Piatko, Ruth Silverman, and Angela Y. Wu, David M.

Mount, Nathan S. Netanyahu (2002), An Efficientk-Means Clustering Algorithm:

Analysis and Implementation, IEEE

[7] Michal Kompan, Maria Bielikova, Group recommendations: survey and perspectives,

Slovak University of Technology in Bratislava.

[8] Hao Ma (2014), On Measuring Social Friend Interest Similarities in Recommender

Systems, SIGIR 2014: 465-474.

[9] Hao Ma, Irwin King, and Michael R. Lyu (2011), Learning to Recommend with

Explicit and Implicit Social Relations, The Chinese University of Hong Kong.

[10] Mark O’Connor, Dan Cosley, Joseph A. Konstan, and John Riedl (2001), Polylens: a

recommender system for groups of users, In ECSCW’01: Proceedings of the seventh

conference on European Conference on Computer Supported Cooperative Work,

pages 199–218, Norwell, MA, USA. Kluwer Academic Publishers.

Page 66: TƯ VẤN NHÓM XÃ HỘI DỰA TRÊN KỸ THUẬT TĂNG CƯỜNG THÍCH HỢPuet.vnu.edu.vn/~thuyhq/Student_Thesis/K56_Nguyen_Quynh_Nga_Thesis.pdfphòng 519B Kí túc xá Ngoại

52

[11] Francesco Ricci, Lior Rokach and Bracha Shapira (2010), Recommender Systems

Handbook, Springer.

[12] Matthew A. Russell (2013), Mining the Social Web (2nd Edition), O'Reilly Media.

[13] Xiaoyuan Su and Taghi M. Khoshgoftaar (2009), A Survey of Collaborative Filtering

Techniques, Department of Computer Science and Engineering, Florida Atlantic

University, 777 Glades Road, Boca Raton, FL 33431, USA

[14] Jaewon Yang, Julian McAuley, Jure Leskovec (2013), Community Detection in

Networks with Node Attributes. ICDM 2013: 1151-1156.

[15] Jiliang Tang, Yi Chang, Huan Liu (2013), Mining social media with social theories:

a survey, SIGKDD Explorations 15 (2): 20-29, 2013.

[16] Jiliang Tang, Huiji Gao, Xia Hu and Huan Liu (2013), Context-Aware Review

Helpfulness Rating Prediction, the ACM Conference Series on Recommender

Systems (RecSys).

[17] Jiliang Tang, Huiji Gao, Atish Das Sarma, Yingzhou Bi, Huan Liu (2015), Trust

Evolution: Modeling and Its Applications, IEEE Trans, Knowl, Data Eng,

27(6): 1724-1738.

[18] Jiliang Tang and Huan Liu (2014), Trust in Social Computing, Data Mining and

Machine Learning Lab, Arizona State University

[19] Jiliang Tang, Xia Hu, Huan Liu (2013), Social Recommendation: A Review, Social

Netw. Analys. Mining 3: 1113-1133.

[20] Jiliang Tang, Jie Tang and Huan Liu (2014), Recommendation in Social Media:

Recent Advance and New Frontiers, A KDD’2014 Tutorial, August 24, 2014.

[21] Lei Tang and Huan Liu (2010), Community Detection and Mining in Social Media,

Morgan & Claypool.