ÂÛÎÄÔĶÁ|struc2vec: Learning Node Representations from Structural Identity
Abstract
struc2vec ʹÓòã´Î½á¹¹À´ºâÁ¿²»Í¬³ß¶ÈµÄ½ÚµãÏàËÆÐÔ,²¢¹¹½¨Ò»¸ö¶à²ãͼÀ´±àÂë½á¹¹ÏàËÆÐÔ²¢Îª½ÚµãÉú³É½á¹¹ÉÏÏÂÎÄ¡£
Introduction
È·¶¨½Úµã½á¹¹Éí·ÝµÄ×î³£¼ûµÄʵÓ÷½·¨ÊÇ»ùÓÚ¾àÀë»òµÝ¹é¡£ ÔÚÇ°ÕßÖÐ,ÀûÓýڵãÁÚÓòµÄ¾àÀ뺯ÊýÀ´²âÁ¿ËùÓнڵã¶ÔÖ®¼äµÄ¾àÀë,È»ºóÖ´ÐоÛÀà»òÆ¥ÅäÒÔ½«½Úµã·ÅÈëµÈЧÀà ¡£ ºóÕßÖÐ,¹¹½¨¹ØÓÚÏàÁÚ½ÚµãµÄµÝ¹é,È»ºóµü´úÕ¹¿ªÖ±µ½ÊÕÁ²,×îÖÕÖµÓÃÓÚÈ·¶¨µÈЧÀà ¡£
ÁìÓòÏàËƵĽáµã¾ßÓнṹÏàËÆÐÔ,µ«¾àÀë±È½ÏÔ¶µÄÕâÑùµÄ½áµã¾Í²»¾ßÓÐÏàËÆÐÔ¡£ÈçÉÏͼ½áµãuºÍv¡£
DeepWalkºÍNode2vecÔڽṹµÈЧÐÔÈÎÎñÖбíÏֺܲî,ÒòΪÏÖÔÚµÄ ÍøÂ綼¾ßÓкÜÇ¿µÄͬÖÊÐÔ¡£
struc2vecµÄ¾ßÌå¹ý³ÌÈçÏÂ:
- ¶ÀÁ¢ÓÚ½ÚµãºÍ±ßÊôÐÔÒÔ¼°ËüÃÇÔÚÍøÂçÖеÄλÖÃÀ´ÆÀ¹À½ÚµãÖ®¼äµÄ½á¹¹ÏàËÆÐÔ¡£ Òò´Ë,¾ßÓÐÏàËƾֲ¿½á¹¹µÄÁ½¸ö½Úµã½«±»ÊÓΪ¶ÀÁ¢ÓÚÆäÁÚÓòÖеÄÍøÂçλÖúͽڵã±êÇ©¡£ ÎÒÃǵķ½·¨Ò²²»ÐèÒªÁ¬½ÓÍøÂç,²¢ÔÚ²»Í¬µÄÁ¬½Ó×é¼þÖÐʶ±ð½á¹¹ÏàËƵĽڵ㡣
- ½¨Á¢²ã´Î½á¹¹À´ºâÁ¿½á¹¹ÏàËÆÐÔ,ÔÊÐí¶Ô½á¹¹ÏàËÆÐԵĺ¬ÒåÖð½¥Ìá³ö¸üÑϸñµÄ¸ÅÄî¡£ ÌرðÊÇÔÚ²ã´Î½á¹¹µÄ×îµ×²ã,½ÚµãÖ®¼äµÄ½á¹¹ÏàËƶȽöÈ¡¾öÓÚËüÃǵĶÈÊý,¶øÔÚ²ã´Î½á¹¹µÄ¶¥²¿,ÏàËÆÐÔÈ¡¾öÓÚÕû¸öÍøÂç(´Ó½ÚµãµÄ½Ç¶ÈÀ´¿´)¡£
- Ϊ½ÚµãÉú³ÉËæ»úÉÏÏÂÎÄ,ÕâЩ½ÚµãÊǽṹÏàËƽڵãµÄÐòÁÐ,ͨ¹ý±éÀú¶à²ãͼ(¶ø²»ÊÇÔʼÍøÂç)µÄ¼ÓȨËæ»úÓÎ×߹۲쵽¡£ Òò´Ë,¾³£³öÏÖÔÚÏàËÆÉÏÏÂÎÄÖеÄÁ½¸ö½Úµã¿ÉÄܾßÓÐÏàËƵĽṹ¡£
¶Ô±ÈËã·¨:DeepWalk,Node2vec,RolX¡£
Related Work
DeepWalk:ÈôÁ½¸ö½ÚµãµÄ¾àÀë(¼´ÌøÊý)´óÓÚSkip-GramµÄ´°¿Ú´óС,ÕâÖֽṹÏàËƾͱ»ºöÂÔÁË¡£
sub-graph2vec:ʹÓÃÁÚ¾Ó½ÚµãÉú³ÉÉÏÏÂÎÄ,½á¹¹ÉϷdz£ÏàËÆ(µ«Î´Í¨¹ý²âÊÔ)ÇÒ¾ßÓзÇÖصþÁÚ¾ÓµÄÁ½¸ö½ÚµãÔÚ¿Õ¼äÉÏ¿ÉÄܲ¢²»½Ó½ü¡£
RolX:¡¤¡¤¡¤
Strcu2vec
²½Öè:
- È·¶¨²»Í¬ÁÚÓò´óСµÄͼÖÐÿ¸ö¶¥µã¶ÔÖ®¼äµÄ½á¹¹ÏàËÆÐÔ¡£ ÕâÔÚ½ÚµãÖ®¼ä½á¹¹ÏàËÆÐԵĶÈÁ¿ÖÐÒýÈëÁ˲ã´Î½á¹¹,ÌṩÁ˸ü¶àÐÅÏ¢À´ÆÀ¹À²ã´Î½á¹¹µÄÿ¸ö¼¶±ðµÄ½á¹¹ÏàËÆÐÔ¡£
- ¹¹½¨Ò»¸ö¼ÓȨµÄ¶à²ãͼ,ÆäÖÐÍøÂçÖеÄËùÓнڵ㶼´æÔÚÓÚÿһ²ãÖÐ,ÿһ²ã¶ÔÓ¦ÓÚºâÁ¿½á¹¹ÏàËÆÐԵIJã´Î½á¹¹µÄÒ»¸ö¼¶±ð¡£´ËÍâ,ÿ²ãÄÚÿ¸ö½Úµã¶ÔÖ®¼äµÄ±ßȨÖØÓëÆä½á¹¹ÏàËÆÐԳɷ´±È¡£
- ʹÓöà²ãͼΪÿ¸ö½ÚµãÉú³ÉÉÏÏÂÎÄ¡£ÌرðÊÇ,ʹÓÃÓÐÆ«Ëæ»úÓÎ×ßÀ´Éú³É½ÚµãÐòÁС£ÕâЩÐòÁпÉÄÜ°üÀ¨½á¹¹¸üÏàËƵĽڵ㡣
- Ó¦ÓÃÒ»ÖÖ¼¼Êõ´Ó½ÚµãÐòÁиø¶¨µÄÉÏÏÂÎÄÖÐѧϰDZÔÚ±íʾ,ÀýÈç,SkipGram¡£
Measuring structural similarity
G=(V,E),
R
k
(
u
)
±í
ʾ
¾à
Àë
½á
µã
u
Ϊ
k
µÄ
½á
µã
¼¯
R_k(u)±íʾ¾àÀë½áµãuΪkµÄ½áµã¼¯
Rk?(u)±íʾ¾àÀë½áµãuΪkµÄ½áµã¼¯
s
(
S
)
±í
ʾ
½á
µã
¼¯
ºÏ
S
€
V
µÄ
ÓÐ
Ðò
¶È
Êý
Ðò
ÁÐ
s(S)±íʾ½áµã¼¯ºÏS€VµÄÓÐÐò¶ÈÊýÐòÁÐ
s(S)±íʾ½áµã¼¯ºÏS€VµÄÓÐÐò¶ÈÊýÐòÁÐ
ͨ¹ý±È½Ï½ÚµãuºÍv¼ä¾àÀëΪkµÄ»·Â·ÓÐÐò¶ÈÐòÁÐ,¿ÉÒÔÊ©¼Ó²ã´Î½á¹¹À´²âÁ¿½á¹¹ÏàËÆÐÔ¡£ÌرðµØ,µ±¿¼ÂÇËüÃÇµÄ k ÌøÁÚÓò(¾àÀëСÓÚ»òµÈÓÚ k µÄËùÓнڵãÒÔ¼°ËüÃÇÖ®¼äµÄËùÓбß)ʱ,ÈÃ
f
k
(
u
,
v
)
f_k(u,v)
fk?(u,v)±íʾ u ºÍ v Ö®¼äµÄ½á¹¹¾àÀë¡£ ÌرðµØ,¶¨Òå:
f
k
(
u
,
v
)
=
f
k
?
1
(
u
,
v
)
+
g
(
s
(
R
k
(
u
)
)
,
s
(
R
k
(
v
)
)
)
,
k
¡Ý
??
0
a
n
d
¨O
R
k
(
u
)
¨O
,
¨O
R
k
(
v
)
¨O
¡Ý
?
0
;
f_k(u,v)=f_{k-1}(u,v)+g(s(R_k(u)),s(R_k(v))),k \geq\;0 \quad and |R_k(u)|,|R_k(v)| \geq\ 0;
fk?(u,v)=fk?1?(u,v)+g(s(Rk?(u)),s(Rk?(v))),k¡Ý0and¨ORk?(u)¨O,¨ORk?(v)¨O¡Ý?0; ÆäÖÐ
g
(
D
1
,
D
2
)
¡Ý
??
0
g(D_1,D_2) \geq\; 0
g(D1?,D2?)¡Ý0±íʾ¶ÈÊýÐòÁÐ
D
1
,
D
2
D_1,D_2
D1?,D2?Ö®¼äµÄ¾àÀë,ÇÒ
f
?
1
=
0
f_{-1}=0
f?1?=0,
f
k
(
u
,
v
)
f_k(u,v)
fk?(u,v)ÊǵÝÔöµÄ,µ±ÇÒ½öµ±½ÚµãuºÍ½ÚµãvÖ®¼ä¾àÀ벻СÓÚk¡£ÈôuºÍvÖ®¼äÊÇͬ¹¹µÄ,²¢ÇÒuÓ³Éäµ½v,Ôò
f
k
?
1
(
u
,
v
)
=
0
f_{k-1}(u,v)=0
fk?1?(u,v)=0¡£
²ÉÓÃDTW(Dynamic Time Warping)À´²âÁ¿Á½¸öÓÐÐò¶ÈÐòÁÐÖ®¼äµÄ¾àÀë,Ëü¿ÉÒԺܺõش¦Àí²»Í¬´óСµÄÐòÁв¢ÇÒËÉÉ¢µØ±È½ÏÐòÁÐģʽ¡£Ê¹ÓÃËüµÄÔÒòÊÇËü³Í·£ÁËÁ½¸ö½ÚµãµÄ¶ÈÊý¶¼±È½ÏСʱÁ½ÕߵIJîÒì¡£¸ø¶¨ÐòÁÐÔªËصľàÀ뺯Êý
d
(
a
,
b
)
d(a,b)
d(a,b),DTWÆ¥Åäÿ¸öÔªËØ
a
¡Ê
A
,
b
¡Ê
B
a¡ÊA,b¡ÊB
a¡ÊA,b¡ÊB,ʹµÃÆ¥ÅäÔªËØÖ®¼äµÄ¾àÀë×ܺÍ×îС»¯¡£²ÉÓÃÒÔϾàÀ뺯Êý:
d
(
a
,
b
)
=
m
a
x
(
a
,
b
)
m
i
n
(
a
,
b
)
?
1
d(a,b)=\frac{max(a,b)}{min(a,b)}-1
d(a,b)=min(a,b)max(a,b)??1 µ±a=bʱ,Ôò
d
(
a
,
b
)
=
0
d(a,b)=0
d(a,b)=0¡£
Constructing the context graph
¹¹½¨²ã´Î´øȨͼ
k
?
k^*
k?±íʾÍøÂçµÄÖ±¾¶¡£Ã¿²ã
k
=
0
,
.
.
.
,
k
?
k=0,...,k^*
k=0,...,k?ÓÉÒ»¸ö´ø½Úµã¼¯VµÄ¼ÓȨÎÞÏòͼÐγÉ,Ò»²ãÖÐÁ½¸ö½ÚµãÖ®¼äµÄ±ßȨÖØÓÉÏÂʽ¸ø³ö:
w
k
(
u
,
v
)
=
e
?
f
k
(
u
,
v
)
,
k
=
0
,
.
.
.
,
k
?
w_k(u,v)=e^{-f_k(u,v)},k=0,...,k^*
wk?(u,v)=e?fk?(u,v),k=0,...,k? µÚk²ãµÄ½Úµãu»áÁ¬½Óµ½µÚk+1²ãºÍµÚk-1²ã¡£²ã¼äµÄ±ßȨÖØÈçÏÂ:
w
(
u
k
,
u
k
+
1
)
=
l
o
g
(
¦£
k
(
u
)
+
e
)
,
k
=
0
,
.
.
.
,
k
?
?
1
w(u_k,u_{k+1})=log(\Gamma_k(u)+e),k=0,...,k^*-1
w(uk?,uk+1?)=log(¦£k?(u)+e),k=0,...,k??1
w
(
u
k
,
u
k
?
1
)
=
1
,
k
=
1
,
.
.
.
,
k
?
w(u_k,u_{k-1})=1,k=1,...,k^*
w(uk?,uk?1?)=1,k=1,...,k?
ÆäÖÐ
¦£
k
(
u
)
\Gamma_k(u)
¦£k?(u)ÊÇÓëuÏà¹ØÇÒȨÖØ´óÓÚµÚk²ãÖÐÍêÕûµÄƽ¾ù±ßȨÖصıßÊý,ÈçÏÂ
¦£
k
(
u
)
=
¡Æ
v
¡Ê
V
1
(
w
k
(
u
,
v
)
>
w
k
£þ
)
\Gamma_k(u)=\sum_{v¡ÊV}1(w_k(u,v)>\overline{w_k})
¦£k?(u)=v¡ÊV¡Æ?1(wk?(u,v)>wk??) ÆäÖÐ
(
w
k
)
£þ
=
¡Æ
u
,
v
¡Ê
(
V
2
)
w
k
(
u
,
v
)
/
(
V
2
)
\overline{(w_k)}=\sum_{u,v¡Ê \begin{pmatrix}V \\ 2\end{pmatrix}} w_k(u,v)/ \begin{pmatrix} V \\ 2 \end{pmatrix}
(wk?)?=¡Æu,v¡Ê(V2?)?wk?(u,v)/(V2?)¡£
¦£
k
(
u
)
\Gamma_k(u)
¦£k?(u)¶ÈÁ¿Á˽ڵãuÓëµÚk²ãÆäËû½ÚµãµÄÏàËÆÐÔ¡£Èôµ±Ç°²ãÖÐÓÐÐí¶àÏàËƵĽڵã,ÄÇôËüÓ¦¸Ã¸ü¸Ä²ãÒÔ»ñµÃ¸üϸ»¯µÄÉÏÏÂÎÄ,ͨ¹ýÏòÉÏÒƶ¯Ò»²ã,ÏàËƽڵãµÄÊýÁ¿Ö»»á¼õÉÙ,×îºó,logº¯ÊýÖ»ÊǼõÉÙÁ˸ø¶¨²ãÖÐÓëuÏàËƵĽڵãµÄÊýÁ¿¡£
Generating context for nodes
²ÉÑù»ñÈ¡¶¥µãÐòÁÐ
Çë×¢Òâ,M ÍêÈ«²»Ê¹ÓñêÇ©ÐÅÏ¢À´²¶»ñ G ÖнڵãÖ®¼ä½á¹¹ÏàËÆÐԵĽṹ¡£ Óë֮ǰµÄ¹¤×÷Ò»Ñù,struct2vec ʹÓÃËæ»úÓÎ×ßÉú³É½ÚµãÐòÁÐÀ´È·¶¨¸ø¶¨½ÚµãµÄÉÏÏÂÎÄ¡£ ÌرðÊÇ,ÎÒÃÇ¿¼ÂÇÁËÒ»¸öÓÐÆ«Ëæ»úÓÎ×ß,ËüÔÚ M ÖÜΧÒƶ¯,¸ù¾Ý M µÄȨÖØ×ö³öËæ»úÑ¡Ôñ¡£ÔÚÿһ²½Ö®Ç°,Ëæ»úÓÎ×ßÊ×ÏȾö¶¨ÊǸıä²ã»¹ÊÇÔÚµ±Ç°²ãÉÏÓÎ×ß(¸ÅÂÊ q > 0 Ëæ»úÓÎ×ßÁôÔÚµ±Ç°²ã)¡£
¼øÓÚËü½«ÁôÔÚµ±Ç°²ã,ÔÚµÚk²ã´Ó½ÚµãuÓÎ×ßÖÁ½ÚµãkµÄ¸ÅÂÊΪ
p
k
(
u
,
v
)
=
e
?
f
k
(
u
,
v
)
Z
k
(
u
)
p_k(u,v)=\frac{e^{-f_k(u,v)}}{Z_k(u)}
pk?(u,v)=Zk?(u)e?fk?(u,v)? ÆäÖÐ
Z
k
(
u
)
=
¡Æ
v
¡Ê
V
,
v
¡Ù
u
e
?
f
k
(
u
,
v
)
Z_k(u)=\sum_{v¡ÊV,v¡Ùu}e^{-f_k(u,v)}
Zk?(u)=¡Æv¡ÊV,vªÁ?=u?e?fk?(u,v)ÊǵÚk²ãÖж¥µãuµÄ¹éÒ»»¯Òò×Ó¡£
Ëæ»úÓÎ×ßÒÔ¸ÅÂÊ 1 -q ¾ö¶¨¸Ä±ä²ã,²¢ÒÔÓë±ßȨÖسÉÕý±ÈµÄ¸ÅÂÊÒƶ¯µ½µÚ k + 1 ²ã»òµÚ k - 1 ²ã(²ãÔÊÐí)ÖеÄÏàÓ¦½Úµã¡£
p
k
(
u
k
,
u
k
+
1
)
=
w
(
u
k
,
u
k
+
1
)
w
(
u
k
,
u
k
+
1
)
+
w
(
u
k
,
u
k
?
1
)
p
k
(
u
k
,
u
k
?
1
)
=
1
?
p
k
(
u
k
,
u
k
+
1
)
p_k(u_k,u_{k+1})=\frac{w(u_k,u_{k+1})}{w(u_k,u_{k+1})+w(u_k,u_{k-1})} \\ p_k(u_k,u_{k-1})=1-p_k(u_k,u_{k+1})
pk?(uk?,uk+1?)=w(uk?,uk+1?)+w(uk?,uk?1?)w(uk?,uk+1?)?pk?(uk?,uk?1?)=1?pk?(uk?,uk+1?) ×¢Òâÿ´ÎÓÎ×ßÖÁÒ»¸ö²ãʱ,Ëü¶¼»á½«µ±Ç°¶¥µã×÷ΪÆäÉÏÏÂÎĵÄÒ»²¿·Ö,¶ÀÁ¢Óڸò㡣Òò´Ë,¶¥µã u ¿ÉÄÜÔÚµÚ k ²ã¾ßÓиø¶¨µÄÉÏÏÂÎÄ(ÓɸòãµÄ½á¹¹ÏàËÆÐÔÈ·¶¨),µ«ÔÚµÚ k + 1 ²ã¾ßÓиÃÉÏÏÂÎĵÄ×Ó¼¯,ÒòΪËæ×ÅÎÒÃÇÒƶ¯µ½¸ü¸ß²ã,½á¹¹ÏàËÆÐÔ²»»áÔö¼Ó¡£ ¿ç²ãµÄ·Ö²ãÉÏÏÂÎĵĸÅÄîÊÇËùÌá³ö·½·¨µÄ»ù±¾·½Ãæ¡£
×îºó,¶ÔÓÚÿ¸ö½Úµã u ¡Ê V ,ÔÚµÚ 0 ²ã¶ÔÓ¦µÄ¶¥µã¿ªÊ¼Ëæ»úÓÎ×ß¡£Ëæ»úÓÎ×ßÓй̶¨ÇÒÏà¶Ô½Ï¶ÌµÄ³¤¶È(²½Êý),²¢ÇҸùý³ÌÖظ´Ò»¶¨´ÎÊý,´Ó¶ø²úÉú¶à¸ö¶ÀÁ¢µÄÓÎ×ß(¼´½Úµãu µÄ¶à¸öÉÏÏÂÎÄ)¡£
Learning a language model
ÓïÑÔÄ£ÐÍѧϰ Skip-Gram
Hierarchical Softmax(·Ö²ãSoftmax),ʹÓöþÔª·ÖÀàÆ÷Ê÷¼ÆËãÌõ¼þ·ûºÅ¸ÅÂÊ¡£
¶ÔÓÚÿ¸ö½Úµã
v
j
¡Ê
V
v_j¡ÊV
vj?¡ÊV,·Ö²ãSoftmaxÔÚ·ÖÀàÊ÷ÖзÖÅäÒ»¸öÌض¨µÄ·¾¶,ÓÉÒ»×éÊ÷½áµã
n
(
v
j
,
1
)
,
n
(
v
j
,
2
)
,
.
.
.
,
n
(
v
j
,
h
)
,
Æä
ÖÐ
n
(
v
j
,
h
)
=
v
j
n(v_j,1),n(v_j,2),...,n(v_j,h),ÆäÖÐn(v_j,h)=v_j
n(vj?,1),n(vj?,2),...,n(vj?,h),ÆäÖÐn(vj?,h)=vj?¡£ÔÚÕâЩÉèÖÃÖÐ,ÎÒÃÇÓÐ
P
(
v
j
¨O
v
i
)
=
¡Ç
k
=
1
h
C
(
n
(
v
j
,
k
)
,
v
i
)
P(v_j|v_i)=\prod _{k=1}^hC(n(v_j,k),v_i)
P(vj?¨Ovi?)=k=1¡Çh?C(n(vj?,k),vi?) ÆäÖÐCÊÇ´æÔÚÓÚÊ÷ÖÐÿ¸ö½ÚµãµÄ¶þÔª·ÖÀàÆ÷¡£Çë×¢Òâ,ÓÉÓÚ Hierarchical Sofmax ÔÚ¶þ²æÊ÷ÉÏÔËÐÐ,ÎÒÃÇÓÐ$ h = O(log |V|)$¡£
Complexity and optimizations
O
(
k
?
n
3
)
O(k*n^3)
O(k?n3)
ÓÅ»¯ÈçÏÂ:
¼õÉÙ¶ÈÐòÁеij¤¶È(OPT1)¡£Í¨¹ý¶ÈÊýƵ´Îͳ¼ÆÀ´Ñ¹ËõÓÐÐò¶ÈÊýÐòÁС£Áî
A
¡®
ºÍ
B
¡®
A^`ºÍB`
A¡®ºÍB¡®·Ö±ð±íʾAºÍBµÄѹËõ¶ÈÐòÁС£ÓÉÓÚ
A
¡ä
ºÍ
B
¡ä
µÄ
Ôª
ËØ
ÊÇ
Ôª
×é
,
°´
Èç
ÏÂ
·½
ʽ
µ÷
Õû
D
T
W
³É
¶Ô
¾à
Àë
º¯
Êý
¡£
A'ºÍB'µÄÔªËØÊÇÔª×é,°´ÈçÏ·½Ê½µ÷ÕûDTW³É¶Ô¾àÀ뺯Êý¡£
A¡äºÍB¡äµÄÔªËØÊÇÔª×é,°´ÈçÏ·½Ê½µ÷ÕûDTW³É¶Ô¾àÀ뺯Êý¡£
d
i
s
t
(
a
,
b
)
=
(
m
a
x
(
a
0
,
b
0
)
m
i
n
(
a
0
,
b
0
)
?
1
)
m
a
x
(
a
1
,
b
1
)
dist(a,b) = (\frac{max(a_0,b_0)}{min(a_0,b_0)} - 1)max(a_1,b_1)
dist(a,b)=(min(a0?,b0?)max(a0?,b0?)??1)max(a1?,b1?) ÆäÖÐ
a
=
(
a
0
,
a
1
)
ºÍ
b
=
(
b
0
,
b
1
)
a=(a_0,a_1)ºÍb=(b_0,b_1)
a=(a0?,a1?)ºÍb=(b0?,b1?)·Ö±ðÊÇ
A
0
ºÍ
B
0
A_0ºÍB_0
A0?ºÍB0?ÖеÄÔª×é;
a
0
,
b
0
a_0,b_0
a0?,b0?ÊǶÈÊý;
a
1
ºÍ
b
1
a_1ºÍb_1
a1?ºÍb1?ÊdzöÏֵĴÎÊý¡£
¼õÉٳɶÔÏàËƶȼÆËãµÄ´ÎÊý(OPT2)¡£
¶ÔÓÚÿ¸ö¼¶±ðk,½«Ã¿¸ö½ÚµãµÄ³É¶ÔÏàËƶԼÆËãµÄÊýÁ¿ÏÞÖÆΪ
O
(
l
o
g
n
)
O(logn)
O(logn)¡£Áî
J
u
±í
ʾ
Ϊ
M
ÖÐ
½«
³É
Ϊ
½Ú
µã
u
µÄ
ÁÚ
¾Ó
½Ú
µã
¼¯
J_u±íʾΪMÖн«³ÉΪ½ÚµãuµÄÁھӽڵ㼯
Ju?±íʾΪMÖн«³ÉΪ½ÚµãuµÄÁھӽڵ㼯,Õâ¶ÔÓÚÿ¸ö¼¶±ð¶¼ÊÇÏàͬµÄ¡£
J
u
J_u
Ju?Ó¦¸Ã¾ßÓÐÔڽṹÉÏÓëu×îÏàËƵĽڵ㡣ΪÁËÈ·¶¨
J
u
J_u
Ju?,Ñ¡È¡¶ÈÊýÓëu×îÏàËƵĽڵ㡣¿ÉÒÔͨ¹ý¶ÔÍøÂçÖÐËùÓнڵãµÄÓÐÐò¶ÈÊýÐòÁÐ(¶ÔÓÚ½ÚµãuµÄ¶ÈÊý)Ö´Ðжþ·ÖËÑË÷,²¢ÔÚËÑË÷Íê³ÉºóÔÚÿ¸ö·½ÏòÉÏÈ¡
l
o
g
n
logn
logn¸öÁ¬Ðø½Úµã,À´½øÐÐÓÐЧ¼ÆËã¡£¼ÆËãËùÓнڵãµÄ
J
u
J_u
Ju?¾ßÓи´ÔÓ¶È
O
(
n
l
o
g
n
)
O(nlogn)
O(nlogn)¡£
¼õÉÙ²ãÊý(OPT3)
ÆÀ¹ÀÁ½¸ö½ÚµãÖ®¼ä½á¹¹ÏàËÆÐÔµÄÖØÒªÐÔËæ×ÅkµÄÔö´ó¶ø½µµÍ¡£µ± k ½Ó½ü
k
?
k^*
k? ʱ,»·µÄ¶ÈÊýÐòÁеij¤¶È±äµÃÏà¶Ô½Ï¶Ì,Òò´Ë
f
k
(
u
,
v
)
f_k (u,v)
fk?(u,v) Óë$f_{k-1}(u,v) $ûÓÐÌ«´óÇø±ð¡£ Òò´Ë,ÎÒÃǽ« M ÖеIJãÊýÏÞÖÆΪһ¸ö¹Ì¶¨³£Êý
k
¡®
<
k
?
k^` < k^*
k¡®<k? ,²¶»ñÓÃÓÚÆÀ¹À½á¹¹ÏàËÆÐÔµÄ×îÖØÒªµÄ²ã¡£ ÕâÏÔÈ»½µµÍÁ˹¹½¨ M µÄ¼ÆËãºÍÄÚ´æÒªÇó¡£
Experimental Evaluation
B
(
h
,
k
)
B(h,k)
B(h,k)±íʾΪ
(
h
,
k
)
(h,k)
(h,k)¸ÜÁåͼ,ËüÃǶ¼ÓÉÁ½¸öÍêÕûµÄͼ
K
1
,
K
2
K_1,K_2
K1?,K2?(ÿ¸ö¶¼º¬ÓÐh¸ö½Úµã)×é³É,ÇÒÓɳ¤¶ÈΪkµÄ·¾¶Í¼PÁ¬½Ó¡£Á½¸ö½Úµã
b
1
¡Ê
V
(
K
1
)
ºÍ
b
2
¡Ê
V
(
k
2
)
b_1¡ÊV(K_1)ºÍb_2¡ÊV(k_2)
b1?¡ÊV(K1?)ºÍb2?¡ÊV(k2?)×÷ΪÇÅÁº¡£Ê¹ÓÃ
p
1
,
.
.
.
,
p
2
±í
ʾ
V
(
P
)
p_1,...,p_2±íʾV(P)
p1?,...,p2?±íʾV(P),
Á¬
½Ó
b
1
ºÍ
p
1
,
b
2
ºÍ
p
k
Á¬½Ób_1ºÍp_1,b_2ºÍp_k
Á¬½Ób1?ºÍp1?,b2?ºÍpk?,´Ó¶øÁ¬½ÓÈý¸öͼ¡£
ͼ±íʾѧϰ½á¹ûÈçÏÂ(×ÅÉ«ÏàͬµÄ½Úµã¼´ÊÇËã·¨±íʾѧϰµÃµ½µÄ¾ßÓÐÏàËƽṹµÄ½Úµã):
¹¹½¨¹ØÓÚkarate_clubµÄ¾µÏñͼ,´Ó¶øÑéÖ¤¸÷Ëã·¨µÄ½ÚµãÏàËƶÈ,²¢¶ÔÏàÓ¦½Úµã½øÐÐÆ¥Åä¡£
ʵÑéÊý¾Ý¼¯:karate_club¡¢Brazilian air-trafc network¡¢American air-trafc network¡¢European air-trafc network
¶Ô±ÈËã·¨:deepwalk,node2vec,struc2vec(opt1|opt2|opt3)
ÆÀ¹ÀÖ¸±ê:µ¥±êǩ׼ȷ¶È(0/1,׼ȷÂÊ)
²Î¿¼ÎÄÏ×
ÂÛÎÄ:struc2vec: Learning Node Representations from Structural Identity
DTW¼ò½é
¡¾ÍøÂç±íʾѧϰ¡¿struc2vec
¡¾Graph Embedding¡¿Struc2Vec:Ëã·¨ÔÀí,ʵÏÖºÍÓ¦ÓÃ
|