Bài viết đề xuất một giải pháp mới dựa trên tính chất của một số đỉnh đặc biệt có trên đồ thị, từ đó đưa ra thuật toán biến đổi đồ thị ban đầu về dạng rút gọn tương đương nhằm giảm kích thước của đồ thị, đồng thời kết hợp với kỹ thuật lan truyền nhãn, xây dựng hàm heuristic để tăng tốc độ xử lý cho thuật toán phát hiện cộng đồng.
TNU Journal of Science and Technology 225(09): 103 - 111 KẾT QUẢ ĐỀ XUẤT THUẬT TOÁN PHÁT HIỆN CỘNG ĐỒNG TRÊN MẠNG XÃ HỘI Nguyễn Hiền Trinh1, Vũ Vinh Quang1*, Cáp Thanh Tùng2 1Trường Đại học Công nghệ thông tin Truyền thông - ĐH Thái Nguyên, 2Trường Đại học Sư phạm - ĐH Thái Nguyên TÓM TẮT Hiện nay, phát cộng đồng mạng xã hội hướng nghiên cứu nhiều nhà khoa học quan tâm Đã có nhiều thuật tốn đề xuất, vấn đề cần phải khắc phục mạng xã hội thực tế số lượng đỉnh cạnh đồ thị lớn dẫn tới khối lượng tính tốn thuật tốn lớn, khó đáp ứng với u cầu thực tiễn Trong báo này, đề xuất giải pháp dựa tính chất số đỉnh đặc biệt có đồ thị, từ đưa thuật toán biến đổi đồ thị ban đầu dạng rút gọn tương đương nhằm giảm kích thước đồ thị, đồng thời kết hợp với kỹ thuật lan truyền nhãn, xây dựng hàm heuristic để tăng tốc độ xử lý cho thuật toán phát cộng đồng Kết thực nghiệm liệu chuẩn cho thấy so với phương pháp lan truyền nhãn gốc LPA thời gian xử lý trung bình giảm xuống cịn 85,5% chất lượng cộng đồng tăng lên trung bình 1,145 lần, từ khẳng định tính hiệu thuật tốn đề xuất Từ khóa: Khoa học máy tính; mạng xã hội; cấu trúc cộng đồng; phát cộng đồng; độ đo trung gian đỉnh/cạnh; lan truyền nhãn Ngày nhận bài: 17/6/2020; Ngày hoàn thiện: 31/8/2020; Ngày đăng: 31/8/2020 THE PROPOSED RESULTS OF ALGORITHM TO DETECT THE COMMUNITY ON SOCIAL NETWORK Nguyen Hien Trinh1, Vu Vinh Quang1*, Cap Thanh Tung2 1TNU - University of Information Technology and Communication, 2TNU - University of Education ABSTRACT Nowadays, community detecting on social network has been an orientation which draws attention of many researchers Numerous algorithms have been proposed, but one of the problems that need to be solved for social networks is the fact that the number of vertices and edges of the graph is extremely large As a result, the volume of calculations in the algorithms could be significantly large, and thus it is difficult to meet with practical requirements In this article, we introduce a new approach based on certain attributes of special vertex on network and then propose the algorithm of merging vertices of the same centrality to reduce input vertices/ edges of network, and develop in conjunction with label propagation techniques, build a heuristic function to speed up community detection algorithms Experimental results on the standard data sets showed that, compared to the original label propagation method LPA, the average processing time was reduced down to only 85.5%, while the quality of the community is increased by an average of 1.145 times, thereby confirming the effectiveness of the proposed algorithm Keywords: Computer science; social network; community structure; detecting community structure; the betwenness centrality for vertex/ edges; label propagation Received: 17/6/2020; Revised: 31/8/2020; Published: 31/8/2020 * Corresponding author Email: vvquang@ictu.edu.vn http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn 103 Nguyễn Hiền Trinh Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ ĐHTN Mở đầu Trong mạng xã hội, cộng đồng coi nhóm đỉnh có thuộc tính chung có vai trị tương tự Để nhận biết cấu trúc cộng đồng, dựa vào nhận xét: mối quan hệ đỉnh cộng đồng gắn kết mạnh, chặt chẽ, dày đặc ngược lại, với đỉnh cộng đồng gắn kết yếu, nhỏ lẻ, rời rạc Mục tiêu toán phát cộng đồng từ mạng xã hội G=(V, E), tìm cách phân lớp đỉnh mạng thành nhóm tương đương Trong năm qua, nhiều phương pháp đề xuất để phát cộng đồng, kể đến tác giả Flake [1], Radichii [2] xây dựng thuật toán phát cộng đồng theo phương pháp phân đồ thị G thành đồ thị nhỏ với đặc trưng riêng; Girvan Newman [3] sử dụng kỹ thuật phân cụm thứ bậc phân chia để phát cộng đồng; Tyler cộng [4]; Pinney Weshead [5]; Rattigan [6]; Gregory [7] đưa kết cải tiến thuật toán Girvan Newman kĩ thuật tính tốn khác Tuy nhiên, tất thuật toán tác giả đề xuất có độ phức tạp lớn phải tính độ đo tất cạnh đồ thị bước xử lý Hướng cải tiến tìm cách giảm chi phí tính tốn độ đo cạnh xuống cách nghiên cứu số đỉnh đặc biệt tính chất chúng, từ xây dựng phép biến đổi tương đương để giảm số đỉnh số cạnh đồ thị, cuối kết hợp với thuật toán lan truyền nhãn đồ thị rút gọn để phát cộng đồng nhanh Hướng cải tiến tăng tốc độ thuật toán phát cộng đồng Cấu trúc báo gồm phần Phần (mở đầu): giới thiệu nội dung nghiên cứu Phần 2: tóm tắt số kiến thức dùng mơ tả thuật tốn Phần 3: trình bày lớp đỉnh treo tương đương, thuật toán kết hợp, phép biến đổi tương đương đồ thị rút gọn Phần 4: phát triển thuật toán gán nhãn nhằm phát cộng 104 225(09): 103 - 111 đồng thực đồ thị rút gọn Phần 5: đưa kết thực nghiệm kiểm tra thuật toán đề xuất liệu Một số kiến thức 2.1 Đồ thị mạng xã hội: Là cấu trúc G=(V, E), V tập đỉnh E tập cạnh, tập cạnh E thể mối quan hệ xã hội thành viên với [8] Đồ thị G vơ hướng có hướng tùy theo mối quan hệ thành viên Cấu trúc cộng đồng C định nghĩa tập đỉnh V cho với đỉnh v C có nhiều cạnh kết nối v với đỉnh khác C cạnh kết nối v với đỉnh khác thuộc V\C [8] Ta ký hiệu st số đường ngắn từ s tới t; st (v ) số đường ngắn từ s tới t có qua v; (v ) st độ phụ thuộc cặp đỉnh (v ) st st s, t vào đỉnh v Khơng làm tính tổng qt, giả thiết G đồ thị vô hướng áp dụng số tính chất đường đồ thị G [9], cạnh đường ln có tính đối xứng nghĩa là: (u, v ) st E (v, u ) ts , st (v ) E, ts (v ) , st (v ) ts (v ) 2.2 Độ đo trung gian (The betwenness centrality): độ đo đối tượng v mạng G xác định tổng số đối tượng khác mạng trao đổi liên kết với thơng qua đối tượng G [9] Độ đo trung gian xác định công thức: C B (v ) s t v Trong đó, s v s v st (v ) st s t v t (s, t ) (v ) (1) st , t (s, t ) 0, (s, u ) (s, t ) u N (t ) N (t ) {u : (u, t ) E ;d(s, t ) d(s, u ) 1} ; http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn Nguyễn Hiền Trinh Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ ĐHTN d(s, t ) khoảng cách hai đỉnh s t Q= Trong công thức (1), tính chất đối xứng đường đi, ta cần tính chiều từ s đến t Giá trị C B (v ) có ý nghĩa hệ số tiềm để điều khiển liên kết đỉnh đồ thị Nói cách khác, độ trung gian đỉnh v tổng xác suất đường ngắn qua v tất cặp đỉnh đồ thị G 2.3 Độ trung gian cạnh: C B (e ) độ đo trung gian cạnh e = (a, b) đồ thị mạng G định nghĩa tỷ số cặp đỉnh x y mà cạnh e nằm đường ngắn x y, với x, y V [9] Độ đo trung gian xác định công thức: C B (e ) st s t (e ) (2) st Do tính đối xứng nên độ đo trung gian cạnh e theo công thức (2) hai lần tổng st (e ) tính theo chiều với s t V Để tính độ đo trung gian đỉnh cạnh G, ta thường sử dụng phương pháp duyệt theo chiều rộng BFS đỉnh x bất kỳ, kết đưa đồ thị định hướng phi chu trình DAGx (Directed Acyclic Graph) cạnh DAGx phần đường ngắn xuất phát từ x 2.4 Tiêu chuẩn đánh giá cộng đồng Newman Girvan [10], X Liu cộng [11] đưa đại lượng Modularity tối ưu hóa để đánh giá chất lượng cộng đồng: Q= Trong đó, (aij − pij ) (Ci , C j ) 2m ij A = ( aij ) n n ma trận (3) 225(09): 103 - 111 kk (aij − 2imj ) (Ci , C j ) 2m ij (4) với ki, kj bậc đỉnh i đỉnh j Nếu kí hiệu nc số cộng đồng, lc số cạnh nối đỉnh, dc tổng số bậc đỉnh cộng đồng C Khi ta có: nc Q = ( c =1 lc d − ( c )2 ) m 2m (5) Một cộng đồng C có đại lượng Q đạt giá trị dương lớn cộng đồng xác định rõ, tức việc phân cộng đồng tốt Lớp đỉnh treo tương đương 3.1 Đỉnh treo lớp đỉnh treo tương đương Định nghĩa 1: Cho đồ thị mạng G = (V, E), đỉnh v V gọi đỉnh treo bậc Xét W hàm trọng số đỉnh thuộc G Khi G có dạng G = (V, E, W) Với đồ thị mạng G = (V, E, W) vô hướng liên thông, u w V hai đỉnh treo, u tương đương bậc với w, ký hiệu u 1 w chúng liền kề với v, (N(u) = N(w) = {v}) Dễ nhận thấy quan hệ quan hệ tương đương Ký hiệu VT tập tất đỉnh treo đồ thị G, VT {u V deg(u ) 1} , tập đỉnh VT / đỉnh VT / tạo lớp treo tương đương với nhau, {C 1,C 2, ,C k } Những đỉnh treo tương đương với liên thuộc với đỉnh có độ đo trung gian Từ ta kết hợp tất đỉnh treo tương đương lớp C i , i k thành đỉnh đại diện C 'i (cũng đỉnh treo), ta nhận đồ thị G1 (V1, E1, W1 ) , đó: kề, V1 2m = aij , pik số cạnh dự kiến có VT ij VC C, hàm (Ci , C j ) = i, j thuộc V {u VT VC , V deg(u ) 1} ; {C'1,C'2, ,C'k } , cộng đồng (Ci , C j ) = ngược lại E1 E {(u, v ) u VT , v N (u )} {(v,C 'i ) i k, v N (u ), u C i } Dựa xác suất kết nối đỉnh i đỉnh j ta có: W1(v ) http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn với 105 Nguyễn Hiền Trinh Đtg v Tạp chí KHOA HỌC & CÔNG NGHỆ ĐHTN VT ; W1(v ) V Ci , v VC (iii) Xuất phát từ khái niệm đỉnh treo, lớp đỉnh treo tương đương, nhận tính chất sau: Tính chất Mọi đỉnh treo đồ thị G gốc DAG duyệt theo BFS Tính chất Nếu v đỉnh treo đồ thị G e (v, w) E C B (e ) (V 1) Tính chất Nếu v đỉnh treo đồ thị G w đỉnh liền kề với v, (v, w) E DAGv DAGw có chung đồ thị G1 DAGv DAGw Tính chất Với đỉnh treo u V , v V đỉnh liền kề với đỉnh u ( u Pu (v )) Khi ta có hệ thức: (i) ut (ii) vt ut (w) ut (iv) V {u, v} V deg(s ) 1} , V N 1(v ) N 1(v ) * st s v t V N1 (v ) (v ) st Tính chất Giả sử G1 đồ thị rút gọn đồ thị G sau kết hợp đỉnh treo tương đương, VC tập đỉnh treo G1 Khi ta có: (i) st (v ) s ' i W1(C ) * C i' , i st s (v ) C i' , t V1 VC N (C i' ) , v (W1(C i' ) W1(C ) * C i" ,C i' ,C i" u, 1) C i , i, j N (C i' ) , C i' , t s u N (C i' ), w (v) st s N (C j' ) , W1(C i' ) * W1(C j' ) * (v ) (v ) C j' , i, j VC , t C i' , i v sw V1 (v ) j, VC {u} , (v ) k , w V1 uw k , i N (C j' ) , v W1(C i' ) * j, N (C i' ) , VC Chứng minh: Tính chất 1: Đỉnh DAG mà khơng có đường qua gọi Dễ nhận thấy, đỉnh treo khơng phải đỉnh gốc DAG phải V Tính chất 3: Hiển nhiên đồ thị G1 đồ thị DAGv (hoặc DAGw) thu cách bỏ đỉnh treo liên thuộc với w cạnh nối chúng Bằng lập luận tương tự, ta chứng minh tính chất cịn lại 3.2 Thuật tốn kết hợp đỉnh treo tương đương Xuất phát từ khái niệm tính chất lớp đỉnh treo, chúng tơi đề xuất thuật toán kết hợp đỉnh treo tương đương nhằm giảm số đỉnh đồ thị ban đầu G đồ thị rút gọn G1 Thuật toán (Kết hợp đỉnh treo tương đương) {u} , ' i v 106 (v ) k, u t (ii) ut st , k , i N (C i' ), w v (iv) C j' , i, j gian cạnh C B (e ) với đỉnh {u, v} C B (v ) C i' , t s vw đỉnh treo nên đường ngắn chúng qua e Theo định nghĩa, độ trung {u, v, w} (v ) W1(C i' ) * W1(C j' ) * (v ) Tính chất 2: Vì G liên thơng nên với v ' V {v } có đường tới v Vì v (w) với {s V (iii) t vt V w t với t st 225(09): 103 - 111 , k , Input : Mạng G = (V, E) Output: G1 = (V1, E1) // đồ thị thu sau kết hợp đỉnh treo tương đương Begin http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn Nguyễn Hiền Trinh Đtg V W(u)=1// Xác định W for u V1 Tạp chí KHOA HỌC & CƠNG NGHỆ ĐHTN V ; E1 for u E ;P có thuộc cộng đồng hay không Cụ thể, cho mạng có n nút, nút x có nhãn lần lặp t ký hiệu Cx(t), LPA mô tả sau: ; V if ( deg(u ) & &(u, v ) E ) then Khởi động nhãn ban đầu Cx (0) = x Đặt t = { P.push(u,v) ; V1 {u}; E1 V1 E1 Lấy danh sách nhãn cập nhật cho nút theo thứ tự ngẫu nhiên {(u, v )} } k = 1; //Tìm lớp đỉnh treo tương đương (u,v)=P.pop() ;C [k ] while ( P ! {u} ; N[k ] v; ) { (u,v)=P.pop() ;j = 1; loop = true; while ( j k & & loop) if ( N [j ] {C [j ] v ) then C [j ] {u} ;loop=false} else j = j + 1; C [k ] {u} ; N[k ] VC ; v }} //Kết hợp đỉnh treo tương đương for j = to k { VC W1(C ) for u W1(u ) C [j ] ; E1 {C j' } ; VC E1 ' i {(C ,N[j ])} } V1 W(u ) ; V1 V1 Đối với nút danh sách, xác định Cx(t) = f(Cx1(t), … , Cxm(t), Cxm + 1(t − 1), … , Cxn(t − 1)) (Trong Cx1(t), … , Cxm (t) nhãn nút lân cận cập nhật lần lặp tại, Cxm + 1(t - 1), … , Cxn(t - 1) nhãn nút lân cận lần cập nhật trước Hàm f trả nhãn chấp nhận hầu hết nút lân cận nó.) LPA đạt đến hội tụ nút có nút láng giềng nhiều có), dừng thuật tốn Nếu khơng , đặt t = t + quay lại bước (3) if (loop) then { k = k + 1; ' j 225(09): 103 - 111 VC ; End Nhận xét: Thuật toán cần duyệt qua tất đỉnh đồ thị để xác định tập đỉnh treo (vòng lặp thứ 2), độ phức tạp thuật toán O(n) với n số đỉnh mạng Phát triển thuật toán gán nhãn để phát cấu trúc cộng đồng 4.1 Giới thiệu thuật toán LPA Thuật toán gán nhãn (LPA) thuật toán đề xuất Raghavan cộng [12] Ý tưởng cốt lõi LPA gán nút mạng vào cộng đồng, nơi mà hầu hết nút láng giềng định http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn LPA dừng đạt số lần hội tụ số lần lặp tối đa người dùng định nghĩa Nhận xét: LPA thuật toán heuristic, chạy nhanh cho kết tốt tập liệu lớn [13] LPA phụ thuộc vào việc chọn hàm f hàm heuristic, giá trị hàm phụ thuộc vào trạng thái toán bước giải đưa tính tốn để xác định nhãn hợp lý bước thuật giải [14], [15] Mặc dù chưa khẳng định tính ổn định độ xác, song thuật toán LPA đánh giá thuật toán đơn giản hiệu toán xác định cấu trúc cộng đồng mạng xã hội [16], [17] Từ kết nghiên cứu lớp đỉnh treo tương đương LPA, đề xuất thuật toán phát cộng đồng dựa việc rút gọn đỉnh treo phát triển thuật toán lan truyền nhãn tư tưởng gán nhãn cho nút chưa gắn nhãn trước đồ thị rút gọn 107 Nguyễn Hiền Trinh Đtg 4.2 Đề xuất (LPA_Degree) thuật Tạp chí KHOA HỌC & CƠNG NGHỆ ĐHTN tốn 2: LPA_D Như biết, nhãn nút thứ i, kí hiệu Ci xác định công thức tổng quát: Ci = fi = f (C1 (t ), C2 (t ), , Cm (t ), Cm+1 (t −1), Cm+2 (t −1), , Ck (t −1)) (6) Trong đó, hàm f hàm Heuricstic cần xác định Trên sở thuật toán LPA, lựa chọn hàm f theo quan điểm đưa để đánh giá xu hình thành cộng đồng cho mạng xã hội Theo Phillip Bonacich [18] Linton Freeman [19] độ đo trung tâm đỉnh v (degree(v)= tổng số cạnh kết nối với đỉnh v) trị số nói lên vai trị quan trọng, mức độ ảnh hưởng đỉnh láng giềng nói riêng với cộng động mà thuộc nói chung Hiểu theo nghĩa đỉnh coi tác nhân tác nhân có nhiều mối quan hệ (quan hệ rộng) quan trọng cộng đồng (sức lan tỏa ảnh hưởng cá nhân với cộng đồng lớn, sức thu hút để hình thành nên cộng đồng cao v.v…) Như vậy, theo quan điểm độ đo trung tâm đóng vai trị quan trọng việc xác định cộng đồng Để thiết kế thuật tốn, chúng tơi đặt trọng tâm vào tham số tính thực tiễn, đơn giản hiệu thuật toán cần xử lý với liệu lớn Do vậy, hàm gán nhãn mà lựa chọn cài đặt thuật toán xác định công thức: Ci = f i = f Degree = Max jN (i ) {deg ree(j)} (7) Như vậy, vịng lặp q trình lan truyền nhãn, nút i lựa chọn theo xu ngả người láng giềng có vai trị quan trọng (có trị số degree lớn nhất) Nếu có nhiều láng giềng có degree lớn nhau, nút i lấy ngẫu nhiên theo số Nếu khơng tốt nó, khơng đổi nhãn (tức vai trị trung tâm giai đoạn xét) Vòng lặp tiếp tục đạt trạng thái hội tụ Trên sở đó, thuật tốn đề xuất mơ tả sau: 108 225(09): 103 - 111 Algorithm LPA_D Input: Mạng G =(V, E), biểu diễn ma trận kề A; Output: Tập cộng đồng mạng Begin Kết hợp đỉnh treo tương đương (Thuật toán 1) thu đồ thị rút gọn G1 = (V1, E1) For each x ∈ V1, Cx (0) = x ; //Khởi tạo nút cộng đồng, thể nhãn Vịng lặp lan truyền nhãn 3.1 t = 1; 3.2 Tạo tập X gồm nút theo thứ tự ngẫu nhiên 3.3 For each x ∈ X 3.3.1 For y ∈ N(x) tính Cx = f x = f Degree = Max yN ( x ) {deg ree(y)} 3.3.2 Cập nhật nhãn x theo y, xác định cộng đồng mà x, y thuộc 3.4 Nếu nút có nhãn với láng giềng dừng thuật tốn Nếu khơng, đặt t = t + quay lại bước (3.2) Xác định kết quả: 4.1 Cộng đồng gồm node có nhãn 4.2 Số lượng nhãn (kiểu nhãn) cho biết số lượng cộng đồng End Độ phức tạp thời gian LPA_D đánh giá Max{O(k1n), O(k2n)} với n số đỉnh G1, k1 số láng giềng lớn đỉnh G1 k2 số lần lặp lan truyền nhãn ( ki , i=1,2) Nhận xét + Trong thuật toán LPA_D, sử dụng thuật toán kết hợp đỉnh treo tương đương bước đầu tiên, hiển nhiên ta thu đồ thị rút gọn G1 = (V1, E1) với số đỉnh nhỏ nhiều so với đồ thị ban đầu G =(V, E), độ phức tạp thuật toán lan truyền nhãn áp dụng với đồ thị rút gọn giảm so với độ phức tạp thuật toán áp dụng cho đồ thị ban đầu http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn Nguyễn Hiền Trinh Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ ĐHTN + Theo phân tích ý nghĩa độ đo trung tâm, thuật toán sử dụng hàm gán nhãn theo cơng thức (7), chất lượng cộng đồng thu từ thuật toán LPA_D chắn tốt so với việc sử dụng hàm gán nhãn khác Một số kết thực nghiệm Để kiểm tra tính hiệu thuật tốn đề xuất, chúng tơi tiến hành thực thuật tốn số liệu thực giả định với kích thước lớn số liệu mẫu tham khảo thư viện quốc tế công bố Trong thực nghiệm này, tiến hành so sánh thời gian chạy chất lượng cộng đồng thuật toán đề xuất với thuật toán LPA gốc Các chương trình thực mơi trường Matlab 2012 Ví dụ 5.1 Les Misérables Group: Năm 1993, nhà nghiên cứu D E Knuth đại học 225(09): 103 - 111 Stanford (Mỹ) xây dựng liệu dựa vào tác phẩm Những người khốn khổ Đại văn hào Victor Huygo, mô tả mối quan hệ nhân vật (có 77 node tương ứng với 77 nhân vật, nhân vật xuất chương (chapter) hai node có cạnh nối) Do đồ thị có 77 node 254 cạnh (Dữ liệu lấy từ: https://github.com/gephi/gephi/wiki/Datasets Chúng sử dụng liệu thực LPA_D, với vòng lặp, thu hai cộng đồng với đỉnh mơ tả hình (Đồ thị biểu diễn phần mềm Gephi 0.9.2) Qua hình biểu diễn, dễ dàng nhận hai nhân vật quan trọng mạng nhân vật có ảnh hưởng lớn đến cộng đồng (có degree cao), nút số 11 (Valjean) số 48 (Gavroche) Có thể xem nút trung tâm tạo cộng đồng Hình Kết cộng đồng Ví dụ 5.2: Xét liệu giả định với kích thước lớn, tiến hành thực nghiệm thuật tốn LPA_D so sánh với thuật tốn LPA [12] Nhóm tác giả thu kết bảng hình Bảng Kết so sánh hai thuật toán (n-số đỉnh, m-số cạnh, k-số đỉnh treo, l-số lớp đỉnh treo tương đương, t-thời gian) (Đơn vị tính thời gian chạy:s) Stt n 100 300 500 700 m 500 1500 2500 3500 k 15 45 75 105 l 14 23 32 t_LPA 1,7 6,8 11,5 13,3 t_LPA_D 1,1 5,2 8,7 10,7 900 4500 135 41 16,1 11,5 1000 5000 150 45 23,6 17,6 http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn Hình So sánh thời gian thực 109 Nguyễn Hiền Trinh Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ ĐHTN 225(09): 103 - 111 Ví dụ 5.3: Tiếp tục xét liệu chuẩn công bố thư viện Quốc tế [20], chúng tơi tiến hành thử nghiệm thuật tốn, đánh giá kích thước mạng, so sánh thời gian chạy, tính toán chất lượng cộng đồng thu so sánh với LPA [12], kết đưa bảng hình hình Bảng Kết thực nghiệm ví dụ 5.3 (n-số đỉnh, m-số cạnh,k-số đỉnh treo, l-số lớp đỉnh treo tương đương, L- số lần lặp, c-số cộng đồng, Q-chất lượng, t-thời gian) (Đơn vị tính thời gian chạy:s) Q t STT Bộ liệu n m k l c L LPA_D LPA LPA_D LPA Dolphin Group 62 159 0,515 0,458 0,62 0,83 Les Misérables Group 77 254 17 0,556 0,502 0,75 0,92 Book Amazon 105 441 27 22 0,592 0,548 1,14 1,73 Email-Eu-core 1005 25571 123 77 15 0,623 0,529 18,67 24,59 Orkut 1247 15511 207 102 19 0,719 0,675 24,23 28,21 Political blogosphere 1490 19090 257 87 0,688 0,557 37,2 30,35 Youtube 3088 6695 347 157 23 0,794 0,645 67,43 73,28 Hình So sánh thời gian thực Nhận xét: Kết đạt chứng tỏ rằng, thuật toán kết hợp đỉnh treo tương đương thuật tốn LPA_D chúng tơi đề xuất hiệu giảm kích thước mạng ban đầu thơng qua thuật toán rút gọn; đồng thời sử dụng hàm gán nhãn lan truyền nhãn fDegree cho phép việc phân lập cộng đồng nhanh với chất lượng cao, từ giảm thời gian tính tốn, chất lượng cộng đồng thu tốt so với thuật tốn LPA [12] Kết luận Chúng tơi giới thiệu cách tiếp cận toán phát cộng đồng bao gồm nghiên cứu tính chất lớp đỉnh treo tương đương, từ đề xuất thuật toán kết hợp đỉnh treo tương đương để đưa đồ thị mạng ban đầu đồ thị rút gọn nhằm giảm kích thước mạng ban đầu Xuất phát từ thuật toán gán nhãn LPA, kết hợp thuật toán rút gọn việc lựa chọn hàm gắn nhãn lan truyền nhãn fDegree, phát triển thuật toán LPA thành thuật toán LPA_D để 110 Hình So sánh chất lượng cộng đồng xác định cấu trúc cộng đồng, thuật tốn có độ phức tạp tuyến tính Các kết thực nghiệm chứng tỏ thuật tốn đề xuất có tốc độ chạy nhanh thuật toán LPA, chất lượng cộng đồng thu cao TÀI LIỆU THAM KHẢO/ REFERENCES [1] G W Flake, S Lawrence, C L Giles, and F M Coetzee, “Self organization and identification of web communities,” Computer, vol 35, no 3, pp 66-70, 2002 [2] F Radicchi, and F Castellano, “Defining and identifying communities in network,” Proceedings of the National Academy of Sciences of the United States of America, 2004 [3] M Girvan, and M E Newman, “Community structure in social and biological networks,” Physical review E, vol 99, pp 7821-7826, 2002 [4] J R Tyler, and D M Wilkinson, “Automated discovery of community structure within organization,” Physical review E, vol 15, pp 723-739, 2003 http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn Nguyễn Hiền Trinh Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ ĐHTN [5] J W Pinney, and D R Westhead, Betweenness-based decomposition methods for social and biological network Leeds University Press, 2006 [6] M J Rattigan, M Maier, and D Jensen, “Graph clustering with network structure indices,” Proceedings of the 24th international conference on Machine learning, 2007 [7] S Gregory, An algorithm to find overlapping community structure in network Springer Heidelberg, 2007 [8] S Fortunato, Community Detection in Graphs, Physics Reports, 2010 [9] U Brandes, “A faster algorithm for betweenness centrality,” Journal of Mathematical sociology, vol 25, no 2, pp 163-177, 2001 [10] M E Newman, and M Girvan, “Finding and evaluating community structure in networks,” Phys Rev E Stat Nonlin Soft Matter Phys, vol 76, pp 106-119, 2004 [11] X Liu, H M Cheng, and Z Y.Zhang, “Evaluation of community detection methods,” IEEE Transactions on Knowledge and Data Engineering, vol 32, no 9, pp 1736-1746, 2019 [12] U N Raghavan, R Albert, and S Kumara, “Near linear time algorithm to detect community structures in large-scale network,” Physics Reports, vol 23, pp 306-323, 2007 [13] Sara E Garza, and S E Schaeffer, “Community detection with the Label http://jst.tnu.edu.vn; Email: jst@tnu.edu.vn 225(09): 103 - 111 Propagation Algorithm,” Elsevier B.V, vol 534, pp 1024-1059, 2019 [14] Z Wu, A Efros, and S X Yu, “Improving generalization via scalable neighborhood component analysis,” In Computer Vision ECCV 2018 - 15th European Conference, Munich, Germany, Proceedings, Part VII, 2018, pp 712-728 [15] Meilian, Zh Zhang, Zh Qu, and Yukang, “Overlapping Community Detection Using Label Propagation in Large-Scale Complex Networks,” IEEE Transactions on Knowledge and Data Engineering, vol 31, pp 17361749, 2019 [16] A Zhang, G Ren, and Y Lin, “Detecting community structures in network by label propagation with prediction of percolation transition,” The Scientific word Journal, vol 14, pp 315-336, 2014 [17] T Wu, Y Guo, and L Chen, “Integrated structure investigation in complex networks by label propagation,” Physica A: Statistical Mechanics and its Applications, vol 448, pp 68-80, 2016 [18] P Bonacich, Introduction to Mathematical Sociology Princeton University Press, 2013 [19] L C Freeman, “Maintaining the Duality Closeness and Betweenness Centrality,” Social Network, vol 44, pp 153-159, 2016 [20] J Leskovec, and Krevl, “A SNAP Datasets Stanford large network dataset collection,” 2014 [Online] Available: https://snap.stanford.edu [Accessed Feb 26, 2020] 111 ... phức tạp thuật toán O(n) với n số đỉnh mạng Phát triển thuật toán gán nhãn để phát cấu trúc cộng đồng 4.1 Giới thiệu thuật toán LPA Thuật toán gán nhãn (LPA) thuật toán đề xuất Raghavan cộng [12]... song thuật toán LPA đánh giá thuật toán đơn giản hiệu toán xác định cấu trúc cộng đồng mạng xã hội [16], [17] Từ kết nghiên cứu lớp đỉnh treo tương đương LPA, đề xuất thuật toán phát cộng đồng. .. đỉnh cộng đồng gắn kết yếu, nhỏ lẻ, rời rạc Mục tiêu toán phát cộng đồng từ mạng xã hội G=(V, E), tìm cách phân lớp đỉnh mạng thành nhóm tương đương Trong năm qua, nhiều phương pháp đề xuất để phát