本篇論文是2014年AAAI的一篇論文。
思想也比較簡單,主要是採用SAE(棧式自編碼)無監督學習的形式,在graph上進行node embedding,將embedding得到的每個node的vector做爲輸入,進行graph cluster。論文中採用的是最常用的k-means方法來cluster。
算法如下:
step1 得到graph的n*n的鄰接矩陣S和度矩陣D
step2 將D’S作爲SAE的輸入,實際上是graph有n個node,作爲n個sample的訓練集輸入到 SAE中,每個sample的feature的維度是n表示該點與其他各點的連接情況。
step3 訓練SAE,文中採用的是稀疏自編碼的棧式形式。(自編碼器一般都採用lbfgs的最優化策略來bp,效率和效果較好)
step4 取棧底的AE的hidden層的vector作爲node embedding的結果
step5 將embedding結果作爲k-means的輸入,進行graph cluster,最後用nmi來評價cluster的結果
優點:
1.速度快,相比於譜聚類(涉及了EVD)
2.對於稀疏圖而言,SAE有更好的表達效果
3.SAE更易於擴展成更deep的structure
缺點:
1.需要遍歷所有的node,存儲所有node的鄰接點信息,對於big graph 可能在效率上不怎麼work
2.只是考慮了1-hop的信息,embedding的效果可能不夠好