日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > ChatGpt >内容正文

ChatGpt

LOUVAIN——社交网络挖掘之大规模网络的社区发现算法

發(fā)布時(shí)間:2023/12/10 ChatGpt 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LOUVAIN——社交网络挖掘之大规模网络的社区发现算法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

LOUVAIN——社交網(wǎng)絡(luò)挖掘之大規(guī)模網(wǎng)絡(luò)的社區(qū)發(fā)現(xiàn)算法

===

算法來源

該算法來源于文章Fast unfolding of communities in large networks,簡(jiǎn)稱為L(zhǎng)ouvian。

算法原理

Louvain算法是基于模塊度(Modularity)的社區(qū)發(fā)現(xiàn)算法,該算法在效率和效果上都表現(xiàn)比較好,并且能夠發(fā)現(xiàn)層次性的社區(qū)結(jié)構(gòu),其優(yōu)化的目標(biāo)是最大化整個(gè)圖屬性結(jié)構(gòu)(社區(qū)網(wǎng)絡(luò))的模塊度。

其中需要理解的核心點(diǎn)有:

  • a、模塊度Modularity的定義,這個(gè)定義是描述社區(qū)內(nèi)緊密程度的值Q;
  • b、模塊度增量delta Q,即把一個(gè)孤立的點(diǎn)放入一個(gè)社區(qū)C后,計(jì)算Modularity的變化,其中計(jì)算過程的要點(diǎn)是,首先計(jì)算1個(gè)點(diǎn)的Modularity,和社區(qū)C的Modularity,再計(jì)算合并后新社區(qū)的Modularity,新社區(qū)的Modularity減去前兩個(gè)Modularity就是delta Q。

對(duì)上述公式的理解是,將delta Q展開其等價(jià)于1/2 *( k_i,in/m - Sum_tot/m *ki/m ),其中k_i,in/m表示的是將孤立的節(jié)點(diǎn)和社區(qū)C放在一起對(duì)整個(gè)網(wǎng)絡(luò)Modularity的影響,而Sum_tot/m和ki/m分別表示孤立的節(jié)點(diǎn)和社區(qū)C分開式分別對(duì)整個(gè)網(wǎng)絡(luò)Modularity的影響,所以他們的差值就反應(yīng)了孤立的節(jié)點(diǎn)放入社區(qū)C前后對(duì)整個(gè)網(wǎng)絡(luò)Modularity的影響。

算法的計(jì)算過程如下:

  • a、每個(gè)點(diǎn)作為一個(gè)community,然后考慮每個(gè)community的鄰居節(jié)點(diǎn),合并到community,然后看delta Q;找到最大的正delta Q,合并點(diǎn)到community;多進(jìn)行幾輪,至不再變動(dòng),那么結(jié)束;
    其中存在的問題是,不同的節(jié)點(diǎn)訪問順序?qū)?dǎo)致不同的結(jié)果,試驗(yàn)中發(fā)現(xiàn)這個(gè)順序?qū)Y(jié)果影響不大,但是會(huì)在一定程度上影響計(jì)算時(shí)間。

  • b、將新的community作為點(diǎn),重復(fù)上述過程。那么如何確定新的點(diǎn)之前的權(quán)重呢?答案是將兩個(gè)community之間相鄰的點(diǎn)之間的權(quán)重和作為兩個(gè)community退化成一個(gè)點(diǎn)后的新的權(quán)重。

該算法的優(yōu)點(diǎn)主要有3個(gè):a、易于理解;b、非監(jiān)督;和c、計(jì)算快速,最后我們可以得到的結(jié)果是層次化的社區(qū)發(fā)現(xiàn)結(jié)果。

spark實(shí)現(xiàn)

https://github.com/Sotera/spark-distributed-louvain-modularity

Louvain結(jié)果示意圖


算法的改進(jìn)

還有其加速實(shí)現(xiàn)的論文,文章的題目是:A New Randomized Algorithm for Community Detection in Large Networks,其實(shí)現(xiàn)方式比較直接,就是考慮一個(gè)點(diǎn)周圍的百分之多少點(diǎn)進(jìn)行歸并。可以在spark下面通過類似于多路歸并來實(shí)現(xiàn)。

其他參考資料

  • http://www.cnblogs.com/allanspark/p/4197980.html
  • https://www.quora.com/Is-there-a-simple-explanation-of-the-Louvain-Method-of-community-detection

總結(jié)

以上是生活随笔為你收集整理的LOUVAIN——社交网络挖掘之大规模网络的社区发现算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。