GIỚI THIỆU THUẬT TOÁN TÌM BETWEENNESS CENTRALITY

21 1.6K 6
GIỚI THIỆU THUẬT TOÁN TÌM BETWEENNESS CENTRALITY

Đ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

Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc Mở đầu Ý tưởng rằng các mạng quan hệ là quan trọng trong khoa học xã hội không phải là mới, nhưng phổ biến rộng rãi dữ liệu sẵn có và sự phát triển trong tính toán và phương pháp luận đã làm cho việc phân tích mạng xã hội được ứng dụng rộng rãi ở nhiều lĩnh vực vượt ra ngoài khoa học xã hội, mặc dù những tiến bộ lớn nhất nói chung đã liên quan đến việc nghiên cứu cấu trúc được tạo ra bởi con người. Các nhà khoa học máy tính đã sử dụng phương pháp phân tích mạng để nghiên cứu các trang web, lưu lượng truy cập Internet, phổ biến thông tin… Phương tiện truyền thông đang ngày càng tham gia tích cực vào trong cuộc sống thường nhật của hàng trăm triệu người dân, trong đó có mạng xã hội – một kênh thông tin có tốc độ lan truyền rất nhanh, phân tích mạng xã hội là một yêu cầu đặt ra và kết quả phân tích được sử dụng trong nhiều lĩnh vực… Phạm vi bài thu hoạch này tôi xin trình bày lại phần kiến thức tìm hiểu được của mình sau tìm hiểu về mạng xã hội gồm 2 phần chính:Phần 1 Phân tích mạng xã hội, phần 2 xây dựng thuật toán tính Betweenness theo thuật toán của Ulrik Brandes - Department of Computer & Information Science, University of Konstanz. trong bài báo A Faster Algorithm for Betweenness Centrality (2001). Qua đây tôi cũng xin chân thành gởi lời cảm ơn đến PGS TS Đỗ Phúc đã chuyển tải những bài giảng cho chúng tôi qua cách thể hiện sinh động của Thầy. Tôi cũng rất cảm ơn các bạn cùng lớp đã đóng góp những tài liệu quý báu làm cơ sở cho tôi thực hiện bài tiểu luận này. HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc Mục lục HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc Nội dung Chương I: PHÂN TÍCH MẠNG XÃ HỘI I.1 Giới thiệu mạng xã hội Mạng xã hội, hay gọi là mạng xã hội ảo, là dịch vụ nối kết các thành viên cùng sở thích trên Internet lại với nhau với nhiều mục đích khác nhau không phân biệt không gian và thời gian. Mạng xã hội có những tính năng như chat, e-mail, phim ảnh, voice chat, chia sẻ file, blog và xã luận. Mạng đổi mới hoàn toàn cách cư dân mạng liên kết với nhau và trở thành một phần tất yếu của mỗi ngày cho hàng trăm triệu thành viên khắp thế giới. Các dịch vụ này có nhiều phương cách để các thành viên tìm kiếm bạn bè, đối tác: dựa theo group (ví dụ như tên trường hoặc tên thành phố), dựa trên thông tin cá nhân (như địa chỉ e-mail hoặc screen name), hoặc dựa trên sở thích cá nhân (như thể thao, phim ảnh, sách báo, hoặc ca nhạc), lĩnh vực quan tâm: kinh doanh, mua bán I.2 Một số khái niệm I.2.1 Network Trong phân tích mạng xã hội, khái niệm về lý thuyết đồ thị được dùng để hiểu và giải thích các hiện tượng xã hội. Một mạng xã hội bao gồm một tập hợp những actor – có thể là một tổ chức hay cá nhân và giữa họ có nhiều loại quan hệ. HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc Mối quan hệ giữa các actor trên mạng được biểu diễn bằng đồ thị: có thể là đồ thị có hướng hoặc vô hướng tùy theo mối quan hệ giữa các actor, mỗi mối quan hệ giữa 2 actor được thể hiện bằng một cạnh và có thể có hoặc không có trọng số. Ví dụ sau đây giả sử mạng có 4 actor và giữa họ có những mối quan hệ giao tiếp với nhau : Ann (1),Jim(2), Mary( 3), John (4) được mô phỏng bằng một đồ thị có hướng như sau: Dữ liệu của đồ thị có hướng này được biểu diễn bằng danh sách cạnh, hoặc ma trận kề như hình bên dưới Biểu diễn bằng đồ thị vô hướng: HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc I.2.2 Liên kết mạnh và liên kết yếu (Strong and weak Ties) Một trong những vai trò của các mạng là tạo ra cầu nối cục bộ cũng như toàn cầu để cung cấp những sự giải thích cho câu hỏi quá trình đơn giản xảy ra tại các nút riêng và lan truyền thông qua những liên kết phức tạp trong toàn bộ mạng. - Cạnh nối có thể biểu diễn cho các tương tác, dòng chảy của thông tin, hàng hoá, tương đồng / hội nhập, hoặc quan hệ xã hội, cụ thể đối với quan hệ xã hội - Nguyên tắc: triadic closure: trong mạng xã hội nếu 2 người một người bạn chung, thì trong tương lai có thể 3 người trở nên bạn của nhau (transitivity – trong phân tích mạng xã hội đây là thuộc tính của một kết nối) HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc Hình trsên minh họa: B, C có chung nút kề A, Cạnh BC sẽ có khả năng được hình thành…Giải thích dựa theo hình minh họa thuật ngữ “Triadic closure” xuất phát từ cạnh nối BC là cạnh thứ 3 của 3 cạnh tam giác ABC. Nếu ta quan sát ảnh chụp của mạng xã hội tại 2 điểm phân biệt trong một khoảng thời gian, sau đó trong ảnh chụp sau, ta sẽ thấy có một số lượng đáng kể các cạnh nối xuất hiện mà cạnh này là cạnh “đóng” của “tam giác – 2 nút có chung một nút kề” trong ảnh chụp trước đó. - Triadic closure có vai trò cơ bản là thúc đẩy sự hình thành độ đo mạng xã hội đơn giản và nắm được mức độ lan tỏa, phổ biến của nó, một trong số đó là hệ số phân nhóm (clustering cofficient). Hệ số phân nhóm của một nút được định nghĩa như 2 người bạn bất kỳ của nút đó làm bạn với nhau. Hay nói các khác hệ số phân nhóm của một nút là tỉ lệ mà những nút kề của nút đó nối với nhau bằng một cạnh nối trên tổng số các nút kề. Ví dụ trong hình trên hệ số phân nhóm của nút A trong hình (a) là 1/6 trong khi đó nút A trong hình (b) là 3/6. Tóm lại hệ số phân nhóm nằm trong phạm vi từ 0 đến 1, hệ số này bằng 0 khi không có cạnh nối nào của các nút bạn của nút đó, và bằng 1 khi các nút bạn của nó nối với nhau từng đôi một. Hệ số phân nhóm càng cao, phản ánh HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc mức độ liên kết hoạt động của nhóm các nút lân cận càng mạnh và ngược lại. - Cầu nối và cầu nối vùng (brigde and local brigde): cầu nối là cạnh nối mà kết nối 2 nhóm (lân cận). Trong hình sau mô tả mạng xã hội, trong mỗi cạnh của nó có nhãn là s(strong) mạnh hoặc w(Weak) yếu để mô tả mối quan hệ mạnh hoặc yếu. Trong hình sau, cạnh AB không phải là duy nhất kết nối 2 điểm A,B mặc dù có thể không nhận ra nó, có con đường xa hơn để kết nối từ A đến B là qua F, G và H. Loại cấu trúc này có thể coi là phổ biến hơn nhiều so với cầu nối trong mạng xã hội thật sự. Trong đồ thị trên cạnh nối 2 điểm A và B là cầu nối vùng (local brigdes), khi A và B không có chung đỉnh kề nào, nếu xóa đi cạnh nối A, B thì sẽ làm tăng khoảng cách đi từ A đến B. - Homophily (đồng tính) là mối quan hệ giữa những người đồng tính cách, quan điểm trạng thái, tín ngưỡng…nó dẫn đến sự hình thành các nhóm (cụm) đồng nhất, hình thành các mối quan hệ dễ dàng hơn. Sự đồng nhất HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc cực đoan có thể dẫn đến làm trái với tư tưởng chung trong một số ngữ cảnh (đó là hệ quả không mong muốn) I.2.3 Phần tử chủ chốt (Key Player) Trong mạng xã hội, phần tử chủ chốt được hiểu như là phần tử mà có đóng góp quan trọng trong sự gắn kết các phần tử trong mạng… như việc kết nối các actor, truyền thông tin … Để xếp hạng cho các các actor trong mạng dựa vào các chỉ số độ đo trung tâm (centrality). Để xác định được tập các phần tử chủ chốt trước hết cần phải biết được mục đích của việc tìm phần tử chủ chốt để xác định dựa vào chỉ số trung tâm nào ? Key player (Stephen P. Borgatti) được nhiều được chia làm 2 loại - Key player Problem/Negative (KPP_Neg): những key player tiêu cực là những phần tử mà khi loại bỏ nó khỏi mạng thì làm cho mạng kết quả trở nên phân mảnh (ít sự gắn kết) HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc - Key player Problem/Positive (KPP_Pos): những key player tích cực: là những phần tử có khả năng kết nối tất cả các node trong mạng. Để xác định được những phần tử đó ta phải dựa vào các độ đo trung tâm.  Các độ đo trung tâm o Degree: (bậc ) là chỉ số xác định số liên kết được nối với node, nếu đồ thị vô hướng, nếu đồ thị có hướng thì gồm tổng số liên kết vào và liên kết ra) là độ đo xác định sự kết nối, mức độ ảnh hưởng, phổ biến của nút. Độ đo này hữu ích khi dùng để xác định nút có là trung tâm lan truyền thông tin và ảnh hưởng ngay lập tức đến các node kề của nó. o Đường đi và đường đi ngắn nhất  Đường đi giữa hai node: là thứ tự các node (không lặp lại) kết nối giữa hai nút  Đường đi ngắn nhất giữa hai node là đường đi mà số cạnh kết nối giữa 2 node là ngắn nhất o Betweenness centrality của một nút: tổng tỉ lệ số con đường ngắn nhất đi qua nút i chia cho tổng số con đường ngắn nhất trong toàn mạng. chỉ số này thể hiện mức độ nút này nằm trên đường truyền thông tin giữa các nút khác trong mạng, và khi loại bỏ nút này thì làm mạng sẽ bị tách ra nhiều phần (phần này sẽ được trình bày kỹ hơn ở chương 2 trong thuật toán tìm Betweenness o Closeness centrality: là chiều dài của tất cả các đường đi ngắn nhất từ một nút đến tất cả các nút khác trên mạng, là chỉ số dùng để xác định tốc độ lan truyền thông tin từ một nút đến các nút khác trong mạng HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc o Eigenvector centrality: tỉ lệ thuật với eigenvector của các nút kề của nó, mục đích của chỉ số này để xác định nút nào có kết nối với nhiều nút được kết nối nhất Chương II: GIỚI THIỆU THUẬT TOÁN TÌM BETWEENNESS CENTRALITY Một công cụ cần thiết cho việc phân tích mạng xã hội là các chỉ số trung tâm (centrality), được định nghĩa dựa trên tập đỉnh của đồ thị. Chúng được thiết kế để xếp hạng các actor tùy theo vị trí của nó trong mạng và được hiểu như sự nổi bật của những actor đó khi nhúng vào cấu trúc xã hội. Nhiều chỉ số dựa trên đường đi ngắn nhất nối những cặp actor, đo lường … ví dụ như khoảng cách trung bình từ các actor khác hoặc tỉ lệ giữa đường đi ngắn nhất có chứa actor đó. Centrality là khái niệm cốt lõi trong phân tích mạng xã hội, trong đó Betweenness là một trong những chỉ số nổi bật nhất. Betweenness centrality là chỉ số rất quan trọng trong quá trình phân tích mạng, nhưng chi phí tính toán nó quá đắt. Trong phần này xin trình bày thuật toán có độ phức tạp về không gian là O(n+m) và độ phức tạp thời gian là trong khoảng O(nm) và O(nm+n 2 logn) cho đồ thị có trọng số và không có trọng số. trong đó m là số liên kết, n là số các actor trên mạng. Độ đo betweenness dựa trên đường đi ngắn nhất là một thước đo chuẩn trong nhiều nghiên cứu và triển khai các phần mềm phân tích mạng. HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang 10 [...]... lợi dụng những thực thể điển hình nằm rải rác, chúng ta đếm số đường đi ngắn nhất bằng thuật toán duyệt (traversal algorithm) Cả hai thuật toán BFS cho đồ thị không có trọng số và thuật toán Dijkstra cho đồ thị có trọng số bắt đầu từ một đỉnh nguồn s và mỗi bước đưa thêm đỉnh gần nhất vào tập đỉnh đã được thăm để tìm đường đi ngắn nhất từ đỉnh nguồn đến tất cả các đỉnh khác Trong quá trình này, chúng... II.4 Thuật toán tìm Betweenness (Ulrik Brandes 2001) - Betweenness được tính toán hiệu quả dựa trên thực tế khối số lượng từng cặp đỉnh phụ thuộc = có thể được tổng hợp mà không cần tính tất cả chúng một các rõ ràng Với mọi s,v ta có thể kết luận (1) Quan hệ đệ qui này khẳng định rằng sự phụ thuộc của đỉnh s vào một số đỉnh v có thể được dịch ra từ sự phụ thuộc vào những đỉnh trên các cạnh nằm ở xa Thuật. .. betweenness của CB[v] (v) HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang 15 Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc - Vì CB(v) = v), Thuật toán 1 tính betweenness bằng cách lặp lại đối với tất cả các đỉnh v, mỗi lầ tính toán (sv) cho đỉnh v có 2 bước: bước 1 là tìm kiếm theo chiều rộng: xác định khoảng cách và số đường đi ngắn nhất từ s, bước 2: lần ngược lại tất cả các đỉnh đã được đặt theo thứ... theo công thức (1) - Lưu ý rằng thuật toán này áp dụng chung cho đồ thị có hướng và vô hướng Với đồ thị vô hướng thì số điểm sẽ được ghi nhận gấp đôi so với đồ thị có hướng vì mỗi cặp đỉnh được xem xét 2 lần mỗi lần một HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang 16 Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc hướng Tổng quát, chỉ số trung tâm được tính bởi thuật toán 1 có thể được bình thường... Cheliotis (gcheliotis@nus.edu.sg) Communications and New Media, National University of Singapore, Social Media [3] Ulrik Brandes, the article “A Faster Algorithm for Betweenness Centrality 2001, the article “On Variants of Shortest-Path Betweenness Centrality and their Generic Computation” (2007) [5] Stephen P Borgatti , the article “Identifying sets of key players in a social network” [6] David Easley and... những đỉnh trên các cạnh nằm ở xa Thuật toán: Shortest path vertex betweenness (Brandes, 2001)  Input: đồ thị có hướng G=(V,E)  Dữ liệu: o hàng đợi Q, stack S có thể chứa tất cả các đỉnh v o dist[v]: khoảng cách từ đỉnh nguồn o Pred[v]: danh sách các đỉnh trước của v trong đường đi ngắn nhất o đỉnh nguồn đến v o : phụ thuộc của đỉnh nguồn trên v  Output: betweenness của CB[v] (v) HVTH: Bùi Thị Mỹ... đồ thị vô hướng, nếu đồ thị nhập vào là vô hướng (nếu không check vào thì hiểu như đồ thị có hướng) - Bước 4: Click vào button Nạp dữ liệu - Click vào button Degree Centrality để tính chỉ số Degree - Click vào button Tìm Key player để tìm tập các phần tử chủ chốt 3 Kết quả thực hiện a Đồ thị mặc định khi chạy chương trình HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang 17 Bài thu hoạch môn CSDL Nâng cao... - Một điểm đã được chỉ ra trong Freeman (1977), định nghĩa betweenness áp dụng cho đồ thị không liên thông không có gì thay đổi Mặc dù khoảng cách giữa hai đỉnh không được kết nối bởi một đường đi có hướng là không xác định, điều này cũng có nghĩa là số đường đi ngắn nhất giữa chúng là 0, 0 chính là kết quả mong muốn - Tóm lại: betweenness centrality theo truyền thống được xác định qua 2 bước: o 1:... khái niệm cơ bản trong phân tích mạng xã hội và chương trình demo hỗ trợ tìm phần tử chủ chốt trong mạng xã hội (mô phỏng) Hướng phát triển Báo cáo được viết sâu hơn, chi tiết hơn trong từng mục, cả những cái nhìn toàn diện về mạng xã hội và các lĩnh vực ứng dụng kết quả của mạng xã hội Chương trình demo viết cho mạng thật sự lớn và tìm phân tích online Vì thời gian làm bài báo cáo chuyên đề có hạn, thời... quen của cộng đồng mạng đặc biệt là giới trẻ Việc phân tích mạng xã hội là một yêu cầu cần thiết, kết quả phân tích đó được ứng dụng trong nhiều lĩnh vực khác nhau đặc biệt là trong kinh doanh, một lĩnh vực rất nhạy bén trong việc nhận thấy HVTH: Bùi Thị Mỹ Duyên MSHV CH1101079 Trang 19 Bài thu hoạch môn CSDL Nâng cao GVHD: PGS TS Đỗ Phúc khách hàng tiềm năng trong thế giới thu nhỏ này…Và nó cũng là một . Eigenvector centrality: tỉ lệ thuật với eigenvector của các nút kề của nó, mục đích của chỉ số này để xác định nút nào có kết nối với nhiều nút được kết nối nhất Chương II: GIỚI THIỆU THUẬT TOÁN TÌM BETWEENNESS. lại phần kiến thức tìm hiểu được của mình sau tìm hiểu về mạng xã hội gồm 2 phần chính:Phần 1 Phân tích mạng xã hội, phần 2 xây dựng thuật toán tính Betweenness theo thuật toán của Ulrik Brandes. rác, chúng ta đếm số đường đi ngắn nhất bằng thuật toán duyệt (traversal algorithm). Cả hai thuật toán BFS cho đồ thị không có trọng số và thuật toán Dijkstra cho đồ thị có trọng số bắt đầu từ

Ngày đăng: 10/04/2015, 13:21

Từ khóa liên quan

Mục lục

  • Chương I: PHÂN TÍCH MẠNG XÃ HỘI

    • I.1 Giới thiệu mạng xã hội

    • I.2 Một số khái niệm

      • I.2.1 Network

      • I.2.2 Liên kết mạnh và liên kết yếu (Strong and weak Ties)

      • I.2.3 Phần tử chủ chốt (Key Player)

      • Chương II: GIỚI THIỆU THUẬT TOÁN TÌM BETWEENNESS CENTRALITY

        • II.1 Định nghĩa và ký hiệu

        • II.2 Đếm số đường đi ngắn nhất

        • II.3 Gom nhóm các cặp đỉnh phụ thuộc

        • II.4 Thuật toán tìm Betweenness (Ulrik Brandes 2001)

        • CHƯƠNG TRÌNH DEMO

          • 1 Mô tả

          • 2 Hướng dẫn sử dụng

          • 3. Kết quả thực hiện

          • 3. Hướng phát triển

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

Tài liệu liên quan