Thử thách đặt ra là làm sao có thể đềxuất được những bạn bè thích hợp dựa trên nhận thức của người dùng trong mộtlượng lớn thông tin hỗn độn của mạng xã hội.. Luận văn này nham dé xuất m
Trang 2Cán bộ hướng dẫn khoa học : PGS TS Cao Hoàng Trụ
Cán bộ chấm nhận Xét Ï : G E2 E36 EESESEEESESEEEEEESEESErEEeerksereedCán bộ chấm nhận Xét 2 : -G SG tt S3 ESES8EES858 E158 E158 E1 EEErerred
Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQGTp HCM ngày tháng năm
Thanh phan Hội đồng đánh giá luận văn thạc sĩ gồm:
(Ghi rõ họ, tên, học ham, học vi của Hội đông cham bảo vệ luận văn thạc sĩ)
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý
chuyên ngành sau khi luận văn đã được sửa chữa (nêu có).
CHỦ TỊCH HỘI ĐÔNG TRƯỞNG KHOA
Trang 3NHIEM VỤ LUẬN VĂN THẠC SĨ
Ngày tháng, năm sinh: 21/11/1987 Nơi sinh: TP.HCM
-Chuyên ngành: Khoa Học Máy Tính - Maso: 604801 _
I TEN DE TÀI:
Tp HCM, ngay thang nam 2013
CAN BO HUONG DAN CHU NHIEM BO MON DAO TAO
(Họ tên va chữ ky) (Họ tên và chữ ký)
TRƯỞNG KHOA
(Họ tên và chữ ký)
Trang 4Tôi xin gửi lời cảm ơn chân thành đến gia đình, đến những người luônsát cánh, động viên, và tạo mọi điều kiện tốt nhất cho việc học tập, nghiên
cứu của tôi.
Xin chân thành cảm ơn thay, PGS TS Cao Hoang Tru, da tan tinhhướng dan cho tôi hoàn thành tốt luận văn này
Xin chân thành biết ơn sự tận tình dạy dỗ và sự giúp đỡ của tất cả quýthầy cô tại trường Đại học Bách khoa, đặc biệt là các thầy cô trong khoa
Khoa học và Kỹ thuật Máy tính.
Trang 5Sự xuất hiện của mạng xã hội trực tuyến đã thu hút đông đảo thành viên thamgia Với số lượng người dùng ngày càng tăng kéo theo khối lượng thông tin trên cácmạng xã hội trực tuyến cũng không ngừng được gia tăng Việc khai thác các thôngtin này để cải thiện chất lượng các dịch vụ mạng xã hội là van đề đang được nhiềunhà phát triển quan tâm Hệ thống giới thiệu bạn bè là một ứng dụng quan trọng, nógiúp người dùng có những trải nghiệm tốt hơn Thử thách đặt ra là làm sao có thể đềxuất được những bạn bè thích hợp dựa trên nhận thức của người dùng trong mộtlượng lớn thông tin hỗn độn của mạng xã hội Những công trình nghiên cứu trướcđây hoặc dừng ở việc chỉ khai thác cầu trúc của mạng xã hội, hoặc chỉ khai thácthông tin cá nhân do người dùng khai báo Luận văn này nham dé xuất một phươngpháp xây dựng hệ thống giới thiệu bạn bè băng cách kết hợp việc khám phá nhậnthức của người dùng khi thiết lập các kết nối bạn bè dựa trên các thông tin cá nhânvới việc khai thác cấu trúc phân nhóm trong mạng xã hội Kết quả thực nghiệm
được đánh giá dựa trên tập dữ liệu được thu thập từ người dùng Facebook và so
sánh với các phương pháp tiên tiến khác đã cho thay phương pháp đề xuất dat đượckết quả tốt hơn rõ rệt
SUMMARY
The emergence of social networking sites and their services have attracted theattention of numerous members Users around the world are now more deeplyinvolved with the social networks as user-posted content undergoes perpetualgrowth and expansion The exploitation of this data for improving quality of socialnetwork is a big problem of many developers Friends recommendation systemsconstitute a large role in providing quality customized user experiences The main
Trang 6heterogeneity in social networks Recent works have just focused on purelystructures of online social network and purely personal information of users Thisthesis proposes the method of developing friend recommendation system bycombining friends-of-friends filtering, genetic algorithms and detecting communitystructure of social networks We used Facebook users dataset to test our algorithm.Our experimental estimates have shown a better result in comparison with the state-of-the-art methods.
Trang 7Tôi xin cam đoan rằng, ngoại trừ các kết quả tham khảo từ các công
trình khác như đã ghi rõ trong luận văn, các nội dung trình bay trong luận
văn này là do chính tôi thực hiện và chưa có phần nội dung nào của luậnvăn này được nộp dé lay một bằng cấp ở trường này hoặc trường khác
TP.HCM, Ngày 21 tháng 06 năm 2013
Nguyễn Lê Thành Trung
Trang 81 MO ĐẦU 5< s< 9E RE 098 9091n91nnsdtr 121.1 Xác định vẫn đề -cc rtcthhthtrh H11 rrrerrie 12
1.2 — Mục tIiÊU TQ S111 ng 0 re 13l.3 Phạm VI Q00 0 111 11100 1111 11000 11111000 5 1v vớ 13
CAC CÔNG TRINH LIEN QUANN 5<5<cs<xeseeeserkserkesereserked 152.1 Dựa trên cấu trúc mang (network-based) của mạng xã hội 162.2 Dựa trên các yếu tố xã hội (social-based) của mạng xã hội 172.3 Kết hợp giữa hướng dựa vào cau trúc mang va dựa vào yếu tô xã hội 18CƠ SỞ LY THUYET uu sssssssssscssscssscsscsssesssesssesssesssesssssssesssesssssssssssssssssssseess 20
a AY i ôc 00) - dd 20
3.2 Các yếu t6 ảnh hưởng việc hình thành liên kết bạn bè - 203.3 Giải thuật di truyỂn - + %5 E211 3 1 1515 1212111551111 11 111511111 cxe 2334 Các giải thuật gom nhóm trong đồ thị - 5-5 + c2 2£s+s+£+£z£zezsreee 23HIỆN THỰC PHƯƠNG PHAP 5-5-< << << se se eseseseseseseseee 26A.l Phương pháp dé Xuất - 5< S23 3 E5 1 E21 151111121 1117111 1111111 xe 264.2 Khám phá cấu trúc nhóm - ¿2 2E + EE+E+E£E+E£EEEE£E£E#EEEEEEExcErErvrree, 284.3 Khám phá nhận thức kết bạn của người dùng 2-525s+cc<e: 31DANH GIÁ PHƯƠNG PHAP cssssssssssssssssssssssssssssssssescsssessssssssssesssessesssesssse 35
5.1 Tập dữ liệu thử nghiỆm (<1 19999001 ng kg 355.2 Phương pháp đánh 914 - cv 36
5.3 CAC Ket nh Ố.ốẼ 38
SA Nhận XEt oe eee eeeseeeeeccessssneeeeeceessssaeeeecesssssaeeeescessssaaeeeseeesssaaeeeeseeeeeaas 42
Trang 96.2 Hướng phat triỂn - ¿2 5222921 E91 1211111211111 11111 tk 43TÀI LIEU THAM KH ÁOO -5 5-5 5° 5 2 2 << << 9393 3xeseseseEeEeEs 242 45
PHU ILỤC 2° EEE# E29 SE EEEdeEEAdeEEeEEE2ee2E24222eee 48
Trang 10DANH MỤC HÌNH
Hình 4-1 Mô hình giới thiệu bạn bè trên mạng xã hỘi - «5555555: 27Hình 4-2 Giải thuật phân cum Markov MCL - «55555 ss+ssssseees 29
Hình 4-3 Ví dụ về đồ thị và ma trận thống kê ngẫu nhiên tương ứng 30
Hình 4-4 Vi dụ bộ gen đặc trưng (social Genes) ch, 32
Hình 4-5 Giải thuật di truyễhn ¿5-5252 252212322 E232 12121112111 1211 xe 33
Hình 5-1 Minh họa cho recall va pF€C1ISIOTI (<< 5 5 11111999 1 1 kg 38
Hình 5-2 Đồ thị kết qua cho từng tài khoản trong thử nghiệm l 41
Trang 11DANH MỤC BẢNG
Bảng 5-1 Chi tiết đồ thị của dữ liệu thử nghiệm 25-255 + 2 2£s+s+£zcze: 35Bảng 5-2 Kết quả trong thử nghiệm l - + 255 252 +E+E+£+E+EeEerxerererecree 39Bảng 5-3 Kết quả trong trường hợp không phân nhóm trong thử nghiệm 2 39Bảng 5-4 Kết quả trong trường hợp có phân nhóm trong thử nghiệm 2 40
Trang 121 MO DAU
1.1Xác định van dé
Từ những năm dau của thé ky 21 đến nay, sự xuất hiện và phát triển mạnh mẽcủa các dịch vụ mạng xã hội trực tuyến (gọi tắt là mạng xã hội) đã giúp người dùngtham gia sâu sắc hơn vào Internet, đồng thời đã tác động không nhỏ lên quá trìnhlan truyền thông tin trên Internet Từ thông tin ban đầu về một sự kiện nào đó, thông
qua hành vi chia sẻ thông tin với bạn bè trên mạng xã hội, thông tin sẽ được lantruyện tới nhiều người một cách nhanh chóng và rộng rãi.
Sẽ không còn gọi là mạng xã hội nếu không nhắc đến yếu tố bạn bè Mạng xãhội là cầu nối tạo điều kiện cho mọi người gap gd, kết bạn với nhau Giup ngườidùng tìm được những người bạn thích hợp, giúp kết nối những người có cùng nhucầu, cùng sở thích lại với nhau là một nhu cầu tất yếu của các mạng xã hội trựctuyến
St Eve et al (2012) [1] , cho biét theo thong kê của Facebook’ , một mang xãhội trực tuyến, có | triệu người dùng vào năm 2004 và năm 2006 là 12 triệu ngườidùng và số lượng thành viên tham gia mạng xã hội nay là hon 1 tỷ người vào năm2012 Trung bình một thành viên trên Facebook có khoảng 130 kết nối bạn bè, vàtham gia vào khoảng 80 kết nối với các nhóm, các sự kiện cộng đồng Twitter” , mộtmạng xã hội giống Facebook, năm 2011 có khoảng 200 triệu thành viên GooglePlus” , cũng là một mạng xã hội trực tuyến, năm 2012 có hơn 90 triệu thành viên
với hơn 16 tỷ nội dung do người dùng đăng lên.
Với số lượng người dùng tham gia vào mạng xã hội ngày càng tăng, đi kèmtheo đó là khối lượng thông tin chia sẻ trên các mạng xã hội nay cũng không ngừngphát triển Hệ thống giới thiệu nói chung và hệ thống giới thiệu bạn bè cho mạng xã
' http://www.facebook.com* http://www.twitter.com* http://plus.google.com
Trang 13hội nói riêng ngày càng trở nên quan trọng trong cuộc sống của chúng ta Nó giúpchọn lựa ra những thông tin thích hợp để giới thiệu cho từng đối tượng (đối với cácmạng xã hội là việc tìm ra được những bạn bè phù hợp với nhu cầu của mỗi ngườidùng khác nhau), giúp tiết kiệm nhiều thời gian hơn trong việc tìm kiếm thông tin,giúp người dùng trải nghiệm tốt hơn trên Internet.
1.2 Mục tiêu
Vấn đề cơ bản đối với hệ thống giới thiệu nói chung và hệ thống giới thiệu bạnbè nói riêng là làm sao thiết kế được phương pháp cho ra kết quả có độ chính xáccao, giúp giới thiệu được những thông tin phù hợp nhất đối với nhu cầu của ngườidùng Trong để tài này, mục tiêu chính của chúng tôi là xây dựng được hệ thống
giới thiệu bạn bè trong mạng xã hội có độ chính xác cao, giúp người dùng tham gia
vào các mạng xã hội này có thể tìm được những bạn bè (kết nối bạn bè) phù hợp với
nhu câu và sở thích kêt bạn của họ.
Để giải quyết van dé trên, hướng giải quyết của chúng tôi là tìm cách khámphá nhận thức của mỗi người dùng cụ thé (những đặc điểm, yếu tô của bạn bè màngười dùng đó quan tâm) khi thiết lập các kết nối đối với từng nhóm bạn bè khácnhau Dựa trên đặc điểm của mỗi nhóm khám phá được, chúng tôi tìm những bạn bèmới (chưa là bạn của người dùng) phù hợp với đặc điểm trên để thực hiện giới thiệu
cho người dùng.
1.3 Pham vi
Trong đề tài này, để đánh giá hiệu quả của phương pháp đề xuất, chúng tôi sử
dụng dữ liệu của người dùng tham gia vào mạng xã hội Facebook được thu thập
thông qua một ứng dụng Facebook được viết dựa trên Facebook Graph API* Mục
đích của việc thử nghiệm là chúng tôi muôn chỉ ra răng việc khai thác nhận thức của
* http://developers.facebook.com : Facebook Application Programming Interface — là một công cụ cung cấp
bởi Facebook được sử dụng đê tích hợp Facebook vào các ứng dụng.
Trang 14người dùng đôi với từng nhóm bạn cụ thê cho ra hiệu quả cao hơn nêu chỉ khai thácnhận thức của người dùng dựa trên toàn bộ bạn bè của anh ta (cô ta).
Trang 152 CÁC CÔNG TRÌNH LIÊN QUAN
Cac dịch vụ mạng xã hội (gọi tat là mạng xã hội)” là những dịch vụ trực tuyên
trên internet, nó tạo điêu kiện thuận lợi cho các thành viên tham gia có thê thiệt lậpcác môi quan hệ xã hội với nhau ví dụ như cùng chia sẻ sở thích, chia sẻ các hoạt
động thường ngày kết nối bạn bè trong đời that.Hầu hết các dịch vụ mạng xã hội đều dựa trên nền tảng web, nó cho phép cácthành viên tham gia xây dựng một hỗ sơ cá nhân của họ (profile) và kết nối hoặcliên kết với những thành viên khác Nhờ vào đặc điểm của Internet, các dịch vụmạng xã hội cho phép người dùng có thé thực hiện giao tiếp với hầu hết mọi ngườiở bat cứ nơi đâu và bat cứ lúc nao Ta cũng có thể xem các dịch vụ cộng đồng trựctuyến (ví dụ như các diễn đàn) như là các dịch vụ mạng xã hội Tuy nhiên nếu hiểutheo khía cạnh rộng hơn, dịch vụ mạng xã hội trực tuyến nghĩa là lay mỗi cá nhânngười dùng làm trung tâm trong khi dịch vụ cộng đồng trực tuyến chỉ tập trung vào
nhóm những người dùng Các trang dịch vụ mạng xã hội còn cho phép người dùng
chia sẻ ý kiến cá nhân, các sự kiện, hoạt dong, và sở thích trong mạng lưới kết nối
xã hội của người dùng đó.
Khi số lượng người tham gia vào các mạng xã hội gia tăng, vai trò của hệthống dé xuất nói chung và hệ thống giới thiệu bạn bè nói riêng của mạng xã hội trởnên quan trọng, giúp người dùng tìm thấy những bạn bè phù hợp hoặc tìm thấynhững thông tin mình quan tâm, qua đó nâng cao chất lượng trải nghiệm của người
dùng.Trong các nghiên cứu về hệ thông giới thiệu bạn bè trên mạng xã hội, chúngtôi phân ra các hướng chính như sau:
a) Dua trên cau trúc mang (network-based) của mạng xã hội.b) Dựa trên các yêu tô xã hội (social-based) của mạng xã hội.
° http://en wikipedia.org/wiki/Social_networking_service
Trang 16c) Két hợp giữa hướng dựa vào câu trúc mang va dựa vào yêu tô xã hội.2.1Dựa trên cấu trúc mạng (network-based) của mạng xã
hội
Đa số trong các mạng xã hội trực tuyến hiện nay như Facebook, Twitter,MySpace hướng tiếp cận sử dung cho hệ thống giới thiệu bạn bè của các mang xãhội này là dựa trên mạng kết nối (network-based) Và phương pháp được sử dụngnhiều nhất và cũng dễ dàng hiện thực là phương pháp friends-of-friends, được xuấtphát từ ý tưởng là xác suất để chúng ta quen một người thông qua những bạn bè đãcó thì cao hơn với một người bất ky [2] Theo nhận xét cua J Naruchitparames et al.(2011) [3] thi nhìn chung phương pháp nay cho hiệu quả tốt Tuy nhiên nó chưa théhiện được khía cạnh nhận thức của từng người trong quá trình thiết lập các kết nốibạn bè Cụ thé, nó chưa khai thác được yếu tổ là với người dùng đó, thì anh ta (cô
ta) quan tâm đền những yêu tô nào và cân gi ở những người bạn của anh ta (cô ta).
Về cau trúc của mạng xã hội, trong dữ liệu thật, mạng xã hội có thé được môhình bằng đồ thị, với các đỉnh của dé thị tương ứng các phan tử (người dùng) trongmạng xã hội, các các cạnh thé hiện kết nối ban bè giữa các phân tử đó [4] [5] Mộttrong những tính chất của đồ thị mạng xã hội là có các cầu trúc sub-units (được biếtđến như là các cụm, các cộng đồng ) Các phan tử trong các cộng đồng này có độliên kết cao và có thể được nhận dạng bằng các phương pháp phân nhóm dựa trênđồ thị [4]
M Girvan và MEJ Newman (2002) [6] đã sử dụng giải thuật phân nhóm đồ thị
đề nhận diện các cộng đông trong mạng xã hội.
Lipczak và Milios (2009) [7] lại sử dụng giải thuật Agglomerative Genetic đểgom nhóm, dùng để nhận biết các quan hệ bạn bè đã có trong các mạng xã hội theođộ tương đồng của mỗi thành viên Độ tương đồng này được tính toán dựa trên cácthuộc tính của mạng xã hội (trong bai toán đưa ra, Lipczak và Milios (2009) chỉ décập đến thuộc tính là mức độ có chung bạn bè giữa các thành viên)
Trang 17Tương tự, Y Zhang et al (2012) [8] cũng đã sử dụng giải thuật gom nhóm
k-means để khám phá cau trúc cộng đồng trong mang xã hội Twitter Trong phươngpháp này, độ tương đồng giữa các thành viên ngoài cách tính dựa trên cấu trúc
mạng xã hội (ví dụ như các tag, follow, retweet cua Twitter) tác gia còn khai thác
thêm yếu tố tương đồng về nội dung (nội dung text các trạng thái người dùng chia
sẻ, các URL chia sẻ của người dùng).
Nhìn chung, các phương pháp gom nhóm trên hoạt động khá tốt trong việckhám phá cau trúc cộng đồng của các mạng xã hội Nhưng mục tiêu chính của cácphương pháp này cũng chỉ dừng ở việc khám phá các cau trúc cộng đồng này màkhông dé cập tới bài toán giới thiệu bạn bè Hơn nữa nó cũng không nói lên đượcyếu tô nhận thức khi kết bạn của người dùng
Còn đối với bài toán giới thiệu bạn bè, Silva et al (2010) [9] thì xem đây nhưlà một bài toán chọn lọc, tác giả đã sử dụng giải thuật di truyền để tối ưu hóa các chỉsố của cau trúc mạng xã hội Tuy nhiên nó cũng chỉ tập trung vào yếu tố cấu trúckết nối giữa các thành viên trong mạng xã hội
2.2 Dựa trên các yêu fô xã hội (Social-based) của mang xã hội
Sử dụng các hoạt động của người dùng trên mạng xã hội, Z Wu et al (2009)[10] đã dựa trên dữ liệu khi người dùng thích một bức ảnh (ví dụ chức năng “like”
ảnh của Facebook) và sự xuất hiện của người dùng trên các hình (ví dụ chức năng“tag” ảnh của Facebook) dé xây dựng mô hình sở thích của người dùng, và dùng môhình sở thích này để xây dựng hệ thống giới thiệu bạn bè
Y Zheng et al (2011) [11] thì khai thác thông tin về vị trí của người dùng(location) để khám phá sở thích của họ từ đó xây dựng hệ thống đề xuất bạn bè và
địa điêm.Các nghiên cứu của Z Wu et al (2009) và Y Zheng et al (2011) nêu trên chỉkhai thác sở thích của người dùng trên một yêu tô riêng lẻ, chưa đủ đê nói lên nhận
Trang 18thức, các đặc điểm mà người dùng quan tâm khi họ quyết định thiết lập liên kết bạn
bè với một cá thê nào đó.
Mặt khác không phải lúc nào cũng có thé khai thác được thông tin của ngườidùng Trong nhiều mạng xã hội (điển như như Facebook, Google Plus), người dùngcó thé chọn chia sẻ thông tin của minh dưới dạng riêng tư (private) Hay đối vớimột số tài khoản, người dùng có thể không khai báo thông tin cá nhân của họ, hoặccô tình khai báo sai đi các giá tri này; thì việc chỉ dựa trên các yếu tố xã hội để xâydựng hệ thống giới thiệu bạn bè có thể đưa đến kết quả không chính xác, tệ hơn làsẽ không thé đưa ra kết quả trong trường hợp người dùng che dau hoàn toàn thông
tin của mình.
Hơn thế nữa trong thực nghiệm của J Naruchitparames et al (2011) đã đưa rakết quả là trên thực tế mặc dù có nhiều thành viên tương đồng với người dùng vềcác đặc tính xã hội nhưng họ vẫn không phải là bạn bè với người dùng đó [3]
2.3 Kết hợp giữa hướng dựa vào cau trúc mạng và dựa vàoyếu tô xã hội
J Naruchitparames et al (2011) [3] đã để xuất phương pháp giới thiệu bạn bètrong mạng xã hội sử dụng kết hợp giữa hai hướng tiếp cận là dựa trên mạng kết nốivà dựa trên các đặc tính xã hội Tác giả đã sử dụng giải thuật di truyền để khai thácyếu tố nhận thức của người dùng thông qua một bộ gen đặc trưng (social genes)gdm mười yếu tố có ảnh hưởng đến khả năng kết bạn của người dùng Kết quả chothay việc kết hợp hướng tiếp cận dựa trên mạng kết nối và dựa trên các đặc tính xã
hội thì cao hơn nêu chỉ sử dụng riêng lẻ.
Tuy nhiên như đã đề cập ở trên, một tính chất quan trọng của mạng xã hội lànó có cau trúc cộng đồng, những người có sở thích hoặc nhu cau giống nhau có xuhướng kết bạn với nhau [12] [13] [14] Cau trúc cộng đồng này không chỉ đặc trưng
cho toàn bộ mạng xã hội, mà nó còn có trong danh sách bạn bè của từng người Cụ
thể như một người có thể có nhiều nhóm bạn trong danh sách bạn bè của anh ta (cô
Trang 19ta) như nhóm bạn hoc, nhóm bạn là người than trong gia đình, nhóm ban cùng sở
thích về vấn đề gì đó với mỗi nhóm như vậy sẽ có đặc điểm riêng mà người dùngquan tâm khi kết bạn (gọi là nhận thức của người dùng đối với mỗi nhóm) Đặc biệtđối với những người dùng có quan hệ đa dạng, tham gia nhiều cộng đồng khác nhautrong mạng xã hội (có nhiều nhóm bạn trong danh sách bạn bè) thì việc chỉ khaithác yếu tố nhận thức cho toàn bộ danh sách bạn bè sẽ làm giảm độ chính xác củahệ thống giới thiệu bạn bè
Trong các hướng nghiên cứu kế trên về hệ thống giới thiệu bạn bè, hướngnghiên cứu của chúng tôi gần với hướng nghiên cứu của J Naruchitparames et al.(2011) Điểm khác biệt chính là phương pháp của J Naruchitparames et al (2011)chỉ sử dụng một bộ gen duy nhất dé đặc trưng cho nhận thức của người dùng đốivới tat cả bạn bé của anh ta (cô ta) Trong khi, hướng nghiên cứu của chúng tôi làkết hợp việc khám phá các cộng đồng có trong danh sách bạn bè của người dùng, và
với từng cộng động nhận điện được (từng nhóm bạn) chúng tôi xây dựng một bộ
gen riêng biệt thé hiện nhận thức của người dùng đối với từng nhóm ban
Trang 203 CƠ SỞ LÝ THUYÉT
3.1 Mạng xã hội
Các dịch vụ mạng xã hội (gọi tắt là mạng xã hội) là những dịch vụ trực tuyếntrên internet, nó tạo điều kiện thuận lợi cho các thành viên tham Ø1a CÓ thê thiết lậpcác mối quan hệ xã hội với nhau ví dụ như cùng chia sẻ sở thích, chia sẻ các hoạtđộng thường ngày kết nối bạn bè trong đời that
Mạng xã hội có thé được xem như một đồ thị với các đỉnh của đồ thị tươngứng các phan tử (người dùng) trong mang xã hội, các cạnh thé hiện kết nối bạn bègiữa các phần tử đó |4] [15] Không giống như các đồ thị ngẫu nhiên (randomgraph), trong đồ thị mạng xã hội sự phân bố các cạnh là không đồng đều không chỉở mức độ toàn cục, mà ở mức cục bộ sự phân bố này cũng không đồng nhất Cáccạnh có xu hướng tập trung dảy hơn trong nhóm của một số đỉnh đặc biệt, và thưahơn giữa các nhóm với nhau Đặc tính này được gọi là cấu trúc cộng đồng
(community structure), hoặc là phân nhóm (clustering) [6].
Trong đời thật, ta có thể thay tồn tại rất nhiều dạng tô chức nhóm xã hội nhưlà: gia đình, đồng nghiệp, các nhóm bạn bè, bản làng, thành phố, quốc gia Internet ngày càng phát triển phố biến hơn, cũng dẫn đến hình thành các nhóm ảo(virtual groups) Mà một phần quan hệ trong những nhóm nảy cũng xuất phát từ
quan hệ nhóm ngoài đời that [4].
Phân nhóm là một đặc tính quan trọng trong lý thuyết mạng xã hội Khai thácđược yếu tô phân nhóm trong mạng xã hội trực tuyến giúp ta phát triển được nhiều
ứng dụng hữu ich, vi dụ phan nhóm các khách hàng cùng sở thích và có vi trí dia lý
gan nhau dé tăng cường chất lượng các dich vu world wide web Trong thương mạiđiện tử, néu xác định được các nhóm khách hàng có cùng sở thích ta sẽ có thé đưara các sản phẩm dé nghị phù hop
3.2 Các yếu tô ảnh hưởng việc hình thành liên kết bạn bè
Trang 21Trong quan hệ xã hội, không chi ngoài đời that mà còn đối với cả mạng xã hộitrực tuyến, những người có sở thích hoặc nhu câu giống nhau sẽ có xu hướng kếtbạn với nhau Trong mạng xã hội trực tuyến, những yếu tố được khai báo trong hồsơ cá nhân (profile) của các thành viên tham gia, nó sẽ ảnh hưởng đến quyết địnhthiết lập kết nối bạn bè của người dùng Trong bài báo của J Naruchitparames et al.
(2011) [3], tác gia khai thác các thông tin cá nhân của người dùng và các tính năngtrên Facebook như sau:
Ban chung (share friends):Thông thường, một quan hệ được hình thành thong qua lợi ich hay sở thích
chung nao đó Vậy thông qua lợi ích hay sở thích chung nay, hai cá thé có quan hệbạn bè với nhau có thể có một tập bạn bè chung nào đó
Địa điểm (location):Địa điểm đóng vai tro quan trọng trong việc thiết lập và duy trì một quan hệbạn bè Hai cá thể có địa điểm gan nhau sẽ thuận lợi cho việc gặp gỡ và duy trì mối
quan hệ ngoài đời thật.
Đô tuổi (Age range):
Hai người ở cùng độ tuôi với nhau sé có xác suât két ban với nhau cao hon.Tuy nhiên điêu này không có nghĩa là hai người không cùng độ tuôi thì sẽ không
bao giờ kết bạn với nhau
SỞ thích chung (General Interest)
J Naruchitparames et al (2011) sử dụng thông tin vé thao tac “thich” (like) va“chia sé” (share) trên Facebook dé tìm ra đặc điểm chung của các người dùng Haingười dùng cùng thích và chia sẻ những bản nhạc giống nhau thì họ có cùng sở
thích với nhau.Photo Tags
Trang 22Xuất phát từ ý tưởng các quan hệ bạn bè có thể được hình thành từ nhữngtương tác với nhau Ví dụ, mặc dù người nảy có thể không quen biết gì người kia,nhưng hai người cùng có mặt trong một tắm hình, thì có thể họ cùng làm việc trongmột công ty, cùng học chung một khóa học Do đó, xác suất dé hai người thiết lập
kêt nôi bạn bè với nhau sẽ cao hơn.Su kiện (Events):
Đặc tính sự kiện cũng tương tự như photo tags Hai người dùng cùng chia sé
việc tham gia nhiều sự kiện giỗng nhau thì gia tăng khả năng họ có thể tương tác
với nhau.Hoi nhóm (Groups):
Trong mang xã hội Facebook, người dùng trong cùng một nhóm có thé tươngtác với nhau băng cách đăng thông tin trên trang cá nhân (wall posts) va trò chuyệnnhóm (group chat) Các thành viên trong cùng một nhóm có nhiều cơ hội tương tácvới nhau Ngoài ra việc hình thành một số nhóm còn bắt nguồn từ sở thích chung
của các thành viên đôi với một vân dé nhât định.Phim anh (Movies):
Việc khai thác yếu tô này có cùng ý tưởng với việc khai thác yếu tố sở thích
chung (general interest).
Hoc vấn (Education):Facebook cho phép thu thập thông tin hoc van ở nhiều cấp độ khác nhau như
bậc học, trường học, khóa học Những người học chung trường, chung lớp, chung
khóa học có xác suất tương tác với nhau cao hơn, do đó khả năng thiết lập kết nối
bạn bè cũng cao hơn.Tôn ơiáo, chính trị (Religion/Politics):
Trang 23Những người dùng có cùng quan điểm về tôn giáo, chính trị sẽ có cơ hội trởthành bạn bè với nhau cao hơn Tuy nhiên, không nhất thiết sự khác biệt về tôn giáochính tri có nghĩa là ho sẽ không thể là bạn bè với nhau.
3.3 Giải thuật di truyền
Thuật toán di truyền (GA) là thuật toán tối ưu ngẫu nhiên dựa trên cơ chế chọnlọc tự nhiên và tiễn hóa di truyền Nguyên lý cơ bản của thuật toán di truyền đượcHolland giới thiệu năm 1962 [16] Thuật toán di truyền được ứng dụng dau tiêntrong hai lĩnh vực chính: tối ưu hóa và máy học Trong lĩnh vực tối ưu hóa, thuậttoán di truyền được phát triển nhanh chóng và ứng dụng trong nhiều lĩnh vực khácnhau như tối ưu hàm, xử lý ảnh, bài toán hành trình người bán hàng, nhận dạng hệthống va điều khiến Thuật toán di truyền cũng như các thuật toán tiến hóa nóichung, hình thành dựa trên quan niệm cho rang, quá trình tiễn hóa tự nhiên là quátrình hoàn hảo nhất, hợp lý nhất và tự nó đã mang tính tối ưu Quá tình tiến hóa thểhiện ở chỗ, thế hệ sau bao gid cũng tốt hơn thế hệ trước
Giải thuật di truyền không chú trọng đến giải pháp duy nhất và chính xác nhưnhững phương pháp cô điển khác, trái lại nó lại xét đến toàn bộ các giải pháp vàchọn lay giải pháp tương đối tốt nhất nếu không là toi ưu Giải thuật di truyền tuydựa trên tính ngẫu nhiên nhưng lại có sự hướng dẫn bởi hàm thích nghi, do đó
không phải là đoán mò.3.4 Các giải thuật gom nhóm trong đồ thị
Gom nhóm đồ thị là thao tác phân chia đồ thị thành nhiều đồ thị con (cụm,
nhóm) Nghĩa là, cho một tập dữ liệu, mục tiêu của việc phân nhóm là ta sẽ phân
chia tập dữ liệu này thành nhiều nhóm khác nhau, đối với đỗ thị là ta sẽ thực hiệnphân chia thành nhiều đồ thị con Sao cho, các phan tử trong các nhóm nay là tươngtự nhau hoặc được kết nối với nhau theo định nghĩa cho trước [17| Đối với bài toánphân nhóm đồ thị mạng xã hội trong luận văn, các phân tử (các đỉnh) trong một
nhóm (trong một đô thi con) sẽ có xác suât là đỉnh liên kê của nhau cao hơn so với
Trang 24các phân tử thuộc một nhóm khác Đề thực hiện việc gom nhóm, có nhiều thuật toánvới những hướng tiếp cận khác nhau Trong mục này, chúng tôi sẽ giới thiệu về giảithuật gom nhóm thông dụng được xem xét để áp dụng cho luận văn này: giải thuật
gom cum Markov (MCL).
Giải thuật MCL (viết tat của cụm từ giải thuật gom cum Markov) là một thuậttoán gom nhóm nhanh và có thể mở rộng cho các mạng lưới (được biết như là đồthị) dựa trên mô phỏng của dòng chảy ngẫu nhiên trong đồ thị Được dé xuất bởi
Van Dongen (2000) [18] [19].
Có thể hình dung nguyên tắc hoạt động của giải thuật như sau, trong một đồthị có cau trúc phân nhóm, các đỉnh trong một nhóm có liên kết chặt chẽ với nhauhơn so với đỉnh ở nhóm khác Tai một đỉnh bat kỳ, ta bat đầu một luéng chảy ngẫunhiên băng qua các đỉnh liền kẻ, thì dòng chảy này có xu hướng chạy quanh quântrong nhóm mét thời gian trước khi rời khỏi để đi qua một nhóm khác Bằng cáchthực hiện nhiều bước đi ngẫu nhiên như vậy, ta có thé khám phá ra nơi mà các dòngchảy có xu hướng tập trung lại, đó chính là các nhóm cần tìm Các bước đi ngẫunhiên trên đồ thị được tính toán dựa trên “chuỗi Markov” (Markov Chains)°
Giải thuật MCL được bắt đầu băng ma trận chuyển đối T của đồ thị, Mỗi giátrị T;; trên ma trận chuyển đối, đại diện cho xác suất mà một bước chuyển ngẫunhiên từ đỉnh ¡ có thể đi sang đỉnh j Tổng giá trị trên mỗi cột của ma trận T phảibang 1 Mỗi vòng lặp của giải thuật bao gồm hai bước Bước thứ nhất gọi là mởrộng (expansion), ma trận chuyển đổi của dé thị sẽ được lũy thừa lên số mũ p lần(thông thường p = 2) Giá trị của mỗi phần tử Mj; trong ma trận kết qua là đại diệncho xác xuất mà một luồng chảy ngẫu nhiên từ đỉnh i có thé đi sang đỉnh j trong plần bước chuyển Bước thứ hai, thực hiện phép toán thôi phông, với tham số thôiphông r, có tác dụng thúc đây quá trình hội tụ của giải thuật Cụ thê hơn, phép toánthối phông này tăng cường giá trị xác suất trên ma trận chuyển đổi của những cặp
đỉnh có xu hướng cùng năm chung một nhóm, giảm giá tri của các đỉnh năm khác° Chuỗi Markov (Markov Chains): là một quá trình mang tính ngẫu nhiên thời gian rời rac, gồm một dãy
trạng thái, trong đó trạng thái hiện tại chỉ phụ thuộc vào trạng thái liên trước nó [24].
Trang 25nhóm Sau một vài vòng lặp sẽ hình thành ma trận ôn định (stable matrix), cácthành phan của ma trận có giá tri la 1 hoặc 0 Ta xem ma trận ôn định này là một matrận liên kê Đô thị được miêu tả bởi ma trận liên kê này là một đô thị rời rạc Và
các thành phan liên thông của nó chính là các nhóm trên đồ thị gốc [4]
Trang 264 HIỆN THỰC PHƯƠNG PHAP
4.1 Phương pháp đề xuất
Với nội dung và phạm vi nghiên cứu đã nêu, phương pháp đề xuất của chúngtôi là thông qua thông tin về các kết nối bạn bè đã có của người dùng để khám phára các cộng động (các nhóm bạn bẻ) Tiếp đó chúng tôi tìm hiểu nhận thức củangười dùng đối với từng nhóm Việc này được hiện thực dựa trên những đặc điểmchung giữa các bạn bè trong nhóm đối với người dùng, dựa trên thông tin cá nhân
do người dùng khai báo và các hoạt động mà người dùng thực hiện trên mạng xã
hội Tuy nhiên cũng có thé xảy ra trường hợp thiếu thông tin do người dùng che dauhoặc khai báo sai các thông tin cá nhân Để khắc phục trường hợp này, chúng tôi đềxuất sử dụng phương pháp lấy theo đa số để xây dựng lại thông tin cá nhân cho
người dùng Sau đó, với từng nhóm bạn bè khám phá được, chúng tôi sử dụng
phương pháp friends-of-friends dé tìm kiếm tập các bạn bè tiềm năng (chưa là banvới người dùng) Cuối cùng là dựa trên các đặc tính đã tìm được của mỗi nhóm déthực hiện xếp hạng các bạn bè tiềm năng, và lựa chọn ra các phần tử có thứ hạng
cao nhât đề đê xuât cho người dùng.
Quá trình thực hiện của phương pháp dé xuất trên có thé được mô hình nhưHình 4-1 gồm các nội dung chính sau:
Kham pha các cđu trúc nhóm trong danh sách ban bè đã có của newoi dune.
Cho một người dùng cần được giới thiệu bạn bè, từ danh sách bạn bè đã cócủa người dùng đó, chúng tôi dùng phương pháp gom nhóm đồ thị mà giải thuậtđược sử dụng trực tiếp trong luận văn là giải thuật gom cụm Markov (MCL) để pháthiện ra câu trúc cộng đồng (các nhóm bạn) trong danh sách bạn bè này
Trang 27Danh sách bạn bè đã có của người dùng
Xếp hạng các bạn bè tiềm năng
|
Danh sách bạn để giới thiệu
Hình 4-1 Mô hình giới thiệu bạn bè trên mạng xã hội