Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 45 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
45
Dung lượng
3,99 MB
Nội dung
Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn LỜI MỞ ĐẦU Tính cấp thiết đề tài Trên giới có hàng trăm mạng xã hội hoạt động Facebook, MySpace…tại Châu âu Bắc Mỹ, CyWorld, Mixi…tại Châu Á Việt Nam xây dựng mạng xã hội riêng Zing Me, YuMe, Tamtay,GoVN Mạng xã hội ngày không vấn đề lĩnh vực công nghệ thông tin đơn mà trở nên gần gũi kinh doanh đời sống Nói tới nguồn gốc mạng xã hội phải nói tới lý thuyết đồ thị lần đưa Euler vào năm 1736 Từ đến người ta thực nhiều nghiên cứu đồ thị tính chất Vào kỷ XX, đồ 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, xã hội học, công nghệ thông tin, mạng thông tin…Vào năm 1930, tốn phân tích mạng xã hội đời trở thành chủ đề quan trọng xã hội học Ngày nay, việc phân tích phát cộng đồng mạng xã hội nhu cầu thiết ứng dụng quan trọng cộng đồng lĩnh vực đời sống xã hội, khoa học máy tính, sinh học, kinh tế, trị,… Tại Việt Nam, với mong muốn xây dựng mạng xã hội Việt cho giới trẻ, đủ sức cạnh tranh với mạng Facebook chiếm thị phần đa số, Bộ thông tin truyền thông yêu cầu Tổng công ty truyền thông đa phương tiện (VTC) xây dựng ý tưởng triển khai dự án mạng xã hội Mặc dù có hỗ trợ Chính phủ, Bộ chủ quản, Go.vn mạng non trẻ, đứng trước khơng thách thức để xây dựng hình ảnh đuổi kịp mạng xã hội khác tồn phát triển từ nhiều năm Bởi vậy, toán phát cộng đồng Go.vn trở nên cần thiết hết Là thành viên tham gia xây dựng mạng Go.vn từ ngày đầu, tác giả mong muốn từ lý thuyết tiếp cận mạng xã hội tìm giải pháp hiệu để khai phá cộng đồng cho mạng Go.vn, ngày đưa mạng Go.vn trở nên gần gũi với người dùng Việt Nam Đó lý tơi lựa chọn đề Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn tài “ Phát cộng đồng mạng xã hội khả ứng dụng cho mạng Go.vn” cho luận văn thạc sỹ công nghệ thông tin Mục đích nghiên cứu Đề tài nghiên cứu nhằm mục đích nâng cao khả phát cộng đồng mạng Go.vn với toán cụ phát cộng đồng click vào quảng cáo hệ thống quản trị quảng cáo goZone Phương pháp nghiên cứu Để giải toán phát cộng đồng cho mạng xã hội nói chung mạng Go.vn nói riêng, tác giả sử dụng phương pháp phân tích, tổng hợp, so sánh để khái quát lý thuyết mạng xã hội từ nghiên cứu trước Bên cạnh đó, tác giả đặc biệt trọng đến phương pháp mô hình hóa, phương pháp định lượng để giải thuật toán phát cộng đồng mạng xã hội Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu đề tài mạng xã hội thuật toán phát cộng đồng mạng xã hội Cụ thể mạng xã hội, tác giả nghiên cứu vấn đề lý thuyết liên quan tới mạng xã hội thực tiễn mạng Go.vn Về thuật tốn, ngồi vấn đề lý thuyết chung thuật toán phát cộng đồng, tác giả sâu nghiên cứu họ thuật toán Girvan-Newman, tập trung vào thuật toán CONGA (Cluster Overlapping Newman Girvan Algorithm) Steve Gregory đề xuất năm 2007 Từ đó, tác giả xây dựng mơ hình áp dụng thuật tốn CONGA phát cộng đồng mạng xã hội Go.vn Bố cục luận văn Luận văn bố cục thành chương sau : Chương : Tổng quan mạng xã hội phát cộng đồng mạng xã hội Chương : Tổng quan thuật toán phát cộng đồng mạng xã hội Chương : Mơ hình phát cộng đồng mạng Go.vn Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn CHƯƠNG 1: TỔNG QUAN VỀ MẠNG XÃ HỘI VÀ PHÁT HIỆN CỘNG ĐỒNG TRONG MẠNG XÃ HỘI 1.1 Tổng quan mạng xã hội 1.1.1 Các nghiên cứu mạng xã hội Jiyang Chen (2010) cho giới thiệu khái quát phát triển trình nghiên cứu mạng xã hội (social network) Nhu cầu phân tích mạng xã hội năm 1930 nhanh chóng trở thành chủ đề quan trọng xã hội học Những người tiên phong lĩnh vực Jacob Moreno, Kurt Lewin Fritz Heider J.Moreno xây dựng mơ hình đặt tên “sociometry” cách hỏi người xung quanh bạn họ ai, tìm hiểu mối quan hệ họ với người khác Sáng tạo Moreno ông tạo “sociogram”, cách để biểu diễn tính chất cấu hình mang tính xã hội Khái niệm “sociogram” sau dùng để biểu diễn đồ thị mạng xã hội Hình 1.1 : McKenzie's Target Sociogram Board (from Northway, 1952) Nguồn: L Freeman, Visualizing social networks, Journal of Social Structure Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Trong K.Lewin, nghiên cứu hành vi nhóm, cho tính chất mặt cấu trúc đơn vị xã hội biểu diễn cách tốn học lý thuyết đồ thị cấu trúc liên kết F.Heider, nghiên cứu nhận thức xã hội, phát minh thuyết cân bằng, ông cho tâm trí người hướng tới cân bằng cách giữ lại ý tưởng mà không mâu thuẫn với ý tưởng người khác, điều áp dụng vào thái độ với người xung quanh Những ý tưởng Lewin Heider sớm phát triển Frank Harary Dorwin Cartwright, nhóm tác giả sử dụng lý thuyết đồ thị để xây dựng công cụ hữu hiệu nghiên cứu mạng xã hội Trong năm 1950, nhà nghiên cứu từ khoa Xã hội Nhân chủng học trường đại học Manchester, dẫn đầu John Barnes, bắt đầu đặt trọng tâm nghiên cứu họ vào mối quan hệ đối tượng xã hội, thay thiết lập chuẩn mực định mức cho toàn cấu trúc xã hội trước tìm hiểu xem cấu trúc mối quan hệ cá thể xã hội có ảnh hưởng đến tồn xã hội Từ đó, thuật ngữ “mạng xã hội”, lần nhắc đến Barnes năm 1954, đánh dấu phát triển thức việc phân tích cấu trúc mạng xã hội Dựa vào nghiên cứu Barnes cộng sự, vào năm 1969 1970, nhà nghiên cứu đại học Harvard dẫn đầu Harrison C.White tiếp tục nghiên cứu phát triển khía cạnh tốn học mạng xã hội biểu diễn nhiều khái niệm quan trọng xã hội học, ví dụ khái niệm “vai trị xã hội”, sang cơng thức tốn học tìm cách mơ hình hóa tính tốn chúng Ý tưởng nghiên cứu việc phát cấu trúc mạng xã hội không nên dựa vào hạng mục tiếng định nghĩa trước đó, mà phải dựa vào mối quan hệ cá thể mạng cách thức mà mối quan hệ cấu tạo thành mạng Trong nghiên cứu sau đó, Mark Granovetter đề giả thiết liên kết yếu, với nội dung “nếu A có liên kết mạnh tới B C có khả Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn B C tồn liên kết” Giả thiết Granovetter áp dụng tương đối hiệu số nghiên cứu sau Trong ý tưởng phát triển sau học trò White, lý thuyết “hiện tượng giới nhỏ” Milgram phát biểu năm 1967 gây quan tâm mạnh mẽ nhà khoa học Trong Milgram thiết lập thí nghiệm để tìm hiểu xem qua bước, liên kết cần thiết để hai người giới liên kết với Để biết điều này, Milgram chọn số người thành phố Omaha, Nebraska and Wichita, Kansas Mỹ làm điểm khởi đầu số người Boston, Masachusett làm điểm kết thúc Sau ơng đưa cho người điểm khởi đầu thư có ghi địa người điểm kết thúc, yêu cầu họ chuyển thư trực tiếp cho người nhận họ có quen biết nhau, đưa thư cho người bạn chuyển hộ, mà người bạn có khả quen với người nhận Kết 64 296 thư đến tay người nhận, số bước chuyển trung bình nằm khoảng 5.5 đến Từ ơng kết luận tất người Mỹ liên kết với với trung bình người bạn Mặc dù thí nghiệm ơng khơng tồn diện đầy đủ song giả thuyết ơng có giá trị thực tiễn lớn Trên thực tế, người ta tìm hiểu nhiều mạng xã hội thỏa mãn giả thuyết Milgram, bao gồm mạng cộng tác khoa học đồ thị gọi điện thoại Tóm lại phân tích mạng xã hội sinh từ nhu cầu chung xã hội học, nhân chủng học, toán học, sinh học kinh tế học Ngày phân tích mạng xã hội áp dụng nhiều lĩnh vực kinh tế, tài chính…Tuy nhiên thời đại bùng nổ thơng tin với số lượng kích thước mạng xã hội tăng lên không ngừng, vấn đề quản lý thơng tin xã hội trở nên khó khăn Do đó, cần thiết phải áp dụng kỹ thuật khoa học máy tính để phân tích xác hiệu cấu trúc xã hội mạng xã hội 1.1.2 Khái niệm mạng xã hội Thuật ngữ “mạng xã hội”, lần Barnes nhắc đến vào năm 1954, đánh dấu phát triển thức việc phân tích cấu trúc mạng xã hội Mô Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn hình mạng xã hội thực tế xuất lần năm 1995 với đời trang Classmate với mục đích kết nối bạn học Theo Garton cộng (1997) mạng xã hội “một tập hợp người kết nối với tập hợp mối quan hệ, ví dụ tình bạn, cộng hay trao đổi thơng tin” Mạng xã hội cấu trúc mang tính xã hội cấu tạo từ nút cung, nút liên kết với nhiều cung, thể mối quan hệ cụ thể [1] Mỗi nút, gọi tác nhân (actor), biểu diễn cho đối tượng xã hội, người, tài liệu, tổ chức, quốc gia,…Mối liên hệ nút biểu diễn liên kết nút Liên kết mối quan hệ bạn bè, họ hàng, đồng nghiệp,…, trao đổi tài chính, giao dịch, số liệu,…Các liên kết liên kết vơ hướng (hay gọi liên kết đối xứng ), mối quan hệ hai nút A B mối quan hệ qua lại, ví dụ A bạn B, B bạn A, hay A B sống chung hộ,…Các liên kết liên kết có hướng, ví dụ A thích B, B chưa thích A, A nợ tiền B….Mặt khác, liên kết cịn đánh trọng số, trọng số biểu diễn độ mạnh liên kết hai nút 1.1.3 Biểu diễn mạng xã hội Để biểu diễn mạng xã hội, nhà phân tích mạng xã hội sử dụng cấu trúc, đồ thị ma trận kề Để tính tốn phân tích liên kết mạng, người ta thường ưu tiên áp dụng lý thuyết đồ thị Thật vậy, đồ thị công cụ hữu hiệu để thể thông tin mạng xã hội Trong biểu diễn đồ thị mạng xã hội, đỉnh dùng để biểu diễn nút cạnh dùng để biểu diễn liên kết nút Các cạnh đồ thị vơ hướng hay có hướng, đánh trọng số tùy thuộc vào nhu cầu biểu diễn liên kết vơ hướng hay có hướng, trọng số Trong mạng xã hội thực tế, phân bố cạnh không đều, với mức độ tập trung cao cạnh số nhóm đỉnh đặc biệt, nhóm số lượng cạnh tập trung thấp Một số nhóm đỉnh có liên kết chặt chẽ Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn với thành cụm, cụm nối với vài cạnh khác Tính chất mạng thực tế gọi tính cộng đồng (community) hay gọi phân cụm [3] Đây tính chất quan trọng mạng xã hội ngày nhiều nhà khoa học quan tâm nghiên cứu Một số ví dụ tính cộng đồng trang web chủ đề kết nối tới trang web khác với chủ đề tương tự, hay nhà khoa học viết chung báo sách, nhân viên thuộc phịng ban cơng ty,… Tính cộng đồng coi tính chất quan trọng mạng xã hội [3] Sự phát cộng đồng mạng xã hội mục tiêu nhiều nghiên cứu mạng xã hội, ví dụ xếp hạng thực thể, phân lớp,…Người ta đặt khái niệm “cộng đồng” mạng xã hội để nhóm Từ người ta định nghĩa khái niệm “khai phá cộng đồng”, q trình nghiên cứu phân tích mối quan hệ mạng xã hội, nhằm mục tiêu tìm cộng đồng mạng xã hội, trích xuất thành phần ẩn cộng đồng Khai phá cộng đồng dành ý nhiều nhà khoa học nhiều lĩnh vực, đặc biệt gần lĩnh vực Khai phá liệu 1.2 Cộng đồng mạng xã hội toán khai phá cộng đồng 1.2.1 Cộng đồng mạng xã hội Khái niệm cộng đồng, định nghĩa tập thực thể có tính chất tương tự và/hoặc đóng vai trị mạng xã hội Hình 1.2 ví dụ đồ thị với cấu trúc cộng đồng Hình 1.2: Đồ thị đơn giản với cộng đồng giới hạn nét gạch nối Nguồn: Fortunato Castellano, 2009 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Theo [6], tập hợp đỉnh đồ thị coi cộng đồng mật độ cạnh bên cao so với mật độ cạnh đỉnh cạnh bên ngồi Dưới vài ví dụ điển hình mạng xã hội cộng đồng mạng xã hội Hình 1.3: Mạng lưới thành viên câu lạc Karate (Zachary,1977) Nguồn: Donetti and Mun~oz, 2004 Đây làm đồ thị tiếng thường xuyên sử dụng tiêu chuẩn để kiểm tra phát cộng đồng Nó bao gồm 34 đỉnh tương ứng thành viên câu lạc Karate Hoa Kì Người ta quát sát mạng xã hội khoảng ba năm, cạnh kết nối cá nhân quan sát thơng qua tương tác bên ngồi hoạt động Câu lạc Theo quan sát nhận thấy có tập trung mức độ liên kết cao số điểm: Chủ tịch Câu lạc Huấn luyện viên, điều phân chia mạng thành hai nhóm rõ ràng Nhìn vào hình 1.3 ta dễ dàng nhận liên kết tập trung đỉnh 33 34 (Chủ tich Câu lạc bộ) đỉnh (Huấn luyện viên) Ngoài ra, ta dễ dàng xác định đỉnh nằm hai cấu trúc đỉnh 3, đỉnh 9, đỉnh 10 Câu hỏi đặt Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn liệu từ gốc cấu trúc mạng, suy thành phần hai nhóm hay khơng? Hình 1.4: Mơ hình mạng lưới cộng tác nhà khoa học làm việc SFI Nguồn: Girvan and Newman, 2002 Hình 1.4 hiển thị thành phần kết nối lớn mạng lưới cộng tác nhà khoa học làm việc Viện Santa Fe (SFI) Đồ thị bao gồm 118 đỉnh đại diện cho nhà khoa học cư trú SFI cộng tác viên họ Các cạnh đặt vào nhà khoa học công bố với báo Ở mạng ta quan sát nhiều cộng đồng, cộng đồng biểu cho tất tác giả báo Mặt khác ta thấy tồn vài kết nối hầu hết cộng đồng mạng Các đỉnh màu kết phân tích phát cộng đồng sử dụng thuật toán Girvan Newman, kết gần tương tự so với phân chia theo lĩnh vực nghiên cứu viện Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn 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 (Hình 1.5) Mạng có tất 62 đỉnh cạnh đồ thị nối đỉnh biểu diễn cho cá heo xuất thường xuyên với so với mức độ bình thường dự kiến Các cá heo chia thành nhóm sau cá heo bỏ khỏi nơi khoảng thời gian ( biểu diễn hình vng hình trịn hình vẽ ) Mỗi nhóm đồ thị tương đối gắn kết, với vài đồ thị đầy đủ có cạnh nối nhóm khác Mạng nói giống mạng Zachary thường sử dụng để cài đặt đánh giá thuật toán phát cộng đồng mạng xã hội Như nhiều liệu có cấu trúc khoa học biểu diễn mạng, tập hợp nút hay đỉnh nối với theo cặp liên kết, mạng sinh học (lưới thần kinh, lưới thức ăn…), hợp tác nhà nghiên cứu, world wide web… Một số đặc điểm gắn kết mạng lại với cấu trúc cộng đồng, tồn nhóm có mật độ kết nối mạnh đỉnh nhóm, kết nối yếu nhóm Từ đó, việc xác định cộng đồng xem việc tìm kiếm cụm nút phân nhóm Cơng việc liên quan đến việc phân nhóm liệu, phương tiện sử dụng khác Trong xã hội xuất nhiều nhóm tổ chức với kích cỡ khác nhau, ví dụ gia đình, nhóm bạn bè đồng nghiệp, thành phố, quốc gia… Sự khuếch tán Internet ngày sinh nhiều nhóm ảo Web, hay cịn gọi cộng đồng trực tuyến Các cộng đồng xã hội nghiên cứu thời gian dài thường xuyên xuất nhiều hệ thống mạng sinh học, khoa học máy tính, cơng nghệ, trị, kinh tế, …ví dụ : nhóm protein với chức tương tự tế bào mạng tương tác protein, nhóm trang web thảo luận chủ đề chủ đề tương tự World Wide Web,… 10 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Miss Teen - Một kiện lớn giới học sinh tuổi teen, sân chơi bổ ích giúp em khẳng định thân, phong cách sống, rèn luyện kỹ giao tiếp hoàn thiện người Cổng nhân đạo quốc gia 1400 - Cổng nhân đạo quốc gia nơi kết nối lòng hảo tâm, với mong muốn mang nụ cười đến với mảnh đời thiếu may mắn Nguồn : Tác giả tổng hợp từ báo giới thiệu mạng Go.vn 3.2 Mục đích mơ hình phát cộng động mạng Go.vn 3.2.1 Mục đích phát cộng đồng mạng xã hội Go.vn Do nhu cầu thống kê định hướng hiển thị quảng cáo theo ngữ cảnh, hệ thống quảng cáo goZone thuộc mạng Việt Nam Go.vn cần phát triển mođun nhắm mục đích thống kê người dùng bạn bè tham gia vào mạng Go.vn click vào quảng cáo hệ thống hiển thị quảng cáo mạng Go.vn Với liệu cộng đồng thu dùng vào mục đích hiển thị quảng cáo hướng người dùng sau Ngoài việc phát cộng đồng mạng xã hội Go.vn cịn có ý nghĩa quan trọng việc nâng cao liên kết mạng cụ thể giới thiệu người dùng bạn bè với mạng nhằm gắn kết cộng đồng, làm cho mạng Go.vn gắn bó với người sử dụng hơn, hấp dẫn 3.2.2 Mô hình go.vn cải tiến mơ hình Sơ đồ 3.1: Mơ hình phát cộng đồng mạng xã hội trực tuyến go.vn Nguồn liệu người sử dụng Go.vn Tiền xử lý liệu (1) Kết cộng đồng người dùng click vào quảng cáo X Nguồn : Tác giả tự tổng hợp 31 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Mơ hình Go.vn thủ công tốn nhiều tài nguyên server dùng cho việc tìm kiếm cộng động tập liệu quảng cáo thu Sau mơ hình tơi đề xuất nhắm xây dựng thử nghiệm mạng xã hội dựa mạng xã hội trực tuyến Go.vn cài đặt thuật toán CONGA thuộc họ thuật toán Girvan-Newman để phát cộng đồng mạng xã hội Sơ đồ 3.2: Mơ hình đề xuất giải toán phát cộng đồng mơ hình mạng xã hội trực tuyến go.vn Nguồn liệu người sử dụng Go.vn Tiền xử lý liệu (1) Xây dựng mơ hình mạng xã hội (2) Áp dụng thuật toán CONGA phát cộng đồng (3) Mơ hình mạng xã hội Tập cộng đồng phân cấp kết Nguồn : Tác giả tự tổng hợp Như ta thấy mơ hình đề xuất giải toán gồm bước: Bước 1: Tiền xử lý liệu lấy từ nguồn liệu người dùng Go.vn, loại bỏ liệu không phù hợp Bước 2: Sau xử lý liệu, sử dụng liệu xử lý để xây dựng mơ hình mạng xã hội Sau bước ta thu mô hình mạng xã hội dựa mạng xã hội trực tuyến Go.vn Bước 3: Áp dụng thuật toán CONGA vào mơ hình vừa xây dựng Sau bước ta thu kết thuật toán tập cộng đồng phân cấp 32 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn 3.2.3 Phân tích thành phần mơ hình Bước 1: Dữ liệu người dùng thống kê hệ thống ghi log quảng cáo goZone Để cụ thể hóa tốn tơi lấy nhãn hàng Clear Unilever Việt Nam quảng cáo cần thống kê số người dùng thành viên mạng Go.vn click vào quảng cáo liệu thành viên có cộng đồng Từ liệu người sử dụng mạng Go.vn click vào quảng cáo Clear, tiến hành tiền xử lý loại bỏ liệu khơng phù hợp với tốn : Do việc thu thập người dùng không dựa mối liên kết họ với nên đồ thị thu dẫn đến tượng rời rạc, số lượng liên kết ít, gây khó khăn việc phát cộng đồng Vì người dùng thiếu thông tin sử dụng, thiếu kết nối với đỉnh khác mạng bị loại khỏi tập liệu Bước 2: Từ liệu chuẩn hóa, bước này, tiến hành xây dựng đồ thị mô tả mạng xã hội với đỉnh người sử dụng cạnh biểu diễn mối quan hệ bạn bè người với Do u cầu thuật tốn mà tơi sử dụng (thuật tốn CONGA) có đồ thị đầu vào đồ thị vơ hướng khơng có trọng số, nên sau bước này, xây dựng đồ thị vô hướng, khơng có trọng số biểu diễn người dùng mạng Go.vn click vào quảng cáo Clear Đồ thị biểu diễn dạng file text chứa danh sách đỉnh cạnh đồ thị theo CONGA format Bước 3: Dựa đồ thị vừa xây dựng được, tiến hành cài đặt thuật tốn CONGA cho đồ thị đó, dựa thư viện mà tác giả thuật toán cung cấp Đầu vào chương trình file text biểu diễn đồ thị xây dựng bước Đầu chương trình tập cộng đồng phân cấp đồ thị đó, bao gồm số lượng cộng đồng chia nhỏ, phép phân chia cạnh (hoặc đỉnh) thành cộng đồng bước, cấu trúc cộng đồng 3.3 Thực nghiệm đánh giá mơ hình 3.3.1 Mô tả thực nghiệm Dữ liệu dùng để xây dựng mơ hình mạng xã hội dựa mạng xã hội trực tuyến Go.vn, liệu ghi log quảng cáo hệ thống quản lý quảng cáo liệu 33 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn người dùng thông qua việc sử dụng API (application programming interface) getUserInfo, getFriendList Go.vn cung cấp Từ liệu ghi log quảng cáo ta thu thập danh sách người dùng click vào quảng cáo bất kì, từ API Go.vn ta thu thập thông tin thành viên danh sách người dùng click quảng cáo hệ thống quảng cáo goZone, thông tin thu thập bao gồm: AccountID, PublicName, danh sách bạn bè, thông tin cá nhân trường , lớp, sở thích, nơi ở, comment, status hay ảnh upload lên mạng xã hội Go.vn Bởi liệu thành viên thu thập từ quảng cáo khơng có thơng tin mối liên hệ thành viên này, tơi phải lấy thơng tin bạn bè thành viên theo thứ tự danh sách viên click quảng cáo thu được, từ danh sách bạn bè, so sánh với danh sánh thành viên click quảng cáo thu được, thành viên không thuộc danh sách bị loại bỏ Hình 3.1 : File đầu vào định dạng Conga Format chứa danh sách đỉnh cạnh Nguồn : Dữ liệu mạng xã hội Go.vn 34 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Từ liệu người sử dụng thu thập được, ta tiến hành bước loại bỏ liệu khơng phù hợp, ví dụ người sử dụng có số lượng bạn bè lớn (trên vài trăm nghìn người) ảnh hưởng đến tốc độ tính tốn, AccountID người sử dụng đỉnh đồ thị ta xây dựng, Sau bước này, thu thập thông tin 500 người sử dụng, với ID, tên truy nhập danh sách bạn bè 500 người Danh sách lưu dạng file text với mục đích xác định cạnh đồ thị sau này, với tổng cộng 11,120 dịng dịng biểu diễn cho người sử dụng người danh sách bạn bè người Tiếp theo từ liệu người sử dụng xử lý, tiến hành xây dựng đồ thị, đỉnh đại diện cho người sử dụng thu thập cạnh biểu diễn quan hệ người đỉnh Ở đây, đồ thị cần xây dựng đồ thị vô hướng, nên ta coi tồn cạnh A B A thuộc danh sách B B thuộc danh sách A Đồ thị 3.1: Mô tả phần đồ thị liệu mạng Go.vn Nguồn : Tác giả tự tổng hợp 35 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Kết sau bước này, xây dựng đồ thị biểu diễn phần mạng xã hội Go.vn thực tế, với 500 đỉnh 5310 cạnh đại diện cho người sử dụng mối quan hệ bạn bè họ Đồ thị biểu diễn dạng file text dịng số đỉnh, dòng biểu diễn cạnh nối đỉnh đồ thị 3.3.2 Môi trường thực nghiệm (Phần cứng hệ điều hành) Bảng 3.2: Chỉ số phần cứng hệ điều hành sử dụng thực mơ hình Phần cứng Chỉ số CPU Intel Core Dou 2.0ghz RAM 3.0 GB HDD 250 GB OS Windows -64bit 3.3.3 Hướng dẫn setup mơi trường Hình 3.2: Setup môi trường Java chạy ứng dụng CONGA Nguồn : Tác giả tự tổng hợp 36 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Bước : Truy cập vào website http://java.com/en/download/index.jsp, download Java dành cho máy tính Bước : Cài đặt file vừa tải về, thư mục ứng dụng sau cài đặt thường đặt : C:\Program Files\Java\jre7 Bước : Click chuột phải vào biểu tượng My Computer -> chọn Properties -> chọn Advanced System Settings -> Làm theo file ảnh, copy C:\Program Files\Java\jre7\bin vào mục Path (Hình 3.2) Như môi trường chạy Java cài đặt xong, chạy thuật tốn CONGA 3.3.4 Các phần mềm sử dụng Để thực nghiệm mơ hình phát cộng đồng mạng xã hội sử dụng phần mềm sau : (1) Bộ thư viện (API) mạng xã hội Go.vn cung cấp cho phép lấy liệu thông tin người dùng, danh sách bạn bè người dùng mạng xã hội Go.vn (2) Conga Software : Phần mềm mã nguồn mở cài đặt thuật toán CONGA tác giả Steve Gregory thiết kế công bố vào năm 2010 (3) Phần mềm Netbean IDE 7.3.1 công cụ hỗ trợ soạn mã lập trình PHP, JAVA (4) Bộ biên dịch Java (Java™ Platform, Standard Edition Development Kit ) Phần mềm mã nguồn mở CONGA Software Steve Gregory thiết kế dạng file JAR thư viện Java Phần mềm có mục đích tính toán phép phân chia cạnh đỉnh thuật tốn CONGA, sau thực việc phân chia cộng đồng cho đồ thị Phần mềm tải từ địa http://www.cs.bris.ac.uk/~steve/networks/software/conga.html Chương trình đọc mạng vô hướng (với n đỉnh m cạnh) từ tập tin tính tốn phân nhóm sau kết tính tốn lưu vào tập tin Text cho phép bạn xem phân nhóm với giá trị mà khơng cần phải tính tồn lại Hai định dạng đầu vào chấp nhận gồm : (1) CONGA format : Một dòng chứa tên đỉnh, dịng danh sách hàng xóm đỉnh vừa liệt kê, đỉnh bắt đầu ‘ ’ 37 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn khoảng trắng sau đến tên đỉnh hàng xóm Việc liệt kê đỉnh phải có hai chiều, tức đỉnh A có hàng xóm B B liệt kê danh sách A, đồng thời A liệt kê danh sách B (2) List of edges format : Một dòng cho cạnh ( tên hai định trọng số có cách khoảng trắng tab) Cạnh liệt kê theo hướng hai hướng Hình 3.3: Định dạng liệu đầu vào phần mềm CONGA Nguồn: Hướng dẫn sử dụng thuật toán CONGA Steve Gregory Sau nhận đầu vào thích hợp, người sử dụng chạy dòng lệnh sau CMD: java –cp conga.jar CONGA ***.txt –e để thu kết phát cộng đồng đồ thị, đó, ***.txt tên file text đầu vào theo định dạng CONGA Kết đưa hình cho ta biết đỉnh, cạnh loại bỏ bước, phân tích từ cộng đồng ban đầu cộng đồng với độ đo trung gian Kết đầu cho ta 38 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn biết bước cuối đồ thị phân thành cộng đồng với kích cỡ Khi mạng phân nhóm, tập tin tạo có Prefix bắt đầu ‘clustering-’ tiếp sau tên file text đầu vào, file txt có chứa thơng tin nhóm phân Ngồi thuật tốn phát cộng đồng CONGA dạng phương pháp phân cụm phân cấp, cộng đồng cha phân thành cộng đồng con, cộng đồng lại tiếp tục chia nhỏ thành cộng đồng khác khơng chia nhỏ Chính vậy, chương trình cung cấp khả xem xét bước thuật tốn phân chia dịng lệnh với tham số -n : java –cp conga.jar CONGA ***.txt –e –n X X số nguyên biểu diễn số lượng cộng đồng bước phân chia mà ta muốn xem.Ví dụ muốn xem cấu trúc cộng đồng giai đoạn đồ thị phân chia làm cộng đồng cần thay X = dịng lệnh Ngồi thuật tốn cung cấp nhiều option sử dụng cho nhiều mục đích khác tiếp hành phân nhóm cộng đồng, tham khảo [7] Từ thư viện API GO.VN cung cấp phần mềm CONGA xây dựng thêm số hàm dùng để lấy liệu người dùng xuất danh sách người dùng theo định dạng mà phần mềm CONGA yêu cầu.Những hàm gồm : (1) Hàm lấy thông tin người dùng getUserInfo(), từ định dạng Json trả từ API Go.vn hàm có tác dụng decode, phân tích lấy liệu cần thiết sau lưu vào sở liệu (Ở sử dụng Mysql) (2) Hàm lấy thông tin bạn bè người dùng getFriendList(), hàm với đầu vào ID người dùng, đầu danh sách bạn bè người dùng (3) Hàm xuất thông tin theo định dạng CONGA Format fwriteData(), hàm lưu liệu dạng file text 39 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn 3.3.5 Thực nghiệm đánh giá Thực nghiệm Từ liệu người dùng mạng Go.vn thu thập tiến hành cho chạy qua phần mềm CONGA , kết thực nghiệm sau : Hình 3.4: Kết chạy thuật toán CONGA phát cộng đồng mạng Go.vn Nguồn: Kết trả từ phần mềm CONGA hình Ms Dos Kết rõ đầu vào đồ thị có 500 đỉnh 5310 cạnh, đầu 22 cộng đồng có cộng đồng lớn chứa 479 đỉnh Tống số phép phân chia đỉnh 2738 danh sách đỉnh phân chia lần liệt kê phía Tổng số pha tính độ trung gian 8048 pha, thời gian tổng cộng cho việc phân chia cộng đồng : 2194364 ms ~ 37 phút 40 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Đánh giá Để đánh giá thuật toán phát cộng đồng, S.Fortunato [3] trình bày phương pháp sử dụng đồ thị chuẩn phân chia thành cộng đồng từ trước, sau áp dụng thuật toán cần đánh giá vào đồ thị chuẩn so sánh độ tương tự cộng đồng thu với cộng đồng xác định từ trước, từ xác định độ xác thuật toán so với thực tế Cụ thể hơn, tác giả giới thiệu phương pháp phương pháp đếm cặp Giả sử phép phân chia đồ thị thành hai cộng đồng con, ký hiệu phép phân chia X Áp dụng thuật toán cần đánh giá phân chia đồ thị thành hai cộng đồng tương ứng thu phép phân chia khác ký hiệu Y Tác giả ký hiệu a11 số cặp đỉnh mà thuộc cộng đồng phép phân chia a00 số cặp đỉnh mà khác cộng đồng phép phân chia, a10 số cặp đỉnh mà cộng đồng X khác cộng đồng Y, a01 số cặp đỉnh mà cộng đồng Y khác cộng đồng X Từ tác giả nêu vài độ đo đánh giá, tơi quan tâm đến phép đánh giá: (1) Hệ số Rand: Rand định nghĩa năm 1971, tỉ số số cặp đỉnh thuật toán phân phân vùng chia cho tổng số cặp đỉnh (2) Hệ số Jaccard: tỉ số số cặp đỉnh phân vào cộng đồng phép phân chia số cặp đỉnh phân vào cộng đồng phép phân chia Bảng 3.3: Độ đo Jaccard Rand thuật toán CONGA Girvan Newman áp dụng cho mạng karate hình 1.3 RAND Index Jaccard Index CONGA 0.5989 0.4360 Girvan and Newman 0.9393 0.8921 41 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Bảng 3.3 kết độ đo Jaccard Rand thuật toán CONGA Girvan and Newman áp dụng cho mạng karate miêu tả Hình 1.3 Chương Kết thuật tốn Girvan and Newman cao Girvan and Newman tìm kết gần giống với thực tế (chỉ khác đỉnh) kết CONGA thấp CONGA tìm kết khác hẳn với thực tế (8 đỉnh bên cộng đồng bị chuyển sang cộng đồng cộng thêm đỉnh thuộc hai cộng đồng đỉnh 1) Dựa vào bảng đưa nhận xét: với mạng karate, mạng đơn giản, rõ ràng không tồn chồng chéo cộng đồng , áp dụng thuật toán Girvan and Newman đưa lại hiệu tốt so với thuật toán CONGA Đặc biệt áp dụng vào mạng hình 1.5 mạng biểu diễn cá heo Lusseau, thuật toán CONGA Girvan and Newman đưa phép phân chia giống với thực tế, tức độ đo Rand Jaccard Tuy nhiên có khác chút thuật tốn CONGA tìm đỉnh overlap thuộc cộng đồng lớn Ngoài độ đo trên, Fortunato [3] cịn trình bày nhiều độ đo khác dựa vào lý thuyết thông tin độ đo lượng thông tin Shannon Mackay đề xuất năm 2003, hay độ đo lượng thơng tin tương hỗ chuẩn hóa Danon cộng đề xuất năm 2005 Chi tiết độ đo trình bày tài liệu [3] Steve Gregory [6] nêu hai độ đo để đánh giá thuật toán phát cộng đồng ông ta Hai độ đo mà tác giả đề xuất vad (vertex average degree – tạm dịch bậc trung bình đỉnh) overlap Hai độ đo sử dụng để đánh giá chất lượng phân cộng đồng mà có khả xảy chồng chéo lẫn Các độ đo thể công thức sau: 42 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn Trong S đồ thị, C cộng đồng đồ thị, E(C) số cạnh C Áp dụng tính toán hai độ đo cho hai mạng chuẩn cho đồ thị xây dựng được, ta có bảng 3.4 Bảng 3.4 : Độ vad overlap cho mạng Karate, Cá heo, mạng Go.vn vad Overlap Mạng Karate 4.45 1.03 Mạng cá heo 4.91 1.03 Mạng Go.vn 5.78 1.05 Trong đó, độ đo vad overlap mạng xây dựng dựa phần liệu mạng xã hội Go.vn tính toán phân chia mạng thành cộng đồng Ta lưu ý thuật tốn CONGA chia mạng thành nhiều cộng đồng nữa, độ đo vad overlap thay đổi Đối với mạng không cộng đồng thực tế mạng xã hội xây dựng từ mạng Go.vn , áp dụng phương pháp đánh giá sử dụng cộng đồng phân chia theo thuật toán, lấy phần đỉnh làm tập huấn luyện phần lại làm tập test cho qua máy phân lớp SVM để kiểm tra độ xác Tôi đánh giá dựa vào phương pháp đánh giá 10-folds tỉ lệ liệu train liệu test 9:1.Dữ liệu train đỉnh biểu diễn dạng vector với số chiều tổng số đỉnh đồ thị, tức 500 chiều.Với đỉnh kề với đỉnh biểu diễn thành phần tương ứng với số thứ tự đỉnh vector nhận giá trị Các thành phần lại vector nhận giá trị tương ứng với đỉnh không kề với đỉnh cần biểu diễn Theo phép phân chia cộng đồng dựa thuật tốn CONGA, tơi thu cộng đồng con, cộng đồng lớn cộng đồng nhỏ Tôi lấy cộng đồng 100 đỉnh biểu diễn đỉnh dạng vector Các vector gán nhãn tương ứng với cộng đồng lớn cộng đồng nhỏ Sau chia tập đỉnh làm hai phần, phần để làm tập huấn luyện phần làm tập test(theo cách phân chia trình bày) Cho tập huấn luyện qua máy 43 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn phân lớp SVM kiểm tra mô hình với tập test Ta thu độ xác phép phân lớp dựa SVM so với thuật toán phân chia cộng đồng CONGA (Bảng 3.5) Bảng 3.5: Độ xác phân lớp SVM dựa phân chia cộng đồng thuật toán CONGA Precision(%) Recall(%) F-measure(%) Fold 82.43% 77.95% 80.30% Fold 78.57% 84.31% 80.68% Fold 91.34% 91.34% 91.34% Fold 65.15% 90.30% 76.00% Fold 78.49% 83.61% 82.48% Fold 73.48% 78.92% 75.06% Fold 84.71% 91.30% 89.87% Fold 83.69% 83.69% 83.69% Fold 68.66% 60.53% 65.00% Fold 10 80% 91.34% 86.71% 78.65% 83.33% 81.11% Trung bình Nhận xét: Dựa vào bảng kết thu đưa kết luận việc đánh giá thuật toán CONGA dựa vào phân lớp SVM tương đối khả quan Độ đo F1 trung bình cho 10 fold 81.11%, có fold độ đo F1 lên tới 91.34% 44 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go.vn Nguyễn Thanh Tuấn KẾT LUẬN Mạng xã hội toán phát cộng đồng mạng xã hội vấn đề nhiều nhà nghiên cứu quan tâm thời đại nay.Các toán phát cộng đồng ứ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ệ, Luận văn đưa tổng quan mạng xã hội toán phát cộng đồng mạng xã hội, hướng tiếp cận điển hình cho toán phát cộng đồng Luận văn trọng trình bày chi tiết họ thuật tốn GirvanNewman bao gồm thuật tốn Girvan-Newman ngun thủy cải tiến nhằm tối ưu hiệu tính tốn Trong luận văn chọn thuật tốn CONGA phát triển từ Girvan and Newman Steve Gregory năm 2007 làm thuật toán để cài đặt thử nghiệm mơ hình mạng xã hội tơi xây dựng từ mạng Go.vn Luận văn đưa mơ thực nghiệm xây dựng mơ hình mạng xã hội dựa mạng xã hội trực tuyến Go.vn cài đặt thuật tốn phát cộng đồng mơ hình xây dựng Kèm theo tơi cài đặt thử nghiệm thuật toán Girvan and Newman thuật toán CONGA với số mạng xã hội thực tế đưa đánh giá Hướng phát triển nghiên cứu luận văn mở rộng mơ hình mạng xã hội, tính tốn trọng số bổ xung hướng cho đồ thị cho phù hợp Tiếp theo tơi dự định tìm hiểu cài đặt thêm số thuật toán thuộc họ Givan and New cho mạng xã hội đưa phương án phát triển thuật toán CONGA cách hợp lý cho đồ thị có trọng số có hướng 45 ... mạng xã hội phát cộng đồng mạng xã hội Chương : Tổng quan thuật toán phát cộng đồng mạng xã hội Chương : Mơ hình phát cộng đồng mạng Go. vn Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go. vn. . .Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go. vn Nguyễn Thanh Tuấn tài “ Phát cộng đồng mạng xã hội khả ứng dụng cho mạng Go. vn? ?? cho luận văn thạc sỹ cơng nghệ... số cạnh 28 Phát cộng đồng mạng xã hội – khả ứng dụng cho mạng go. vn Nguyễn Thanh Tuấn CHƯƠNG 3: MƠ HÌNH PHÁT HIỆN CỘNG ĐỒNG CHO MẠNG GO. VN 3.1 Giới thiệu mạng Go. vn Mạng Việt Nam go. vn dự án chiến