Overlapping community detection
Overlapping means that some vertices may belong to more than one community.
Overlapping
EAGLE algorithm is presented to uncover both the overlapping and hierarchical community structures of networks.
EAGLE algorithm has two stages:◦ 1. A dendrogram is generated.◦ 2. We choose an appropriate cut which breaks the
dendrogram into communities.
agglomerativE hierarchicAl clusterinG based on maximaL cliquE
1.Find out all maximal cliques in the network(Bron-Kerbosch algorithm).Note that not all maximal cliques are taken into account.We set a threshold k and neglecting all the maximal cliques with the size smaller than k.
The first stage
k=4 k=3
2.Select the pair of communities with the maximum similarity,incorporate them into a new one and calculate the similarity between the new community and other communities.
C1, C2 :community1,2 k:the degree of the vertexA:the adjacency matrix of the networkm:the total number of edges in the network
3.Repeat step 2 until only one community remains.
Stage 2: The task of the second stage of the
algorithm EAGLE is to cut the dendrogram.
Ov:the number of communities to which vertex v belongs.
Community Overlap PRopagation
Algorithm
Step1:every vertex is given a unique label. After few iterations the label of vertex is the set of pairs (c,b). c: community identifier b: belong coefficientEx.The label of vertex x={(1,0.2),(2,0.3),(3,0.5)}
Step2:each vertex x updates its label by replacing it by the label used by the greatest number of neighbours.
iteration tat the community for vertex oft coefficien belong the:),(
vertex of neighbors ofnumber total:)(identifiercommunity :
vertex theofneighbor the:
)(
),(),(
th
)(1
cxxcb
xxNc
xy
xN
ycbxcb
t
xNyt
t
Step3: if the algorithm satisfies the stop criterion , the algorithm stop.
itration at the identifiercommunity each with labelled verticesofnumber the:
}1:),{(
itration at the usein sidentifiercommunity ofset the:
)}0),((:{
0),(,
tht
xcbVxt
tht
tt
tc
iVcicc
ti
xcbVxVci
t
1-tt
t
11
mm assoon asn propagatio thestop wereduced.last sidentifier ofnumber thesince
identifiercommunity each with labelled verticesofnumber minimum the:otherwise
if)},min(),(),((:),{(
mcm
iiqpicqccpcqpicm
tt
ttttt
Ex.b
c
d
a
e
f
g
(b,1)
(d,1)
(c,1) (a,1)
(e,1)
(f,1)
(g,1)(initialize)
(first iteration)
(c,1/3)(d,1/3)(a,1/3)
(c,1/3)(b,1/3)(a,1/3)
(d,1/4)(b,1/4)(e,1/4)(g,1/4)
(f,1/3)(g,1/3)(a,1/3)
(e,1/3)(f,1/3)(a,1/3)
Threshold:1/vV:the maximum number of communities to which any vertex can belong.Ex.threshold=1/2
(second iteration)
(third iteration)
(c,1/3)(e,1/3)(b,1/6)(d,1/6)
(c,1/3)(e,1/3)(b,1/6)(d,1/6)
(c,2/4)(f,1/4)(e,1/4)
(e,5/6)(g,1/6)
(g,1/6)(f,1/3)(e,3/6)