Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
1,04 MB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA LÊ ANH NGỌC PHÂN NHÓM NGƯỜI DÙNG DỰA VÀO HÀNH VI TƯƠNG TÁC TRONG MẠNG XÃ HỘI Chuyên ngành: Khoa học máy tính Mã số: 8480101 TĨM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT Đà Nẵng - Năm 2018 Cơng trình hoàn thành TRƯỜNG ĐẠI HỌC BÁCH KHOA Người hướng dẫn khoa học: PGS.TS Huỳnh Công Pháp Phản biện 1: TS Đặng Hoài Phương Phản biện 2: TS Đậu Mạnh Hoàn Luận văn bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ chuyên ngành Khoa học máy tính họp Trường Đại học Bách khoa Đà Nẵng vào ngày 05 tháng 01 năm 2019 Có thể tìm hiểu luận văn tại: - Trung tâm Học liệu Truyền thông Trường Đại học Bách khoa Đại học Đà Nẵng - Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa Đại học Đà Nẵng MỞ ĐẦU Đặt vấn đề Mạng xã hội cấu trúc xã hội cấu tạo từ đối tượng người, tổ chức, quốc gia…được gọi nút từ mối quan hệ người thân, bạn bè, đồng nghiệp… trao đổi tài chính, giao dịch…được gọi cung, nút liên kết với nhiều cung Có hai cách để biểu diễn mạng xã hội mà nhà phân tích mạng xã hội sử dụng đồ thị ma trận kề, lý thuyết đồ thị thường sử dụng để tính tốn phân tích liên kết mạng Để biểu diễn mạng xã hội lý thuyết đồ thị nút đỉnh, liên kết nút cạnh cạnh đồ thị vơ hướng có hướng hay đánh trọng số phụ thuộc vào nhu cầu biểu diễn Khi biểu diễn đồ thị mạng xã hội ta thấy số nhóm đỉnh có liên kết chặt chẽ với tạo thành cụm cụm nối với vài cạnh khác, tính chất gọi phân nhóm Đây tính chất quan trọng mạng xã hội nhiều nghiên cứu mục tiêu hướng đến việc phát nhóm Lý chọn đề tài Hiện giới có nhiều trang mạng xã hội khác tiêu biểu có Facebook, Twitter, Youtube, Instagram…hay Việt Nam có Zalo, Zing Me thu hút hàng triệu người dùng Trên trang mạng xã hội người dùng giao lưu, kết bạn, bày tỏ cảm xúc sử dụng với mục đích kinh doanh, giải trí, tuyên truyền…Nếu phân nhóm người dùng quan tâm đến vấn đề mạng xã hội có ý nghĩa to lớn giúp cho việc truyền tải thông tin, tiếp thị bán hàng hoạt động khác…đến đối tượng Mục tiêu đề tài Xây dựng cấu trúc mạng xã hội dựa hành vi tương tác người dùng Xây dựng thuật toán phát nhóm người dùng nhỏ bên mạng xã hội với độ tin cậy cao Thời gian thực thi thuật toán nhanh, tiết kiệm nhớ nhằm phù hợp với cấu trúc mạng xã hội lớn thực tế (hàng triệu đỉnh, cạnh) Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu liệu mạng xã hội: người dùng mạng xã hội, trao đổi nội dung thơng tin, bình luận, chia sẻ, mạng xã hội Phạm vi nghiên cứu Nắm bắt sử dụng Facebook API lấy thơng tin người dùng, chia sẻ, bình luận, like mạng xã hội Facebook Nắm bắt lý thuyết đồ thị vận dụng vào việc biểu diễn mạng xã hội Nắm bắt tiêu chí để phát cấu trúc nhóm Nắm bắt số thuật tốn phát nhóm nhằm cải tiến, nâng cao chất lượng phân nhóm, tối ưu thời gian thực thi dung lượng nhớ Phương pháp luận phương pháp nghiên cứu Từ lý thuyết công bố từ báo, tài liệu công trình nghiên cứu liên quan kết hợp để phát triển xây dựng ứng dụng với mục đích thử nghiệm đánh giá hiệu mơ hình đề xuất Cấu trúc luận văn bố cục bao gồm phần mở đầu, kết luận 03 chương, cụ thể sau: Chương Giới thiệu tổng quan số thuật tốn phân nhóm Nghiên cứu sở lý thuyết mạng xã hội, liên quan mạng xã hội cấu trúc đồ thị, tính chất mạng xã hội tốn phân nhóm người dùng mạng xã hội Nghiên cứu, trình bày số thuật tốn phổ biến sử dụng để phân nhóm người dùng mạng xã hội như: phương pháp phân cụm truyền thống, giải thuật di truyền, giải thuật Girvan Newman, giải thuật tham lam Newman, giải thuật CNM (ClausetNewman-Moore) với khái niệm độ đo modularity, độ phức tạp thuật toán để đánh giá chất lượng phân nhóm thuật tốn Chương Thuật toán cải tiến INC(Incre-CommExtraction) Đề xuất cách tiếp cận xây dựng cấu trúc mạng xã hội dựa vào hành vi tương người dùng (các bình luận người dùng mạng xã hội Facebook) Giới thiệu thuật tốn INC để phân nhóm với mức độ phân hoạch chi tiết (tìm nhiều nhóm hơn) dựa thuật toán CNM áp dụng cho đồ thị mạng xã hội có trọng số Đánh giá độ phức tạp thuật toán chất lượng thuật toán dựa độ đo đề xuất 4 Chương Cài đặt chương trình, thực nghiệm, đánh giá Tiến hành xây dựng liệu thử nghiệm sử dụng công cụ Facebook API, tiến hành thu thập liệu bình luận người dùng tập 1500 trang facebook khác Cài đặt thuật tốn CNM đồ thị có trọng số, thuật toán INC áp dụng cho đồ thị đầu vào có trọng số Xây dựng chức hiển thị trực quan đồ họa kết phân nhóm người dùng Đánh giá kết đạt được: chất lượng phân nhóm người dùng, thời gian thực thi chương trình, số nhóm Chương 1: GIỚI THIỆU TỔNG QUAN VÀ MỘT SỐ THUẬT TỐN PHÂN NHĨM 1.1 Các mạng xã hội cấu trúc đồ thị 1.1.1 Giới thiệu khái quát mạng xã hội Trong thập kỉ qua có mối quan tâm ngày lớn với “kết nối” phức tạp xã hội đại Tâm điểm mối quan tâm ý tưởng mạng xã hội - mơ hình kết nối tập hợp vật, việc Trong chủ đề hội thảo bình luận phạm vi lớn mạng xã hội ngày xuất nhiều, theo David Easley Jon Kleinberg [10] Trong xã hội đại ngày nay, mạng xã hội trở thành nhu cầu thiếu người, coi sống ảo Ở người giao lưu, kết nối với nhiều bạn bè, nơi để trao đổi thông tin hay giải trí kênh cung cấp tin tức ngày 1.1.2 Mối liên hệ mạng xã hội cấu trúc đồ thị Cấu trúc mạng xã hội cấu tạo nên từ nút mạng liên kết nút mạng thực thể (có thể cá nhân, tổ chức quốc gia…) liên kết mối quan hệ thực thể (có thể mối quan hệ bạn bè, đồng nghiệp khách hàng ) Có nhiều kiểu liên kết mạng liên kết vơ hướng, liên kết có hướng (một chiều hai chiều)… Thông thường để biểu diễn mạng xã hội có hai dạng ma trận kề đồ thị, dạng đồ thị ưu tiên sử dụng nhiều tốn phân tích mạng 6 1.2 Một số loại mạng xã hội Mặc dù mơ hình mạng xã hội bạn bè biết đến nhiều nhất, nhiên có số mạng khác ví dụ điển hình cho mạng xã hội Một số kiểu mạng xã hội phổ biến: Mạng bạn bè Mạng điện thoại Mạng email Mạng cộng tác 1.3 Các tính chất mạng xã hội Trong mục tơi giới thiệu số tính chất phổ biến mạng xã hội giới thực Các tính chất quan trọng cho việc nghiên cứu, phân tích khai thác cấu trúc mạng xã hội với mục đích 1.3.1 Phân phối bậc 1.3.2 Cấu trúc nhóm 1.3.3 Độ đo trung gian 1.3.4 Phổ đồ thị 1.4 Phân nhóm mạng xã hội 1.4.1 Bài tốn phân nhóm Bài tốn: Phân nhóm mạng xã hội đưa danh sách nút mạng thuộc nhóm Đầu vào: Đồ thị mạng xã hội G = (V, E) gồm tập V có đỉnh: v1, v2, , tập E cạnh liên kết E = {(vi, vj)} Đầu ra: Tập nhóm C = {C1, C2, ,Cm} tập hợp đỉnh thuộc nhóm đó: Ci = {vi1, vi2, , vik} với i =1, 2, ,m 7 Mục tiêu toán từ mạng xã hội cho trước, phát cấu trúc nhóm nằm tìm hiểu mối liên hệ bên nhóm nhóm với nhau, mối liên hệ có ảnh hưởng đến cấu trúc tồn mạng xã hội 1.4.2 Ví dụ mạng xã hội phân nhóm Ví dụ mơ hình câu lạc karate Zachary đề xuất vào năm 1977 Đây mơ hình mạng xã hội thường sử dụng mô hình chuẩn để đánh giá thử nghiệm thuật tốn phát nhóm Ví dụ miêu tả thành phần có kích thước lớn mạng lưới cộng nhà khoa học làm việc viện Santa Fe (SFI) Ví dụ cuối ta xét đến mạng biểu diễn lồi cá heo sống Doubtful Sound, New Zealand phân tích Lusseau năm 2003 1.5 Các phương pháp phân cụm truyền thống 1.5.1 Phân cụm phân hoạch Những nghiên cứu ban đầu lĩnh vực khoa học máy tính để tìm kiếm nhóm đối tượng tương tự dựa mơ hình thống kê khai phá liệu Một phương pháp phổ biến số nghiên cứu sử dụng phương pháp phân cụm phân hoạch phân cụm với thuật toán k-means, phân cụm với mạng nơ ron [13] 1.5.2 Phân cụm phân cấp Phân cụm phân cấp số phương pháp phân nhóm phổ biến cho mạng xã hội Cho đồ thị với N đỉnh ma trận tương đương A nó, phương pháp phân cụm phân cấp gồm bước sau: Gán cho đỉnh N đỉnh nằm nhóm khác nhau, tức có N nhóm Tìm hai nhóm gần trộn chúng lại thành nhóm Tính tốn lại độ tương tự cụm cụm cũ Lặp lại bước thứ hai thứ ba tất đỉnh đặt vào nhóm Một lát cắt ngang phân cấp kết biểu diễn dạng biểu đồ dendrogram cho ta kết phân cụm cuối 1.5.3 Phân vùng đồ thị Trong khoa học máy tính, phân vùng đồ thị việc chia mạng thành nhóm có kích thước tương đương, số lượng cạnh nhóm cực tiểu Phương pháp phân vùng đồ thị phổ biến dựa việc lặp lặp phép phân chia đồ thị thành hai nhóm phân biệt 1.6 Các giải thuật di truyền 1.6.1 Giải thuật di truyền truyền thống Giải thuật di truyền dạng thuật toán tối ưu sử dụng khoa học di truyền chọn lọc tự nhiên Trong giới thực, cá thể lai ghép gen chúng để trì liệu gen sinh hệ Đôi khi, hệ chứa gen bị đột biến Nếu nhiễm sắc thể lai ghép đột biến hệ tạo liệu gen thích nghi tốt với mơi trường hệ sống sót gen khơng thích nghi tốt bị loại bỏ Trong giải thuật di truyền, thay cho việc phải thử kết hợp tồn phương án khơng gian tìm kiếm, mẫu tốt tạo từ phương án tốt mẫu khứ 1.6.2 Giải thuật di truyền phân nhóm Falkenauer Có nhiều kỹ thuật đặc biệt tập trung vào tốn phân nhóm phân cụm sử dụng giải thuật di truyền Giải thuật di truyền phân nhóm tiến hóa giải thuật di truyền truyền thống, chúng tập trung vào mục cá thể đơn việc đưa chúng vào nhóm nhóm Ý tưởng đề xuất Emanuel Falkenauer [14] để phát triển giải pháp cho toán phức tạp phân cụm phân vùng mà tập mục cần phân chia vào nhóm theo cách tối ưu việc tạo đặc tả nhóm tập mục dạng gen Các ví dụ cho loại tốn dạng là: tốn xếp thùng, toán cân luồng, phân cụm dựa độ đo khoảng cách mà giải thuật di truyền cổ điển không đáp ứng yêu cầu tốn 1.6.3 Giải thuật di truyền phân nhóm Tasgin Các giải thuật di truyền phù hợp với nhiều tốn tối ưu Phân nhóm mạng số dạng toán u cầu tìm cấu trúc nhóm tốt mạng cách cực đại hóa giá trị modularity mạng Trong cơng trình Mursel Tasgin Haluk Bingol [15], tác giả nghiên cứu giải thuật di truyền để phân nhóm 10 1.7 Giải thuật Girvan-Newman 1.7.1 Giới thiệu độ đo modularity Có nhiều thuật tốn để chia mạng thành nhóm Hầu hết thuật toán hoạt động tốt liệu nhân tạo liệu thực tế mà nhóm biết trước Tuy nhiên, có câu hỏi đặt để đánh giá chất lượng cấu trúc nhóm tìm thấy thuật toán làm việc liệu thực tế mà chưa biết trước nhóm Một khái niệm mà biết nhóm tốt cạnh bên nhóm dày đặc Một nút kết nối tới nhiều nút khác nhóm kết nối tới nút khác nhóm Một độ đo định nghĩa Girvan Newman [2, 3] độ đo modul hóa Q sử dụng cho việc đánh giá chất lượng nhóm 1.7.2 Thuật tốn phân chia nhóm Girvan-Newman Như đề cập trên, tốn phát nhóm tập trung vào việc từ đồ thị mạng xã hội, tìm cụm, nhóm có mối liên hệ chặt chẽ với Qua trực quan dễ dàng tìm nhóm có độ tập trung cao, khơng phải nhóm hình thành mối liên hệ chặt chẽ dễ thấy, số nhóm hình thành ẩn Điều quan trọng phải tìm phân phối cạnh nút, từ đưa nhóm tồn mạng xã hội [2] Thay việc tìm kiếm nút mạng đồ thị có độ gắn kết cao với nhau, phương pháp phát nhóm thuật tốn phân chia đưa cách giải hữu hiệu Để tránh khuyết điểm phương pháp phân nhóm phân cấp, thay cố gắng để xây dựng biện pháp tìm cạnh trung tâm nhóm, tìm cạnh trung tâm nhất, cạnh gọi tên 11 cạnh nhóm Thuật tốn điển hình thuật tốn chia thuật toán Girvan-Newman [2, 3] 1.8 Giải thuật CONGA Thuật toán CONGA Gregory cải tiến từ thuật toán Girvan-Newman nhằm mục đích giải vấn đề chồng chéo nhóm [17] Dựa ý tưởng thuật toán Girvan-Newman, tác giả đề xuất thêm ý tưởng phép chia đỉnh thành nhiều phần khác nhau, để phần đỉnh chia xuất nhóm Phép chia đỉnh phù hợp với ý tưởng thuật toán Girvan-Newman lẽ, việc loại bỏ cạnh, việc phân chia đỉnh làm cho nhóm lớn chia thành nhóm 1.9 Giải thuật CNM (Clauset-Newman-Moore) Thuật toán CNM đề xuất Clauset, Newman Moore [5] phương pháp phân cụm phân cấp tích tụ Thuật tốn sử dụng độ đo mơ đun hóa Q đề xuất bở Girvan Newman giới thiệu mục 1.7 để làm độ đo cho việc tối ưu hóa cấu trúc nhóm Một giá trị cao Q thể phép phân hoạch nhóm tốt cho mạng tại, nhiệm vụ CNM tìm giá trị Q cao tập ứng cử Việc tìm giá trị Q cực đại tồn cục tập phương án khó hay nói cách khác tốn nhiều thời gian (không khả thi với thời gian thực), CNM, tác giả đề xuất kỹ thuật tối ưu hóa xấp xỉ hay gọi phương pháp tối ưu tham lam 12 1.10 Kết luận chương Trong chương tơi trình bày kiến thức tổng quan mạng xã hội, loại mạng tính chất mạng xã hội, cấu trúc nhóm mạng xã hội, ý nghĩa việc phân nhóm mạng xã hội số ví dụ mạng xã hội tiêu biểu thực tế Và trình bày số thuật toán sử dụng phổ biến cho toán phân nhóm mạng xã hội, từ thuật tốn phân cụm truyền thống phân cụm phân hoạch, phân cụm phân cấp, phân vùng đồ thị, giải thuật di truyền theo cách tiếp cận truyền thống, giải thuật di truyền cải tiến theo tiếp cận Falkanuer, Tasgin Tiếp đến thuật toán họ Girvan-Newman Girvan-Newman gốc, thuật toán CONGA, thuật toán CNM Trong thuật tốn CNM tỏ vượt trội hiệu nên sẽ lựa chọn cho việc phát triển thuật toán đề xuất chương luận văn 13 Chương 2: THUẬT TOÁN CẢI TIẾN INC (INCRE-COMMEXTRACTION) 2.1 Giới thiệu Như trình bày chương 1, có nhiều thuật tốn sử dụng vào việc phân nhóm người dùng mạng xã hội số tiêu biểu có thuật tốn CNM Nhưng vấn đề thuật toán việc cực đại hố giá trị modun hố Q khơng xác định mạng có cấu trúc nhóm, điều nhóm clique tức đỉnh nhóm phải có cạnh nối Vì để nhận giá trị Q cực đại thuật tốn kết thúc thường cho nhóm có kích thước lớn có số nhóm nhỏ Từ hạn chế đó, thuật tốn INC đưa cách tiếp cận khác để giải vấn đề lặp để trích xuất nhóm cần quan tâm Thuật tốn INC bắt đầu với toàn mạng lớn cho số nhóm vòng lặp, sau ta tách nhóm khỏi mạng thực đệ quy chia nhỏ nhóm kích thước nhóm đạt u cầu người dùng Trong chương áp dụng kỹ thuật để đánh giá tập liệu thực tế thu thập mạng xã hội Facebook 2.2 Mơ hình hóa liệu Theo thuật tốn INC tơi thu thập tập liệu từ mạng xã hội Facebook để xây dựng mạng xã hội dựa vào hành vi tương tác người dùng Sau bước để xây dựng mạng xã hội dựa hành vi tương tác người dùng: 14 - Sau thu thập bình luận người dùng tường Facebook cho trước ta tiến hành rà soát tách người dùng đơn cách trích rút theo tên FacebookID - Điều kiện để xác định người dùng có điểm chung người tham gia bình luận hai tường Facebook - Tiếp theo ta xây dựng tập liệu dạng ma trận vuông đối xứng M có kích thước trùng với số lượng tường Facebook thu thập - Tiến hành chuyển đổi liệu sang dạng đồ thị vô hướng G = (V, E) 2.3 Thuật tốn cải tiến INC Mục đích mà thuật toán cải tiến đề xuất để phân chia nhóm lớn thành nhóm có mối quan tâm giống cách xét đồ thị chứa đỉnh nằm nhóm lớn khơng xét mối quan hệ với nhóm lớn khác Chính thuật tốn làm gia tăng việc trích xuất nhiều nhóm có ý nghĩa vòng lặp nên ký hiệu INC 2.3.1 Nội dung thuật toán Thuật toán xây dựng dạng đệ quy Ở đầu vòng lặp, thuật tốn gọi thủ tục phân nhóm theo thuật tốn CNM với nhóm kết CNM tìm ra, thuật tốn INC xác định xem nhóm nhóm cuối (khơng phân chia thêm nữa) gọi lại thủ tục đệ quy cho nhóm để phân chia tiếp nhóm lớn Theo cách này, chia nhỏ nhóm với thuật tốn CNM chừng Khi thuật tốn CNM khơng thể chia nhỏ nhóm thuật toán INC xác định đồ thị đầu vào nhóm kết 15 Thuật tốn INC sau: Đầu vào: Đồ thị G =(V, E), tham số s: cận kích thước nhóm kết Đầu ra: Tập nhóm C = {c1, c2, , ck}, với |C| = k: số nhóm tìm ci, i =1 k nhóm tìm function INC (Gr, s) // Thủ tục đệ quy thuật toán C' CNM(G); // Dò tìm nhóm với thuật tốn CNM If |C'| = then Đặt c1 nhóm C'; C return; // Thoát khỏi thủ tục đệ quy c' c1; // Thêm nhóm c1 vào tập kết C ; for each nhóm ci if |ci| = then c' c' C' ci; // đưa ci vào chóm chứa nhóm đơn 10 else if |ci| ≤ s then C ci; // Thêm nhóm ci vào tập kết 11 C 12 else 13 Gi 14 INC(Gi, s); // Gọi đệ quy thuật toán G(V(ci), E(ci)); // Xây dựng đồ thị từ ci 15 if |c'| ≠ then C C c'; 16 2.3.2 Độ phức tạp thuật tốn Theo nghiên cứu trình bày chương 1, thuật tốn CNM có độ phức tạp O(mdlogn) cho đồ thị tổng quát (m số cạnh, n số đỉnh d độ sâu dendrogram) với đồ thị thưa thời gian thực thi O(nlog2n) Ta tiến hành đánh giá độ phức tạp thuật toán INC sau: đặt độ phức tạp thuật toán INC T(n) Các nhóm tìm thấy vòng đệ quy không cân trường hợp xấu Thời gian thực thi thuật toán CNM nlog2n với đồ thị thưa, ta có cơng thức quy nạp cho T(n) sau: T(n) = nlog2n + T(n-1) = nlog2n + nlog2n + T(n-2) = = n2log2n + T(1) Như độ phức tạp thuật toán INC O(n2log2n) Do trường hợp đồ thị tổng quát có độ phức tạp INC T(n) = O(mndlogn), ta sử dụng CNM làm thuật toán vòng đệ quy Nếu gặp trường hợp xấu thủ tục đệ quy INC gọi CNM n lần nhiên qua thực nghiệm số nhỏ nhiều so với n thuật tốn chạy nhanh Trong trường hợp nhóm cân (đa số trường hợp), tức tối đa p nhóm tìm thấy thuật tốn vòng đệ quy nhóm có n/p thành viên Khi đó, với đồ thị thưa, thuật tốn có độ phức tạp (logn/logp) * n * log2n với đồ thị thưa Với p ≥2 ta có T(n) = O(nlog3n) 2.3.3 Độ đo chất lượng phân nhóm thuật tốn Như tơi trình bày trên, độ đo mođun hóa Q nhiều khơng phản ánh cấu trúc nhóm, luận văn tơi sử 17 dụng độ đo tính mật độ giới thiệu Zhang et al (2009) [28] để tiến hành đánh giá chất lượng phân nhóm thực nghiệm chương Đặt li số cạnh bên lo số cạnh bên đồ thị Gi(Vi, Ei) cạnh bên cạnh có hai đỉnh nằm đồ thị Gi, cạnh bên ngồi cạnh có đỉnh nằm đỉnh nằm Gi Giả sử ni = |Vi|, bậc trung bình bên đồ thị Gi 2li/ni bậc trung bình bên ngồi Gi lo/ni Khi đó, độ đo mơ đun hóa mật độ D phép phân chia đồ thị G thành tập nhóm C = {c1, c2, , ck} tính tổng bậc trung bình bên trừ bậc trung bình bên ngoài: | | ∑ 2.4 Kết luận chương Trong chương 2, tơi trình bày chi tiết thuật toán cải tiến INC Thuật toán thực đệ quy dựa thuật tốn CNM để trích rút nhiều nhóm với chất lượng tốt thuật tốn CNM dựa độ đo mơ đun hóa mật độ độ phức tạp thuật toán cỡ khoảng O(nlog3n) Thuật tốn INC trích rút nhiều nhóm có ý nghĩa mà thân thuật tốn CNM khơng thể làm điều CNM tìm giá trị Q cực đại nên để thỏa mãn điều này, thường cho nhiều nhóm với kích thước lớn, điều không đáp ứng nhu cầu thực tế cần phân chia nhóm có sở thích gần với Để đánh giá thuật tốn INC, chương tơi tiến hành thu thập liệu thực từ mạng xã hội Facebook cài đặt, thực nghiệm thuật toán INC liệu này, đánh giá kết đạt chất lượng phân chia nhóm, số nhóm tìm thời gian phân nhóm 18 Chương 3: CÀI ĐẶT CHƯƠNG TRÌNH, THỰC NGHIỆM VÀ ĐÁNH GIÁ 3.1 Xây dựng liệu Tôi thu thập tập liệu gồm 1500 tài khoản Facebook để tiến hành thực nghiệm Các tài khoản Facebook fanpage, nhóm tài khoản cá nhân thiết lập chế độ công cộng Những liệu thu thập theo cách thủ công bao gồm tên Facebook ID, lưu trữ SQL Server 2017 3.1.1 Thu thập tập liệu từ mạng xã hội với Facebook API Với tập liệu lớn sử dụng công cụ cung cấp Facebook Facebook API [26] để thu thập bình luận người dùng tường tài khoản Facebook cách tự động 3.1.2 Tiền xử lý liệu xây dựng cấu trúc mạng xã hội Trong q trình thu thập liệu, có số tài khoản Facebook cài đặt không cho phép truy cập liệu thơng qua Facebook API để đảm bảo tập liệu có ý nghĩa, tơi loại bỏ tường Facebook số tường Facebook có 100 người tham gia bình luận Áp dụng mơ hình giới thiệu mục 2.2 tơi tiến hành xây dựng liệu đồ thị mạng xã hội xuất tập tin có tên FacebookGraphWeight.txt để làm đầu vào cho thuật tốn INC phân nhóm người dùng 19 3.2 Các chức chương trình Với liệu thực nghiệm thu thập với nghiên cứu chương trước tiến hành cài đặt ứng dụng để đánh giá kết Dưới chức ứng dụng: 3.2.1 Tự động thu thập xây dựng liệu Ứng dụng xây dựng ngôn ngữ C#.net với Visual Studio 2017 hệ quản trị CSDL SQL Server 2017 kết hợp với thư viện Facebook API cho phép truy xuất thông tin người dùng tường Facebook 3.2.2 Phân nhóm với thuật tốn INC CNM Tôi sử dụng thư viện mã nguồn mở SNAP [23] để viết ứng dụng chạy Visual C++ Console cho mục đích nghiên cứu thuật tốn phân nhóm Nhưng thư viện cài đặt CNM áp dụng cho đồ thị vô hướng trọng số tơi phát triển CNM cho đồ thị vơ hướng có trọng số theo u cầu thuật tốn INC trình bày chương 3.2.3 Biểu diễn trực quan kết phân nhóm với thuật toán INC Từ tập tin kết dạng JSON xây dựng ứng dụng để biểu diễn trực quan kết phân nhóm ASP.NET với C# sử dụng phần mềm mã nguồn mở D3 [21] để vẽ biểu đồ dendrogram Tập tin JSON nghiên cứu kỹ lưỡng xuất tương ứng vòng lặp đệ quy thuật tốn INC để việc biểu diễn xác 3.3 Các kết thực nghiệm đánh giá Với tập liệu thu thập 3.1 tiến hành thực nghiệm đánh giá kết thuật toán INC 20 3.3.1 Thời gian thực thi thuật toán Sau thực thi thuật toán với tập liệu đồ thị 1500 đỉnh ta kết sau: thời gian chạy thuận toán INC 0.24 (s), CNM 0.18 (s) Với kết thu thấy tốc độ thuật tốn INC so với CNM khơng khác nhiều 3.3.2 Số lượng nhóm tìm Qua q trình thực nghiệm tập liệu thu thập, kết số lượng nhóm tìm bởi: thuật tốn INC 321 nhóm so với thuật tốn CNM 92 nhóm Như ta thấy cải thiện đáng kể thuật toán INC 3.3.3 Chất lượng phân chia nhóm Đối với chất lượng phân chia nhóm kết thu sau thực nghiệm cho thấy vượt trội thuật toán INC, cụ thể chất lượng dò tìm nhóm bởi: thuật tốn INC 2480.094 so với thuật toán CNM 1212.408 3.3.4 Đánh giá trực quan biểu đồ kết Dựa vào biểu đồ dendrogram biểu diễn kết phân nhóm thấy chất lượng phân nhóm tốt, nút bên biểu diễn nhóm mức khác nút tường Facebook Kết phân nhóm theo thuật tốn INC là nhóm mức cuối, kết phân nhóm theo thuật tốn CNM nhóm mức thứ hai * Đánh giá chung: Mặc dù thời gian thực thi thuật toán INC chậm so với thuật toán CNM (khơng đáng kể) bù lại thuật tốn INC tìm thấy số lượng nhóm nhiều nhiều chất lượng nhóm tốt 21 thuật tốn CNM xét độ đo modun hố mật độ Ngồi giá trị s tăng dần số nhóm chất lượng nhóm giảm dần Kết trực quan cho thấy việc phân nhóm thuật tốn INC xác 3.4 Kết luận chương Trong chương 3, trình bày chi tiết bước tiến hành thực nghiệm, đánh giá kết thuật toán INC cải tiến so với thuật tốn CNM, gồm có: bước xây dựng liệu để tiến hành thực nghiệm với Facebook API, cài đặt thuật toán INC CNM với đồ thị mạng xã hội vơ hướng có trọng số cạnh, vẽ biểu đồ trực quan kết phân chia nhóm Các kết thực nghiệm phân tích kỹ lưỡng chương Qua phân tích kết số liệu trực quan cho thấy thuật tốn INC có thời gian thực thi nhanh, tìm nhiều nhóm CNM chất lượng phân chia nhóm tốt so với CNM INC áp dụng cho mơ hình tìm kiếm nhóm mạng xã hội thực tế dựa mối quan tâm người dùng với mối liên hệ cao 22 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận Mạng xã hội tốn phân nhóm mạng xã hội vấn đề nhiều nhà nghiên cứu quan tâm thời đại Các tốn phân nhóm ứng dụng rộng rãi nhiều lĩnh vực đời sống kinh tế, trị, xã hội, khoa học công nghệ, Trong khuôn khổ luận văn, tơi nghiên cứu trình bày kiến thức tổng quan mạng xã hội, toán phân nhóm mạng xã hội thuật tốn phổ biến phân nhóm, ưu nhược điểm thuật toán Trên sở thuật toán nghiên cứu, tơi đề xuất thuật tốn với tên gọi INC phát triển dựa thuật toán CNM với tư tưởng đệ quy để tìm thêm nhiều nhóm có ý nghĩa nhóm lớn CNM tạo với chất lượng nhóm hẳn so với CNM Đồ thị mạng xã hội xây dựng dựa hành vi tương tác người dùng, tức có tính động cao, khơng nghiên cứu trước tiến hành mạng tĩnh với quan hệ bạn bè, theo dõi Mạng xã hội xây dựng INC đồ thị vô hướng có trọng số Trọng số cạnh thể độ mạnh mối quan tâm người dùng hai đỉnh đồ thị Trong khuôn khổ luận văn, mạng xã hội nghiên cứu Facebook - mạng xã hội sử dụng phổ biến Việt Nam giới Các đỉnh mạng xã hội tường Facebook (có thể đại diện cho cá nhân, nhóm, tổ chức, cơng ty, tập đoàn hoạt động lĩnh vực khác nhau) Việc dò tìm nhóm có ý nghĩa lớn thực tiễn, toán tiếp thị sản phẩm tới thành viên nhóm quan tâm tới sản phẩm 23 Qua đánh giá kết thực nghiệm, tơi nhận thấy tính khả quan cao thuật tốn INC với việc dò tìm nhiều nhóm với chất lượng tốt thời gian thực nhanh Phân tích trực quan kết cho thấy việc chia nhóm phù hợp với thực tế Hướng phát triển đề tài Mặc dù cố gắng với thời gian thực luận văn không nhiều, khối lượng kiến thức cần nghiên cứu nhiều nên luận văn tồn hạn chế cần khắc phục thời gian tới, cụ thể như: - Thu thập liệu phong phú hơn: thu thập nhiều mạng xã hội khác Facebook, Twitter kích thước mạng lớn hơn, lượng bình luận thu thập vài năm để tăng độ xác (trong luận văn tơi thu thập bình luận từ năm 2018 trở đi) - Đánh giá thuật tốn với nhiều thuật tốn khác ngồi CNM, nghiên cứu cải tiến để tăng tốc độ chất lượng phân nhóm thuật tốn - Nghiên cứu thêm độ đo chất lượng cách đánh trọng số hợp lý cho mạng xã hội để làm tăng chất lượng dò tìm nhóm ... mạng xã hội, cấu trúc nhóm mạng xã hội, ý nghĩa vi c phân nhóm mạng xã hội số ví dụ mạng xã hội tiêu biểu thực tế Và trình bày số thuật toán sử dụng phổ biến cho tốn phân nhóm mạng xã hội, từ... thiệu tổng quan số thuật tốn phân nhóm Nghiên cứu sở lý thuyết mạng xã hội, liên quan mạng xã hội cấu trúc đồ thị, tính chất mạng xã hội tốn phân nhóm người dùng mạng xã hội Nghiên cứu, trình bày... thập mạng xã hội Facebook 2.2 Mơ hình hóa liệu Theo thuật tốn INC tơi thu thập tập liệu từ mạng xã hội Facebook để xây dựng mạng xã hội dựa vào hành vi tương tác người dùng Sau bước để xây dựng mạng