community detection algorithms
TRANSCRIPT
![Page 1: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/1.jpg)
Community Detection Algorithms
DIRECTED BY : ALIREZA ANDALIB
![Page 2: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/2.jpg)
![Page 3: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/3.jpg)
Member-Based Community Detection
1-Similarity characteristics are more often in the same community
Important Node Feature : node similarity - node degree(familiarity) - node reachability
similarity is based on overlap between the neighborhood
Two Methods to find similarity:
![Page 4: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/4.jpg)
The similarity values between nodes v2 and v5 are :
![Page 5: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/5.jpg)
Member-Based Community Detection
2- sub graphs based on node degrees is a clique
We can cut graph to complete sub graphs -> NP harduse brute force-polynomial solvable - use cliques as core of community
Brute-force clique identification Method -> can find all maximal cliques in a graph
Clique percolation method -> CMP
![Page 6: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/6.jpg)
![Page 7: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/7.jpg)
![Page 8: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/8.jpg)
Though sharing no neighborhood overlap, the social circles of these players (coach, players, fans, etc.) might look quite similar due to their social status. In other words, nodes are regularly equivalent when they are connected to nodes that are themselves similar (a self-referential definition).
![Page 9: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/9.jpg)
Member-Based Community Detection
3-The two extremes of reachability
(1) there is a path between them (regardless of the distance)
BFS & DFS Methods ->is not useful in large community
(2) so close to be immediate neighbors
we can find shortest paths between their nodes in Clique
but There are predefined sub graphs, with roots in community
![Page 10: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/10.jpg)
![Page 11: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/11.jpg)
Group-Based Community DetectionIn graph-based clustering, we cut the graph into several partitions
Cut size = how many cut edge and the summation of weights
12 4
Minimum Cut
Are not perfect coz often find singleton
nodsBalance Cut More Balance Cut
![Page 12: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/12.jpg)
Group-Based Community Detection1-balance partitioning mod :
Graph G = (V,E) (Vertices, Edge) to K partition that have Pi vertices
P = (P1, P2, P3, ....... , Pk) , Pi ∩ Pj = 0 , =V , ¯Pi=V-Pi
![Page 13: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/13.jpg)
Group-Based Community Detection
1-balance partitioning mod in matrix format :
Let matrix X Xi,j= 1 if node i is in community j , otherwise Xi,j= 0
Let D = diag(d1, d2, …. ,dn)
X’AX -> edge inside i community
![Page 14: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/14.jpg)
Graph(G) Adjacency matrix(A)
1
7
4
2 6
10
53
8 9
Graph(G) with 3 community
1
3
2
Community matrix(X)Degree matrix(D)
![Page 15: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/15.jpg)
Group-Based Community Detection
Robust Communities:
goal is to find sub graphs robust enough such that removing edges or nodes does not disconnect the sub graph
K-vertex connected graph method -> we must find minimum number of nodes that must be removed to disconnect the graph =K
minimum degree for any node in the graph should not be less than k
![Page 16: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/16.jpg)
Group-Based Community Detection
Modular Communities:
How community structure found is at random(structures must far from random)
G(V, E) , |E| = m , we have degrees but don’t have Edges , v
Consider vi , vj nodes with di , dj degrees P(connect vi to vj ) = =
SO number of edges between vi and vj ->
![Page 17: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/17.jpg)
Group-Based Community DetectionModular Communities:
modularity maximization try to maximize this distance
Consider Graph G = (V,E) (Vertices, Edge) to K partition that have Pi vertices P = (P1, P2, P3, ....... , Pk)
For partition Px this distance can be defined
generalize by partitioning P with k partitions
![Page 18: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/18.jpg)
Group-Based Community Detection
Modular Communities:
In all graph this distance is defined
And in matrix form
![Page 19: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/19.jpg)
Group-Based Community Detection
Dense Communities:
Cliques , clubs, and clans are examples of connected dense
we focus on sub graphs that should be disconnected
We can utilize the brute-force clique identification algorithm
Density
![Page 20: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/20.jpg)
Group-Based Community Detection
Hierarchical Communities:
community can have sub/super communities. Girvan-Newman algorithm designed for divisive hierarchical clustering
Girvan-Newman have measure called “edge between ness” removes edges with higher edge between ness.
For an edge E, edge between ness is defined as the number Edge of shortest paths between node pairs (Vi , Vj) such that the shortest path Between ness between Vi and Vj passes through E.
![Page 21: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/21.jpg)
Group-Based Community Detection
Hierarchical Communities (Girvan-Newman Algorithm):
1. Calculate edge between ness for all edges in the graph.
2. Remove the edge with the highest between ness
3. Recalculate between ness for all edges a edged by the edge removal
4. Repeat until all edges are removed
![Page 22: Community detection algorithms](https://reader036.vdocument.in/reader036/viewer/2022062412/5874c6071a28ab8f508b672f/html5/thumbnails/22.jpg)
Group-Based Community DetectionHierarchical Communities: