Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)

62 671 4
Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)Một số thuật toán tìm Core và ứng dụng trong phân tích mạng xã hội (LV thạc sĩ)

ii LỜI CAM ĐOAN Tôi xin cam đoan: Luận văn thạc sỹ Khoa học máy tính “Một số thuật toán tìm core ứng dụng phân tích mạng hội” thực trình bày hướng dẫn TS Trương Hà Hải, Trường Đại học Công nghệ Thông tin Truyền thông – Đại học Thái Nguyên công trình nghiên cứu hoàn toàn trung thực, không vi phạm điều Luật Sở hữu trí tuệ Pháp luật Việt Nam Nếu sai, hoàn toàn chịu trách nhiệm trước Pháp luật Tất báo, khóa luận, tài liệu, công cụ phần mềm tác giả khác sử dụng lại khóa luận dẫn tường minh tác giả có danh mục tài liệu tham khảo Thái Nguyên, ngày tháng Tác giả Đỗ Khắc Hoàn năm 2017 iv MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN iii MỤC LỤC iv DANH MỤC CÁC BẢNG vi DANH MỤC CÁC HÌNH vii MỞ ĐẦU CHƯƠNG CƠ SỞ LÝ THUYẾT ĐỒ THỊ MẠNG HỘI 1.1 Một số khái niệm liên quan đến đồ thị 1.1.1 Định nghĩa đồ thị [1] 1.1.2 Các loại đồ thị 1.1.3 Các khái niệm liên quan 1.2 Một số khái niệm liên quan mạng hội 10 1.2.1 Phân tích cấu trúc mạng hội 11 1.2.2 Biểu diễn độ phânmạng hội đồ thị 19 1.3 Một số khái niệm Core 25 1.3.1 Khái niệm Core, k-core 25 1.3.2 Tính chất Core [7] 26 CHƯƠNG MỘT SỐ THUẬT TOÁN NHANH TÌM K-CORE TRONG MẠNG HỘI 29 2.1 Thuật toán tìm Cores [7] 29 2.1.1 Mô tả thuật toán 30 2.1.2 Đánh giá độ phức tạp thuật toán 35 2.2 Thuật toán tìm p-core [8] 36 2.2.1 Hàm đơn điệu p core 36 2.2.2 Một số ví dụ hàm đơn điệu p 36 2.2.3 Core tổng quát tính chất 37 2.2.4 Thuật toán tìm p-core 38 2.3 Thuật toán tìm k-core địa phương [10] 43 2.3.1 Mô tả thuật toán 44 v 2.3.2 Thuật toán k-core địa phương 46 CHƯƠNG ỨNG DỤNG CỦA CORE TRONG PHÂN TÍCH MẠNG HỘI 50 3.1 Mô tả toán phân tích mạng mạng hội 50 3.2 Phân tích mạng hội thuật toán k-core địa phương 51 3.2.1 Đặt toán 51 3.2.2 So sánh thuật toán địa phương với core core lân cận 51 3.3 So sánh hệ số phân nhóm thuật toán k-core 55 KẾT LUẬN 62 TÀI LIỆU THAM KHẢO 63 MỞ ĐẦU Từ kỷ 20, lý thuyết đồ thị trở nên phổ biến ứng dụng rộng rãi nhiều khía cạnh đời sống sinh học, hội học, công nghệ thông tin, mạng thông tin,…Vào năm 1930 toán phân tích mạng hội đời trở thành chủ đề quan trọng hội học Trong thời đại bùng nổ thông tin nay, số lượng kích thước mạng hội trực tuyến tăng lên không ngừng Vì vậy, việc dự đoán liên kết mạng hội trực tuyến nhu cầu thiết thời điểm nay, ứng dụng quan trọng cộng đồng lĩnh vực đời sống hội, khoa học máy tính, sinh học, … Mạng hội mô hình mạng có tính chất hội cấu tạo đỉnh cung, đỉnh liên kết với nhiều cung, thể mối quan hệ cụ thể Mỗi đỉnh thực thể mạng, thực thể cá nhân, tổ chức hay quốc gia bất kỳ… Các thực thể mạng tương tác với thông qua liên kết Các liên kết quan hệ bạn bè, đồng nghiệp, quan hệ đối đầu thù địch hay trao đổi tài chính, giao dịch… Nhu cầu phân tích mạng hội sớm từ năm 1930 ngày trở thành chủ đề quan trọng Đặc biệt với phát triển mạng hội sản sinh khối lượng liệu khổng lồ, toán phân tích mạng hội trở thành toán phân tích mạng miền liệu lớn Đây toán khó nhận nhiều quan tâm nhà khoa học Một mối quan tâm lớn mạng hội phân tích xác định nhóm gắn kết (cohesive groups) mạng Một số khái niệm đưa để mô tả tính kết hợp nhóm này, là: cliques, n–cliques, n–clans, n–clubs, k–plexes, k–cores,… Bài toán tìm nhóm kết hợp toán NP- hard Khái niệm k-lõi (k-core) Seidman đưa vào năm 1983 [7] cách phân tách mạng lớn thành mạng nhỏ để dễ xử lý Các thuật toán k-core đưa để tìm nhóm nhỏ mạng phân chúng thành mạng nhỏ hơn, đến đạt kết nhóm nhỏ Đã có nhiều thuật toán đề xuất để tìm k-core, có thuật toán hiệu quả, có độ phức tạp đa thức [3, 4, 5, 6, 7] Với ứng dụng thực tế ý nghĩa mạng hội, thời đại bùng nổ thông tin nay, số lượng kích thước mạng hội trực tuyến tăng lên không ngừng Vì vậy, việc phân tích mạng hội nhu cầu thiết thời điểm nay, ứng dụng quan trọng cộng đồng lĩnh vực đời sống hội, khoa học máy tính, sinh học, kinh tế, trị,…Nội dung luận văn nghiên cứu số thuật toán tìm k-core ứng dụng k-core phân tích mạng hội, từ áp dụng giải toán thực tế Thuật toán k-core đưa để phân tích cấu trúc tính toán nhóm nhỏ mạng phân chúng thành mạng nhỏ hơn, đến đạt kết nhóm nhỏ Nhưng nhóm mạng có mối liên kết chặt chẽ với thông qua nút mạng nhóm Ngoài thuật toán kcore sử dụng để mô tả lưới mạng lưới, cách tìm mật độ mạng trực tiếp, chuỗi đỉnh xác định số lượng nút đồ thị Hình 1: Mô hình k-core phân rã thành k-core nhỏ khác phác thảo đồ thị nhỏ [7] Xác định khái niệm k-core số phương pháp tìm kiếm đơn giản dễ thực tính toán dựa kiến thức đỉnh đồ thị, thuật toán kcore địa phương, thuật toán Trie Data structure, thuật toán phân hủy Cho thấy mối quan hệ toán với việc tìm mạng hội thuật toán k-core Kết đạt cho thấy hiệu Hình 2: Độ phân rã K-core phân thuật toán cấu trúc đồ thị với tích mạng hội [9] ứng dụng mạng hội Luận văn tập trung tìm hiểu tổng quan kiến thức có liên quan, sở lý thuyết như: Cấu trúc mạng, liên kết mạng hội Một số thuật toán tìm core, ứng dụng phân tích mạng hội Luận văn trình bày thành phần bao gồm: phần mở đầu, phần nội dung phần kết luận Phần mở đầu: Giới thiệu khái quát đề tài, mục tiêu, đối tượng, phạm vi nghiên cứu, ý nghĩa khoa học hội mang lại thông qua việc giải vấn đề nêu đề tài Phần nội dung: Chương 1: Cơ sở lý thuyết đồ thị mạng hội Nội dung chương: Trình bày số kiến thức tổng quan liên quan đến nội dung đề tài Chương 2: Một số thuật toán nhanh tìm k-core mạng hội Tìm hiểu số thuật toán tìm Cores phân tích mạng hội, mổ tả thuật toán, đánh giá độ phức tạp thuật toán Chương Ứng dụng core phân tích mạng hội CHƯƠNG CƠ SỞ LÝ THUYẾT ĐỒ THỊ MẠNG HỘI Phân tích mạng hội xem mối quan hệ hội lý thuyết mạng lưới bao gồm nút mối quan hệ (còn gọi cạnh, liên kết, kết nối) Nút cá nhân mạng lưới, mối quan hệ mối liên kết với cá nhân Kết cấu trúc dựa đồ thị phức tạp Nội dung chương trình bày khái niệm sở đồ thị, loại đồ thị, số khái niệm phân tích mạng hội khái niệm thuật toán tìm core để làm tiền đề trình bày chương 1.1 Một số khái niệm liên quan đến đồ thị Lý thuyết đồ thị lĩnh vực nghiên cứu có từ lâu có nhiều ứng dụng đại Những tư tưởng lý thuyết đồ thị đề xuất vào năm đầu kỷ XVIII nhà toán học người Thụy Sỹ - Leonhard Euler 1.1.1 Định nghĩa đồ thị [1] Đồ thị cấu trúc rời rạc bao gồm đỉnh cạnh nối đỉnh Người ta thường ký hiệu đồ thị G = (V, E), V tập đỉnh (Verterx), E tập ác cạnh (Edge) Có thể coi E tập cặp (u, v) với u v hai đỉnh V Một số hình ảnh đồ thị: đồ mạng giao thông đồ mạng Internet đồ mạng hội Hình 1.1: Ví dụ mô hình đồ thị [1] 1.1.2 Các loại đồ thị Có thể phân loại đồ thị đặc tính số lượng tập cạnh E: Cho đồ thị G = (V, E) Định nghĩa cách hình thức G gọi đơn đồ thị hai đỉnh u, v V có nhiều cạnh E nối từ u tới v G gọi đa đồ thị hai đỉnh u, v V có nhiều cạnh E nối từ u tới v (Hiển nhiên đơn đồ thị đa đồ thị) G gọi đồ thị vô hướng cạnh E không định hướng, tức cạnh nối hai đỉnh u, v cạnh nối hai đỉnh v, u Hay nói cách khác, tập E gồm cặp (u, v) không tính thứ tự (u, v) (v, u) G gọi đồ thị có hướng cạnh E có định hướng, có cạnh nối từ đỉnh u tới đỉnh v chưa có cạnh nối từ đỉnh v tới đỉnh u Nói cách khác tập E gồm cặp (u, v) có tính thứ tự: (u, v) ≠ (v, u) Trong đồ thị có hướng, cạnh gọi cung Đồ thị vô hướng coi đồ thị có hướng ta coi cạnh nối hai đỉnh u, v tương đương với hai cung (u, v) (v, u) Đồ thị Đơn đồ thị Có hướng Vô hướng Đa đồ thị 5 4 5 Hình 1.2: Phân loại đồ thị [1] Một số dạng đồ thị đơn vô hướng đặc biệt: Đồ thị đầy đủ Kn (compelte graph): Là đơn đồ thị vô hướng mà hai đỉnh tồn cạnh nối Đồ thị vòng Cn (cycle graph): Là đơn đồ thị vô hướng G = (V, E) với tập đỉnh V + {1, 2, 3,…, n} tập cạnh E = {(1, 2); (2, 3); ….; (n – 1, n); (n, 1)} Đồ thị bánh xe Wn (wheel graph): đơn đồ thị vô hướng thu từ đồ thị Cn-1 cách thêm đỉnh n nối với n-1 đỉnh đồ thị Cn-1 Đồ thị hai phía Km, n (bipartite graph): đồ thị có tập đỉnh phân hoạch thành hai tập không giao V=X  Y cho cạnh nối đỉnh thuộc X với đỉnh thuộc Y K3 K4 K5 C3 C4 C5 W6 W5 W4 X K4,3 Y Hình 1.3: Các dạng đồ thị đặc biệt [1] 1.1.3 Các khái niệm liên quan Cho đồ thị G = (V, E): có tập đỉnh V = {1, 2, 3, , n} tập cạnh E = {e1, e2, …, en} cấu trúc rời rạc, tức tập V E tập hữu hạn, tập đếm được, có nghĩa ta đánh số thứ tự 1, 2, cho phần tử tập V E Hơn nữa, đứng phương diện người lập trình cho máy tính ta quan tâm đến đồ thị hữu hạn (V E tập hữu hạn), không thích nói tới đồ thị, ta hiểu đồ thị hữu hạn b a c f e d G1 G2 Hình 1.4: Các khái niệm liên quan đến đồ thị [1] Cạnh (edge) Nếu (u, v) cặp đỉnh thuộc E nói có cạnh nối u v Khi v gọi kề u Bậc đỉnh Gọi bậc đỉnh đồ thị vô hướng số cạnh liên thuộc với đỉnh kí hiệu deg(v) Bán bậc đỉnh Bậc (vào) đỉnh đồ thị có hướng số cạnh đồ thị (vào) đỉnh kí hiệu deg+(v) hay deg-(v) Ví dụ hình 1.4 đỉnh G1 có bán bậc vào 1: hay deg (2)=1 bán bậc 2: deg2 (2) = Đường (path) Một đường từ đỉnh u đến đỉnh v đồ thị G dãy đỉnh từ u1, u2,…, ui Trong v có cạnh (u, u1), (u1, u2), …, (ui, v) ∈ E, i số lượng cung đường gọi độ dài đường Đường đơn Một đường đơn đồ thị đường mà cạnh lặp lại Chu trình (cycle) Một chu trình đồ thị G đường đơn có đỉnh đầu đỉnh cuối trùng Ví dụ hình 1.2 (Đơn đồ thị vô hướng ta có): - Đường đi: a bcfebc - Đường đơn: abcfeb 47 minh mối quan hệ với k-core xóa lân cận Một k-core địa phương thu cách đệ quy loại bỏ tất mức độ lân cận liên quan đến k, tất đỉnh đồ thị lại có mức độ k tham gia lân cận cộng đồng Ta phát triển thuật toán cho địa phương phân hủy k-core Trong thuật toán đầu vào đồ thị G k; đầu địa phương k-core đồ thị Trong bước 2, chương trình chạy thỏa mãn điều kiện bước 10, có nghĩa k-core địa phương đạt đến điểm cố định Kể từ k-core địa phương dựa đồ thị khu phố, bước ta duyệt đỉnh đồ thị lần thời gian; sau xây dựng mạng khu phố H Mỗi mức độ cộng đồng địa phương tính cách tìm thành phần kết nối địa phương Vì bước thứ tự mức độ cộng đồng địa phương |EC| nhỏ p, tất cạnh có đỉnh v kết nối với đỉnh thành phần kết nối địa phương đánh dấu Trong bước ta loại bỏ nhãn tất cạnh Các cạnh đánh dấu hai lần trở lên; ta không cần phải đếm số lượng cách đánh dấu loại bỏ dựa hàm Boolean cạnh (đánh dấu không) Khi đồ thị G’ không thay đổi nữa, đảm bảo đỉnh không thỏa mãn định nghĩa k-core địa phương; điểm cố định đạt được; tất đỉnh đồ thị G’ thuộc k-core địa phương Thuật toán 2.5: Phát lân cận p-core đồ thị Đầu vào: Cho đồ thị G (V,E), p Đầu ra: KE(p)  G , KE(p)  Q lân cận p-core đồ thị 1) G'  G; 2) repeat 3) for each v 𝜖 V(G') 4) H  NG’(v) 5) 6) 7) 8) for each Ej  H if |vEj|< p then for u  V(Ej) mark(v, u) 48 9) E(G')  {(v,u)  E(G')|(v,u)} // không đánh dấu 10) until G' //Không thay đổi 11) return KE(p)  G Trong hình 2.6 ví dụ thuật toán Khi ta cố gắng để tìm thấy địa phương đồ thị core, ta bắt đầu duyệt với đỉnh A: từ mạng vùng lân cận, thành phần kết nối địa phương thu thập: {B, C, D} {E} {F, G}; mức độ cộng đồng địa phương có 3, Bước có thành phần {B, C, D} đáp ứng yêu cầu Tất cạnh đỉnh A kết nối với {E} {F, G} đánh dấu Sau đó, đỉnh B chạy trình đỉnh khác Cuối có đỉnh thiết lập {A, B, C, D} địa phương 3-core đỉnh – core nằm thuật toán k-core Định nghĩa k-core địa phương đưa lời giải thích rõ ràng câu hỏi liệu đồ thị G' địa phương k-core điểm cố định ? Mỗi đỉnh duyệt đồ thị vùng lân cận tìm kiếm thành phần kết nối địa phương mà không đáp ứng k-core địa phương Hình 2.7: Một ví dụ biểu đồ nhỏ cho việc tìm kiếm địa phương – core từ thuật toán {A, B, C, D} thuộc địa phương – core [10] Yêu cầu: Các cạnh đánh dấu thành phần kết nối địa phương gỡ bỏ không ảnh hưởng đến kết nối tập đỉnh thành phần kết nối địa phương Từ điểm cố định thuật toán k-core địa phương có đỉnh đồ thị G' với mức độ k cộng đồng lân cận 49 Kết chứng minh tính đắn thuật toán Các thuật toán k-core địa phương tập trung vào nội dung kết nối mà thuật toán k-core thường bỏ qua Như ta chứng minh trước đây, thuật toán k-core địa phương bao gồm thông tin cấu trúc cộng đồng Mặc dù thuật toán k-core địa phương thuật toán phát cộng đồng, cho thấy số cấu trúc clique giống biểu đồ, liên quan đến cấu trúc mạng cộng đồng lợi ích phân tích mạng Từ định nghĩa k-core địa phương, đồ thị lân cận có thành phần kết nối, thuật toán giống k-core Với gia tăng k k-core địa phương, k-core địa phương trở nên dày đặc nhiều có thành phần kết nối; thuật toán k-core địa phương chuyển hóa thành thuật toán k-core Nó xảy số k tương đối lớn đồ thị Để đánh giá mức độ liên kết hay liên thông cấu trúc cộng đồng mạng hội, nhà nghiên cứu đưa số thuật toán xử lý phân tích mối quan hệ liên kết cộng đồng với Như chương việc tìm hiểu phân tích số thuật toán nhanh tìm core tiền để việc tìm hiểu xây dựng toán ứng dụng phân tích mạng hội cho chương 50 CHƯƠNG ỨNG DỤNG CỦA CORE TRONG PHÂN TÍCH MẠNG HỘI Nội dung chương này: Giải toán thực tế sử dụng lý thuyết đồ thị thuật toán tìm core Hiện thực hóa chương trình ứng dụng 3.1 Mô tả toán phân tích mạng mạng hội Ở chương ta có khái niệm liên quan mạng hội Lịch sử trang mạng hội đời trước trang web truyền thống hội hàng loạt trang mạng hội Bài toán phân tích mạng hội lấy từ bảng số liệu thử nghiệm hệ thống số mạng hội phổ biến Trung Quốc, số mạng hội phổ giới theo số liệu 2013 trình bày sở lý thuyết đồ thị (chương1), xây dựng dựa thuật toán nhanh phân rã k-core địa phương (chương 2) Trong toán tác giả tìm hiểu lấy từ thực tế số mạng hội sau phân tích để đánh giá mức độ liên thông mạng hội với Trong phần này, kết phân tích thí nghiệm trình bày thử nghiệm cấu hình máy tính Core i5 có tốc độ CPU 1,60GHz; DDR3 4Gb; chạy hệ điều hành Windows 8.1 Pro; liệu tìm thấy bảng 3.1 Bảng 3.1: Lấy Cơ sở liệu thử nghiệm; davg mức độ trung bình mạng; dmax mức độ tối đa mạng; r phân cụm; c hệ số cụm[11] Mạng Đỉnh Cạnh davy dmax r C FangYao 383 3944 20.595 212 -0.1324 0.7467 Net Science 1589 2742 3.451 34 0.4616 0.6378 Dolphin 62 159 5.129 12 -0.0436 0.2590 AS-JULY06 22963 48436 4.2 2390 -0.1984 0.2304 EMAIL-Enron FOOTBALL 36692 183831 10.02 1383 -0.1108 0.4970 115 613 10.66 11 0.1624 0.4032 CA-ContMa 23133 93497 8.08 280 0.1364 0.6336 CA-AstroPh 18772 198,110 21.10 504 0.2053 0.6308 CA-GrQc 5242 14496 5.53 81 0.6594 0.5302 CA-HepTh 9877 25998 5.26 65 0.2685 0.4717 51 3.2 Phân tích mạng hội thuật toán k-core địa phương 3.2.1 Đặt toán Xuất phát từ thực tế tìm hiểu mạng hội, tác giả luận văn muốn áp dụng nội dung kiến thức tìm hiểu lý thuyết đồ thị nói chung khái niệm core nói riêng để giải toán Ngoài việc mô tả cài đặt thuật toán từ thực tế, thực câu hỏi có giá trị Chẳng hạn việc mô tả lân cận mạng hội liên quan đến lý thuyết đồ thị: Các lân cận gần nhất, mật độ trung bình, bao trùm Trong bảng liệu 3.1 tìm thấy trang web SNAP [11], để đơn giản hóa, tất tập liệu coi đồ thị vô hướng đồ thị đối xứng có hướng Các đồ thị không theo vòng thứ tự Trong bảng 3.1, ta thấy có nhiều loại sở liệu mạng khác nhau: Mạng lưới cộng tác: mạng này, nút đại diện cho người đối tượng; cạnh biểu thị mối quan hệ thông tin liên lạc (như mạng Football, EmailEnron) phối hợp (như CA-Hepth, NetScience) Mạng thường có hệ số kết cụm so sánh cao Mạng chuyển hóa: nút DNA chất chuyển hóa; cạnh cho thấy chúng có chức tích cực phản ứng hóa học với tính chất chuyển hóa loại phụ thuộc khác Một số mạng siêu đồ thị (như FangYao) Mạng công nghệ: nút router máy chủ Các cạnh đại diện cho truyền thông kết nối vật lý chúng 3.2.2 So sánh thuật toán địa phương với core core lân cận Trước tiên, ta so sánh thuật toán k–core lân cận k-core dựa theo số đỉnh k-core có mức k khác Bảng 3.2 cho biết số k-core lân cận tối đa, kLmax số k tối đa, kmax số lượng đỉnh hai đồ thị k-core Ta có kLmax tương đương với kmax Trong thực tế thuật toán k- core lân cận dần loại bỏ kết nối cục đồ thị (mức độ cộng đồng lân cận) mà thuộc (mức độ) liên kết toàn cầu Với gia tăng k, đỉnh kết nối với đồ thị lại Cuối k-core lân cận thuật toán k-core tương đương Một quan sát khác số đỉnh đồ thị k-core lân cận |KL( kLmax )| 52 đỉnh k-core đồ thị |K(kmax)| giống Đối với việc sở liệu tồn mạng phổ biến |KL( kLmax )| |K(kmax)| có khả xảy giống Mặt khác |K(kmax)| |KL( kLmax )| có xu hướng khác với sở liệu vốn hay có mức độ lân cận mức độ cộng đồng lân cận không Thông tin k-core lân cận cho biết thêm cấu trúc đồ thị Hình 3.1 cho thấy so sánh số đỉnh k-core hàm số hai thuật toán Đối với mạng FangYao toàn hình dạng giống hệt Ta biết k-core địa phương có liên hệ với hình tam giác, tham số hệ số phân nhóm Mạng FangYao có hệ số phân nhóm cao (c = 0,7467) mà hầu hết đỉnh kết nối với Trong điều kiện k-core thuật toán k-core lân cận có kết Bảng 3.2: So sánh với thuật toán k-core lân cận k-core sở liệu; kLmax max k-core số lân cận tối đa; kmax số lượng tối đa k-core; |KL( kL )| max số đỉnh đồ thị k-core lân cận k= kL ; |K (kmax)| số đỉnh k- core đồ thị k=kmax [11] Mạng FangYao NetScience Dolphin AS-JULY06 EMAIL-Enron FOOTBALL CA-AstroPh CA-ContMa CA-GrQc CA-HepTh kLmax 22 19 25 43 56 25 43 31 kmax 22 19 25 43 56 25 43 31 dmax 212 34 12 2390 1383 11 504 280 81 65 |KL( kLmax )| |K(kmax)| 53 53 20 20 19 36 71 71 275 275 63 114 57 57 26 26 44 44 32 32 Kết quả: Khi ta nhìn vào bốn liệu: CA-Astroph, CA-ContMa, CA-GrQc, CAHepTh: Hình dạng đường cong cho k-core lân cận tất k-core Điều có nghĩa từ bước đi, số đỉnh k-core địa phương nhỏ so với k-core Ta nhận quan sát tương tự hình 3.2 Qua quan sát để thấy phân biệt lớn đường cong cho mạng Football Dolphins 53 Hình 3.1 3.2 chứng minh k-core lân cận có đỉnh so sánh với k–core mức k Hình 3.3 cho thấy việc so sánh số cạnh k-core hàm số có hai thuật toán Hình dạng đường cong cho mạng FangYao có tỷ lệ chồng chéo cao Trong ba sở liệu khác, dễ thấy thuật toán k-core dài Hình 3.1: Cơ sở liệu số đỉnh k –core hàm FangYao, NetScience, CA-AstroPh, CA-CondMat, CA-GrQc CA-Hepth 54 Hình 3.2: Cơ sở liệu số đỉnh k-core hàm Email-Enro, AsJuly06, Football Dolphin Hình 3.3: Cơ sở liệu số cạnh k-core hàm FangYao, AsJuly06, CA-CondMat Dolphins 55 Thuật toán cho thấy số cạnh k-core số điểm lân cận điều với việc phận tích đồ thị trước 3.3 So sánh hệ số phân nhóm thuật toán k-core Ở phần ta chứng minh mối quan hệ k-core lân cận với xen kẽ 3clique Hình 3.4 cho thấy biến đổi hệ số phân lớp k–core với k khác hai thuật toán Thuật toán k–core lân cận có hệ số phân cụm cao mức k so với thuật toán k–core Tức thuật toán k-core lân cận giữ cho thông tin cấu trúc tốt so sánh với k-core Ở k-core lân cận chắn k-core điều ngược lại không Một quan sát khác k = 2, k-core lân cận thường có bước nhảy lớn đường cong Như đề cập trên, k = 2, tất cấu trúc tam giác loại bỏ hệ số phân cụm có liên quan đến số hình tam giác đồ thị Hệ số phân cụm tăng cách loại bỏ cấu trúc hình tam giác Ngoài ra, k = 56 CA-Astroph, k = NetScience k = mạng CAHepTh, hệ số phân lớp cuối trở thành 1, có nghĩa đồ thị k-core trở thành tập hợp nhóm Khi đồ thị k-core trở thành liên quan, thường không cần phải phân hủy thêm điều kiện cân cho biểu đồ Rõ ràng k-core địa phương sớm đạt điều kiện cân k-core Hình 3.4: Cơ sở liệu thu gọn hệ số k –core chức CA-AstroPh, Email-Enron, NetScience CA-HepTh 56 Hình 3.5: Cơ sở liệu kích thước thành phần khổng lồ kích thước kcore chức CA-HepTh, As-July06, Football Dolphins Cấu trúc k-core cộng đồng địa phương Từ hai thí nghiệm trên, cho thấy thuật toán k-core địa phương có yêu cầu nghiêm ngặt k-core Trong sở liệu ta tập trung vào đồ thị phụ kcore Hình 4-5 cho biết đa dạng kích thước thành phần hai thuật toán mức độ k khác Ở thành phần có kết nối lớn 57 Hình 3.6: 8-core lân cận mạng lưới Footboall 63 đỉnh hợp thành 21 đỉnh Biểu đồ hiển thị Java Jung package [12] 58 Hình 3.7: 3-core lân cận core mạng lưới Dolphins 36 đỉnh hợp thành 20 đỉnh Biểu đồ hiển thị gói Java Jung package [12] Liên kết biểu đồ hình 3.5 ta nhận thấy rằng, thuật toán k-core thành phần lớn gần kích cỡ với đồ thị k-core, có nghĩa k-core tốt cấu trúc cộng đồng đồ thị Đối với Thuật toán k-core địa phương, đặc biệt mạng CA-HepTh, Football Dolphins thành phần lớn nhỏ nhiều so với k-core, cho phép ta xem cấu trúc đồ thị cộng đồng Hình 3.6 hiển thị mạng nội 5-core mạng lưới bóng đá có thành phần kết nối; Mỗi thành phần kết nối cấu trúc giống clique Rõ ràng Giant Component (đánh dấu 2) dễ dàng chia thành thành phần kết nối, ta sử dụng thuật toán phân cụm 59 đồ thị Các địa phương 5-core có 63 đỉnh kích thước thành phần cụm lớn 21; Trong 5–core có 114 đỉnh kích thước thành phần cụm lớn 114 Hình 3.6 cho thấy đỉnh có kết nối tương tự nên nằm cộng đồng; so sánh với kết phân loại thực mạng football, giả sử đỉnh hợp phần thuộc phân cụm PAC, đỉnh Component thuộ SEC, thuộc ACC, thuộc B10 Cũng hợp phần, đỉnh thuộc phân cụm B12 C-USA Các tượng tương tự trình bày hình 3.7 cho mạng lưới Dolphins hình 3.8 cho mạng CA-HepTh Đồ thị k-core có số đỉnh lớn kích thước thành phần khổng lồ so với k core địa phương mức k: 45 đỉnh cỡ thành phần khổng lồ 45 so với 36 đỉnh 20 k = mạng Dolphins; 255 đỉnh cỡ thành phần khổng lồ 172 so với 206 đỉnh 57 k = mạng CA-HepTh Ở thuật toán k core địa phương hiển thị cấu trúc cộng đồng k-core mà không hiển thị thuật toán kcore bình thường 60 Hình 3.8: 8-Core lân cận mạng CA-HepTh 206 đỉnh hợp cụm 57 đỉnh lớn Biểu đồ hiển thị gói Java Jung package [12] Trong chương này, đồ thị khu phố có xu hướng nhìn hay phát cấu trúc cộng đồng biểu diễn biểu đồ; Khái niệm mức độ cộng đồng địa phương xác định kích thước thành phần kết nối biểu đồ khu phố Sự kết nối xa k-core lân cận, đảm bảo mức độ cộng đồng địa phương k đồ thị phụ, góc nhìn đồ thị, xen kẽ Clique, giống cấu trúc cộng đồng clique với mật độ cao Ngoài ra, thuật toán k-core lân cận đồ thị lân cận có thành phần kết nối cần mật độ cao đồ thị k –core địa phương ý tưởng mở rộng k-core với điều kiện hạn chế Thông qua thử nghiệm, chứng minh thuật toán k-core địa phương có cạnh đỉnh thuật toán k-core, giúp đồ thị có mật độ cao Đồng thời, thuật toán k-core địa phương cho thấy cấu trúc cộng 62 KẾT LUẬN Dưới hướng dẫn Giáo viên hướng dẫn – TS Trương Hà Hải với nỗ lực thân, luận văn đạt số kết sau: Tìm hiểu kiến thức Lý thuyết đồ thị, mạng hội Học hỏi nắm bắt số thuật toán xử lý đồ thị, đặc biệt thuật toán phân rã đồ thị, tìm k-core, p-core với thời gian đa thức Nghiên cứu cài đặt thuật toán tìm hiểu, phát biểu giải số toán thực tế áp dụng kiến thức nghiên cứu Các lý thuyết thí nghiệm trình bày chương chương cần phải mở rộng nghiên cứu thực tương lai Thứ nhất, lý thuyết thí nghiệm k-core địa phương tập trung vào liệu mạng thực; nghiên cứu, chẳng hạn mạng ngẫu nhiên giới hạn thấp cho xuất k-core địa phương, không đề cập luận án Tốt nên xây dựng sở mạng k-core cục ngẫu nhiên tham số k hệ số phân cụm Một lĩnh vực khác là, thay tập trung vào mức độ cộng đồng địa phương (kích cỡ thành phần kết nối đồ thị lân cận), số lượng thành phần kết nối tranh luận cho nghiên cứu sâu hơn; k-core liên quan đến cấu trúc cộng đồng phương pháp lân cận tốt cho đồ thị Nếu đồ thị lân cận đỉnh có nhiều thành phần kết nối, có nghĩa đỉnh điểm nóng, thay thành viên cộng đồng Trong thời gian tới luận văn làm tảng để phát triển thêm: Nghiên cứu cải tiến thuật toán cho tốt hơn; Tìm tòi toán thực tế để vận dụng giải mang lại ý nghĩa thực tế Mặc dù nỗ lực, thời gian kiến thức hạn chế nên chắn luận văn nhiều thiếu sót kết đạt chưa nhiều Kính mong Thầy Cô góp ý để luận văn hoàn thiện Trân trọng cảm ơn ... 2: Một số thuật toán nhanh tìm k -core mạng xã hội Tìm hiểu số thuật toán tìm Cores phân tích mạng xã hội, mổ tả thuật toán, đánh giá độ phức tạp thuật toán Chương Ứng dụng core phân tích mạng xã. .. nghiên cứu số thuật toán tìm k -core ứng dụng k -core phân tích mạng xã hội, từ áp dụng giải toán thực tế Thuật toán k -core đưa để phân tích cấu trúc tính toán nhóm nhỏ mạng phân chúng thành mạng nhỏ... TRONG PHÂN TÍCH MẠNG XÃ HỘI 50 3.1 Mô tả toán phân tích mạng mạng xã hội 50 3.2 Phân tích mạng xã hội thuật toán k -core địa phương 51 3.2.1 Đặt toán 51 3.2.2 So sánh thuật toán

Ngày đăng: 21/09/2017, 18:42

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan