LMF演算法學習筆記
社群發現的目標是在以社交網路為代表的複雜網路中發 現網路的模組結構特性,一個社群代表了一個節點的聚簇. 由於實際中不同社群之間可能共享某些節點,重疊社群發現 演算法的目標是能夠在複雜網路中發現重疊的社群. 重疊社 區 發 現 算 法 的 一 個 典 型 代 表 是 LMF 方 法[14]. LMF的基本思想是迭代地從不同的種子節點出發,以貪婪的 方式檢測社群.LMF在一次迭代過程中從不屬於任何社群 的節點中隨機選擇種子,並且為了確定某一節點是否屬於當 前社群,使用式(1)來度量社群中節點相對於社群的適應度 之和.
其中,kin和kout是社群中節點的內部度(與社群內部節點的連 接數量)和外部度(與社群外部節點的連線數量);α是正實 數,用於控制社群大小,α越小,社群越大. 基於該度量方法,LMF在檢測過程中迭代地評估已經在 社群中的節點的所有鄰居節點,找到其中加入社群時能夠增 加社群適應度的節點,並且選擇其中的最佳貢獻者加入到社 區中.一旦新增新節點,LMF再次評估社群中已經存在的節 點對社群適應度的貢獻,並移除貢獻度為負的節點,即排除該 節點能夠增加社群適應度.當所有鄰居的貢獻度為負時,對 一個社群的貪婪發現就此結束.當網路中的所有節點都已分 配社群時,整個社群發現過程將停止.
有結點A和無結點A適應度變化量:
發現結點A的自然群落演算法步驟(假設A在G中):
1.在G的所有鄰居節點(鄰居結點不在G內)上執行迴圈
2.將適應度最大的鄰居結點加在G上,活得新的G
3.重新計算G中每個結點的適應度
4.如果一個結點的適應度為負,則從G中刪除,生成一個新的G
5.如果4發生,重複第三步,否則從1重複
當步驟1中的所有都有負適應度時,程式結束。
這個過程對應於適應度函式的一種貪婪優化,因為在每次移動時,都要尋找可能的最大增長
自然群落的發現方法:
1.隨機選取結點A
2.檢測A的自然群落
3.隨機選取一個尚未分配到任何組的結點B
4.檢測結點B的自然群落,探測所有結點,不考慮他們可能屬於其他組
5.重複步驟3
當所有結點被分配到至少一個組時,演算法停止。
參考文獻:
1. 劉 春 張國良,一種基於重疊社群發現的軟體特徵提取方法
相關文章
- 演算法學習筆記演算法筆記
- 機器學習演算法學習筆記機器學習演算法筆記
- 匈牙利演算法學習筆記演算法筆記
- 學習筆記----KM演算法筆記演算法
- 學習筆記----RMQ演算法筆記MQ演算法
- EM演算法學習筆記演算法筆記
- Floyd演算法學習筆記演算法筆記
- Tarjan 演算法學習筆記演算法筆記
- 演算法學習筆記:Kosaraju演算法演算法筆記
- 類歐幾里得演算法學習筆記演算法筆記
- 《演算法導論》學習筆記演算法筆記
- 莫隊演算法學習筆記演算法筆記
- 演算法學習筆記(3.1): ST演算法演算法筆記
- 演算法學習筆記(1)- 演算法概述演算法筆記
- 演算法學習筆記:2-SAT演算法筆記
- 智慧演算法學習筆記(一) (轉)演算法筆記
- [演算法學習筆記] 並查集演算法筆記並查集
- 演算法學習筆記(40): 具體數學演算法筆記
- numpy的學習筆記\pandas學習筆記筆記
- 【演算法學習筆記】概率與期望DP演算法筆記
- 【演算法學習筆記】快速傅立葉變換演算法筆記
- 統計學習方法筆記-EM演算法筆記演算法
- 學習筆記----快速冪取模演算法筆記演算法
- 演算法學習筆記(23):杜教篩演算法筆記
- 強化學習筆記之【SAC演算法】強化學習筆記演算法
- [演算法學習筆記] 差分約束演算法筆記
- 演算法學習筆記(18):珂朵莉樹演算法筆記
- 強化學習演算法筆記之【DDPG演算法】強化學習演算法筆記
- IT學習筆記筆記
- 學習筆記筆記
- 演算法學習筆記(16): 組合數學基礎演算法筆記
- 【演算法學習筆記】篩法(演算法翻譯類)演算法筆記
- 普通平衡樹學習筆記之Splay演算法筆記演算法
- 【演算法學習筆記】生成樹問題探究演算法筆記
- 【演算法學習筆記】淺談懸線法演算法筆記
- 機器學習學習筆記之——演算法鏈與管道機器學習筆記演算法
- 「學習筆記」SPFA 演算法的最佳化筆記演算法
- 演算法學習筆記(5): 最近公共祖先(LCA)演算法筆記