本文目錄一覽:
- 1、複雜網絡中的無標度網絡和小世界網絡有什麼區別,各自的特徵是什麼?
- 2、冪律分佈——強者越強,弱者越弱
- 3、無標度網絡特性是什麼意思
- 4、圖計算引擎Neo4j和Graphscope有什麼區別?
- 5、無標度網絡的網絡度分佈怎麼計算?
- 6、NetworkX和Graphscope哪個運算速度更快?
複雜網絡中的無標度網絡和小世界網絡有什麼區別,各自的特徵是什麼?
無標度網絡和小世界網絡 的最大區別是他們的度分佈的差別
無標度網絡的度分佈是冪函數,小世界是鐘行的,
實際上小世界和 random network 的度分佈相似,點與點之間的連接是隨機的,所以都是鐘形正態分佈,但是小世界的點點之間路徑最短。
無標度網絡有巨集團和剩餘度的湧現,也就是說巨集團基本代表網絡的連接密度,少數的點有大量的連線,大多數點有少量或沒有連線。無標度的度分佈也引發了相關的對自組織臨界和熵厥的討論,是當今研究主要課題。
冪律分佈——強者越強,弱者越弱
在我們的生活中,你可能也注意到這樣的現象:
你看,這些現象都有一個共同的特徵,就是它的數據波動非常地大,少數點的數值特別高,大多數點的數值都很低,最大和最小點之間,可能相差好幾個數量級。在統計學上,把這種情況叫做 「 冪律分佈 」。
冪律分佈的形狀,是一個不斷下降的曲線,從最高的峰值開始急速下降,後面拖了一個長長的尾巴。
世界是不公平的,真實世界給我們展示的,就是這樣的冪律分佈。
第一個為冪律分佈命名的是經濟學家帕累托。他發現,在19世紀的意大利,極少數的富人賺走了絕大部分的錢,大部分家庭的收入都很低。他的這一發現被後人稱為 「帕累托法則」,也叫「二八定律」,也就是20%的人獲得了80%的收入。
《新約.馬太福音》 也這樣說:「凡是少的,就連他所有的,也要奪過來。凡是多的,還要給他,叫他多多益善。」
因此,冪律分佈也可以叫做「 馬太效應 」,就是 「窮者越窮,富者越富」 。
生活中,我們都喜歡有威信的人,我們總是想和混的好的人交朋友,我們同樣都喜歡去好的公司上班,比如騰訊,阿里,我們也喜歡明星,如果有一天發生了天底下最難以應對的混亂,我們希望寄人籬下,每個人都希望能依附最強者…等等這一切,歸根結底都是在擴展一個網絡,這種符合冪律分佈的網絡,又被稱為「無標度網絡」。
無標度網絡的特點,是節點的中心度相差懸殊,無法用均值或方差等指標來反映分佈的聚合或者離散程度,所以,我們把它叫做「無標度」。
真實世界的網絡,大部分都是無標度網絡,都遵循的是冪律分佈。
在社交網絡中,一個人的朋友越多,就越有可能認識新朋友。
在互聯網上,一個短視頻的點擊量越高,就越容易被更多的人看到。
在學術界,一篇論文被引用的數量越多,就越有可能被其他的論文引用。
冪律分佈產生的原因是優先連接。新加入到網絡中的節點,更傾向與超級節點產生連接。靜態地看,你會看到不公平,但是,動態地看,你會看到新的機會仍然在不斷湧現。
無標度網絡特性是什麼意思
我個人的理解就是一個網,有很多的節點,大部分節點只和幾個節點連接,而有極少數節點和很多的節點連接。網絡是靠這幾個節點支撐起來的,他們的狀態對網絡性能有極大影響。換句話說,大部分只和幾個節點相連的點被破壞對網絡性能影響不大,只要那幾個重要節點還活着網絡就能運行。
如果一個破壞是隨機發生的,攤上重要節點的可能性不大,破壞力相對較小,而蓄意攻擊重要節點會導致嚴重的後果。
參加百度百科
圖計算引擎Neo4j和Graphscope有什麼區別?
Neo4j是單機系統,主要做圖數據庫。GraphScope是由阿里巴巴達摩院智能計算實驗室研發的圖計算平台,是全球首個一站式超大規模分佈式圖計算平台,並且還入選了中 國科學技術協會「科創中 國」平台。Graphscope的代碼在github.com/alibaba/graphscope上開源。SSSP算法上,GraphScope單機模式下平均要比Neo4j快176.38倍,最快在datagen-9.2_zf數據集上快了292.2倍。
無標度網絡的網絡度分佈怎麼計算?
特別感謝版主的回復,我把程序改成這樣,這樣就不用對數坐標了:plot(log(
),log(p_ded),’.’);p=polyfit(
,p_ded,1)
z=polyval(p,
);hold
onplot(log(
),z,’r-‘);得到的圖是這樣的:如果單獨用plot(log(
),z,’r-‘);這句畫圖,結果是這樣的:仍然不是直線。如果我想把這個圖,按照圖1那樣擬合出一條直線來,需要怎麼做呢?
NetworkX和Graphscope哪個運算速度更快?
近年來,全球大數據進入加速發展時期,數據量呈現指數級爆髮式增長,而這些大量數據中不同個體間交互產生的數據以圖的形式表現,如何高效地處理這些圖數據成為了業界及其關心的問題。很過用普通關係數據無法跑出來的結果,用圖數據進行關聯分析會顯得異常高效。
提到處理圖數據,我們首先想到NetworkX,這是網絡計算上常用的Python包,可提供靈活的圖構建、分析功能。但是我們使用NetworkX跑大規模圖數據時,不僅經常碰到內存不足的問題,而且分析速度很慢,究其原因,是NetworkX只支持單機運行。通過網上搜索,新發現了一個名為GraphScope的系統不僅號稱兼容NetworkX的API,而且支持分佈式部署運行,性能更優。針對GraphScope和NetworkX的處理能力,我們參考圖計算中常用的測試框架LDBC,通過一組實驗來對比下二者的性能。
一、實驗介紹
為了比較兩者的計算效率,先用阿里雲拉起了配置為8核CPU,32GB內存的四台ECS,設計了三組比較實驗,分別是NetworkX單機下的計算性能,GraphScope單機多worker的計算性能以及GraphScope分佈式多機多worer的計算性能。
數據上,我們選取了SNAP開源的圖數據集twitter,來自 LDBC數據集的datagen-7_5-fb,datagen-7_7-zf和datagen-8_0-fb作為實驗數據,以下是數據集的基本信息:
· Twitter: 81,307個頂點,1,768,135條邊
· Datagen-7_5-fb: 633,432個頂點,34,185,747條邊,稠密圖
· Datagen-7_7-zf: 13,180,508個頂點,32,791,267條邊,稀疏圖
· Datagen-8_0-fb: 1,706,561個頂點,107,507,376條邊,這個數據集主要測試兩個系統可處理的圖規模能力
實驗設計上我選擇常用的SSSP、BFS、PageRank、WCC算法,以及較高複雜度的All Pair shortest Path length算法,以載圖時間,內存佔用和計算時間這三個指標為依據,對兩個系統進行計算性能的比較。
NetworkX是一個單機系統,在實驗中只考慮NetworkX在單機環境下的運行時間;GraphScope支持分佈式運行,故進行兩個配置,一個是單機4worker,另外一個配置是4台機器,每台機器4個worker。
二、實驗結果
首先,GraphScope的載圖速度比NetworkX顯著提升。
在前三個圖數據集中,無論是GraphScope的單機多worker模式,還是GraphScope的分佈式模式,載圖速度都比NetworkX快:
GraphScope單機模式載圖速度平均比NetworkX快5倍,最高紀錄——在datagen-7_5-fb上比NetworkX快了6倍。
分佈式模式下GraphScope的載圖時間比NetworkX平均快了27倍,最高紀錄——在datagen-7_7-zf數據集上比NetworkX快了63倍。
在datagen-8_0-fb數據集上,NetworkX因內存溢出無法載圖,GraphScope單機多worker和GraphScope分佈式載圖時間分別為142秒和13.6秒。
表一:載圖時間對比
載圖時間
NetworkX
GraphScope單機
GraphScope分佈式
11.2
3.1
1.8
datagen-7_5-fb
256
45.6
36.6
datagen-7_7-zf
316
71.3
50
datagen-8_0-fb
OOM
142
13.6
其次,GraphScope的內存使用效率比NetworkX顯著提升。
在datagen-8_0-fb數據集上,NetworkX在32G的內存上無法載完圖,而GraphScope僅需要24G的內存即可載入在datagen-8_0-fb數據集。
表二:內存佔用對比
內存佔用
NetworkX
GraphScope
datagen-7_5-fb
14G
6G
datagen-7_7-zf
28G
18G
datagen-8_0-fb
OOM
24G
再次,GraphScope的計算速度比NetworkX顯著提升。
SSSP算法上,GraphScope單機多worker模式平均要比NetworkX快22倍,最快在datagen-7_7-zf數據集上快了32倍。GraphScope分佈式模式下平均要比NetworkX快103倍,最快datagen-7_5-fb數據集上快了182倍。
表三: SSSP計算時間對比(單位:秒)
SSSP
NetworkX
GraphScope單機
GraphScope分佈式
2.45
1.32
0.28
datagen-7_5-fb
37.9
1.21
0.31
datagen-7_7-zf
5.84
0.18
0.03
datagen-8_0-fb
OOM
2.76
0.82
BFS算法上,GraphScope單機多worker模式平均要比NetworkX快13倍,最快datagen-7_5-fb數據集上快了22倍。GraphScope分佈式模式下平均要比NetworkX快16倍,最快在datagen-7_5-fb數據集上快了28倍。
表四: BFS計算時間對比(單位:秒)
BFS
NetworkX
GraphScope單機
GraphScope分佈式
1.53
0.16
0.17
datagen-7_5-fb
44.68
2.52
1.56
datagen-7_7-zf
7.98
0.75
0.72
datagen-8_0-fb
OOM
11.02
5.73
PageRank算法上,GraphScope單機多worker模式平均要比NetworkX快62倍,最快twitter數據集上快了80倍。GraphScope分佈式模式下平均要比NetworkX快65倍,最快在twitter數據集上快了71倍。
另外,PageRank計算過程中,NetworkX在datagen-7_7-zf上內存溢出,沒有完成計算,GraphScope單機多worker模式和分佈式模式計算時間分別為25秒和22秒;
表五:PageRank計算時間對比(單位:秒)
PageRank
NetworkX
GraphScope單機
GraphScope分佈式
24.01
0.37
0.33
datagen-7_5-fb
300
6.73
5.17
datagen-7_7-zf
OOM
19.31
7.79
datagen-8_0-fb
OOM
24.96
21.88
WCC算法上,GraphScope單機多worker模式平均要比NetworkX快44倍,最快在datagen-7_7-zf數據集上快了104倍。GraphScope分佈式模式下平均要比NetworkX快76倍,最快datagen-7_5-fb數據集上快了194倍。
表六: WCC計算時間對比(單位:秒)
WCC
NetworkX
GraphScope單機
GraphScope分佈式
0.6392
0.0296
0.0233
datagen-7_5-fb
26.03
0.25
0.13
datagen-7_7-zf
83.19
14.57
12.98
datagen-8_0-fb
OOM
0.34
0.4991
在複雜度極高的All pair shortest path length算法上,NetworkX在twitter圖上即內存溢出,無法計算。GraphScope在分佈式模式下完成了twitter圖的All pair shortest path length計算,耗時76分鐘。
表七: All Pair Shortest Path Length(單位:秒)
APSP
NetworkX
GraphScope單機
GraphScope分佈式
OOM
OOM
4575.87
三、總結
從實驗結果可以看到,在同等條件下,無論在載圖時間、內存佔用和計算時間上,GraphScope都要大大優於NetworkX,性能優化可以達到幾十倍甚至上百倍。
6979阿強
關注
@網絡算法工具 networkX igraph 的性能問題
alston_ethannical的博客
24
@網絡算法工具 networkX igraph 的性能問題 問題的提出 當我用 50萬數據去跑 networkX 開發出來的算法時,遇到了一個計算性能的問題,這個問題時很慢。 尋找答案 發現 networkX再性能方面比較差。當節點上萬,邊上十萬的時候,新能慢的問題就會顯現出來 為了解決圖算法問題,該怎麼辦呢 遇到問題,首先定義問題的邊界。也就是 先找到限制問題的條件。然後縮小問題範圍。我要解決的問題是:在解決圖算法相關的問題時,如何能夠快速計算出結果。但是目前的算法時用networks實現的。問題的根源是
開源!一文了解阿里一站式圖計算平台GraphScope
阿里雲開發者
2767
簡介:隨着大數據的爆發,圖數據的應用規模不斷增長,現有的圖計算系統仍然存在一定的局限。阿里巴巴擁有全球最大的商品知識圖譜,在豐富的圖場景和真實應用的驅動下,阿里巴巴達摩院智能計算實驗室研發並開源了全球首個一站式超大規模分佈式圖計算平台GraphScope,併入選中國科學技術協會「科創中國」平台。本文詳解圖計算的原理和應用及GraphScope的架構設計。一 什麼是圖計算圖數據對一組對象(頂點)及其關係(邊)進行建模,可以直觀、自然地表示現實世界中各種實體對象以及它們之間的關係。在大數據場景下,社交網絡、交
一文了解阿里一站式圖計算平台GraphScope_阿里云云棲號
10-2
GraphScope 提供了各類常用的分析算法,包括連通性計算類、社區發現類和 PageRank、中心度等數值計算類的算法,後續會不斷擴展算法包,在超大規模圖上提供與 NetworkX 算法庫兼容的分析能力。此外也提供了豐富的圖學習算法包,內置支持 Graph…
5大典型模型測試單機訓練速度超對標框架,飛槳如何做到…
10-28
導讀:飛槳(PaddlePaddle)致力於讓深度學習技術的創新與應用更簡單。在單機訓練速度方面,通過高並行、低開銷的異步執行策略和高效率的核心算子,優化靜態圖訓練性能,在Paddle Fluid v1.5.0的基準測試中,在7個典型模型上進行了測試(圖像領域…
強化學習經典算法筆記(六):深度Q值網絡 Deep Q Network
hhy_csdn的博客
9093
前期回顧 強化學習經典算法筆記(零):貝爾曼方程的推導 強化學習經典算法筆記(一):價值迭代算法Value Iteration 強化學習經典算法筆記(二):策略迭代算法Policy Iteration 強化學習經典算法筆記(三):蒙特卡羅方法Monte Calo Method 強化學習經典算法筆記(四):時間差分算法Temporal Difference(Q-Learning算法) 強化學習經典算…
GraphX和GraphFrame connectedComponent計算性能對比
高臭臭的博客
3046
測試文件:用Graph rmatGraph 1000000 2000000 去重後 494587個點,1997743個邊 運行環境:三台服務器,246 GB,core 71. 測試三個運行例子1:Graph connectedComponents 2:GraphFrame connectedComponents 3:GraphFrame connectedComponents setAlgor
…network、偽代碼、算法理解、代碼實現、tensorboard…
11-3
定義一個q_network函數來構建Q network,輸入遊戲狀態Q network並得到對所有動作的Q值。 網絡構成給為三個帶有池化的卷積層和一個全連接層。 tf.reset_default_graph()defq_network(X,name_scope):# Initialize layersinitializer=tf….
【讀書筆記】【機器學習實戰】第十一章:訓練深度神經網絡
MJ_Lee的博客
612
閱讀書籍為《Hands-On Machine Learning with Scikit-Learn TensorFlow》王靜源等翻譯的中文譯版《機器學習實戰,基於 Scikit-Learn 和 TensorFlow》,本文中所有圖片均來自於書籍相關部分截圖。 本章介紹了DNN訓練過程中三個常見問題,並依次給出解決方案。 章節的最後還給出當不知道如何DNN訓練時一些屬性可以選的比較好的…
Networkx 計算網絡效率
tengqingyong的博客
5860
本人在計算網絡效率的時候遇到了一個問題 networkx 提供了最短路徑函數shortest_path及shorest_path_length 我在計算網絡效率構造了一個無向圖,但是我在計算點與點之間的最短路徑長度時總是提示我說點不存在圖中, 我在上面使用nx.average_shortest_path_length(UG)的時候可以得到網絡平均最短路徑長度;這個說明我的點都…
Pandas/networkx圖分析簡單入門
weixin_34306676的博客
516
對於圖論而言,大家或多或少有些了解,數學專業或計算機相關專業的讀者可能對其更加清楚。圖論中的圖像是由若干給定的點及連接兩點的線所構成的圖形,這樣的圖像通常用來描述某些事物之間的某種特定關係,用點代表事物,用兩點之間的連接線表示二者具有的某種關係,在互聯網與通信行業中應用廣泛。圖論分析(Graph analysis)並不是數據科學領域中的新分…
networkx–四種網絡模型
weixin_30764883的博客
380
NetworkX提供了4種常見網絡的建模方法,分別是:規則圖,ER隨機圖,WS小世界網絡和BA無標度網絡。 一. 規則圖 規則圖差不多是最沒有複雜性的一類圖,random_graphs.random_regular_graph(d, n)方法可以生成一個含有n個節點,每個節點有d個鄰居節點的規則圖。 下面一段示例代碼,生成了包含20個節點、每個節點有3個鄰居的規則…
igraph/networkx學習筆記之…
nuoline的專欄
1萬+
原文地址:—— 數據結構”igraph/networkx學習筆記之一 —— 數據結構作者:zhengw789 首先,基本上所有的graph library都有其局限性,不同的數據結構有優點的同時必然有缺點,圖算法對數據結構的依賴性構成另一個原因。所以如果是想用一個工具包解決所有的問題顯然是一種奢望,很多時候甚至必須要從頭寫自己的代碼。但是閱讀igraph和networkx這樣成型了的函數庫對熟悉
python下的複雜網絡編程包networkx的使用(摘抄)
weixin_30631587的博客
2335
原文:;uid=404069do=blogclassid=141080view=mefrom=space 複雜網絡分析庫NetworkX學習筆記(1):入門 NetworkX是一個用Python語言開發的圖論與複雜網絡建模工具,內置了常用的圖與複雜網…
更快更簡單|飛槳PaddlePaddle單機訓練速度優化最佳實踐
PaddlePaddle
1672
導讀:飛槳(PaddlePaddle)致力於讓深度學習技術的創新與應用更簡單。在單機訓練速度方面,通過高並行、低開銷的異步執行策略和高效率的核心算子,優化靜態圖訓練性能,…
GraphX與GraphLab、Pregel的對比
yang灬仔
588
分佈式批同步BSP Pregel、GraphLab、GraphX都是基於BSP(Bulk Synchronous Parallel)模式,即整體同步並行。一次計算過程由一系列全局超步組成,每一個超步由並發計算、通信和同步三個步驟組成。從垂直上看,一個程序由一系列串行的超步組成。從水平上看,在一個超步中,所有的進程並行執行局部計算。BSP最大的好處是編程簡單,但在某些情況下BSP運算的性能非常差,…
TensorFlow學習記錄:VGGNet卷積神經網絡模型
weixin_41137655的博客
308
1.VGGNet模型結構簡介 VGGNet是由牛津大學計算機視覺幾何組(Visual Geomety Group,VGG)和Google Deepmind公司的研究員合作研發的深度卷積神經網絡,VGG的成員Karen Simonyan和Andrew Zisserman在2014年撰寫的論文《Very Deep Convolutional Networks for Large-Scale Image…
11月編程語言排行冠軍揭曉,穩
熱門推薦
IT教育任姐姐的博客
4萬+
大家好 今天任姐姐要跟小夥伴們分享 2021年11月最新TIOBE指數 11月編程排行榜 Python繼續榜首 本月的幸運兒只有一個,那就是Python! 繼上個月我們見證了Python奪冠這一歷史性的畫面之後,這個月Python仍舊穩坐榜首,看來Python這股大風還在繼續刮。 隨後分別是 C、Java、C++、C#,這些也都是我們的老朋友了。 PHP即將跌出前十 自20多年前TIOBE 指數開始發佈以來,PHP 一直常駐在榜單前十,然而最近,該語言已經開始在前十
python能做什麼軟件?Python到底能幹嘛,一文看懂
小分享
6573
Python培訓有哪些內容?很多零基礎學員不知道Python軟件是幹什麼用的?Python軟件是Python工程師編寫代碼時所需要的編輯工具,現在比較常用的Python軟件有Visu… 那麼在選擇Python培訓機構時學生尤為關注的就是培訓內容,從現在幾家大的機構可以看出,Python培訓主要學習第一階段Python核心編程(Pyth… 一文讀懂Python內置變量,函數,模塊在這裡解釋下什麼是解釋性語言什麼是編譯性語言: 編譯性語言:如c++,c等,寫好的代碼要通過編譯器編譯成操作系統直接可
Django中超級用戶的創建和刪除操作
最新發佈
Protinx的博客
91
創建超級用戶 這就很easy了,畢竟這是所有初學者都會的,操作如下: 打開Terminal,輸入: python manage.py createsuperuser 然後按照提示輸入相應的用戶名、郵箱和密碼就可以啦,如下: 創建超級用戶 可以看到上面我的密碼輸入了三次,還有不成功的提示,Django本身對於超級用戶的密碼要求還是很多的,大家定義密碼要注意啊,或者如果只是自己學習的話,也可在『Bypass password validation and create user an.
上海python培訓中心
weixin_63757190的博客
166
前幾天,有個讀者在後台留言,說: 「最近被論文折磨得快崩潰了,我現在是恨不得克隆十個自己,一個呆在科室值班,一個去寫月底要送審的稿子,一個去上百個網站翻數據….. 還有另外七個「我」,這邊六七篇論文還沒搞定。那邊又有新論文要開題了,加上最後一個「本我」,剛剛夠用,我可真是個數學天才! 可現實是只有一個我,只能天天熬夜。 好傢夥,整得我都開始反問自己,是不是只有我的科研生活這麼兵荒馬亂?」 其實他不是個例,成千上萬的科研人都要面對無盡的實驗分析、反覆修改的論文。 難道就只有被虐的份嗎?
python裝飾器
LiveLearn的博客
1208
學習目標:一口氣把裝飾器描述清楚 弄清楚裝飾器前要理解三個東西: 函數對象、函數嵌套、函數構成閉包。 學習內容: 函數對象好說,python編程語言屬於動態語言,python中一切皆對象,所以函數也是對象。 函數對象用函數名稱表示(僅名稱,沒有括號,也沒有參數)。 例如,定義了一個求和函數add,那麼此處的add就是個函數對象。 def add(username, a, b): print(f”{a}+{b}={a + b}”) return a + b 函數嵌套或者嵌套函數,就是定
©️2021 CSDN 皮膚主題: 遊動-白 設計師:白松林 返回首頁
關於我們
招賢納士
廣告服務
開發助手
400-660-0108
kefu@csdn.net
在線客服
工作時間 8:30-22:00
公安備案號11010502030143
京ICP備19004658號
京網文〔2020〕1039-165號
經營性網站備案信息
北京互聯網違法和不良信息舉報中心
網絡110報警服務
中國互聯網舉報中心
家長監護
Chrome商店下載
©1999-2021北京創新樂知網絡技術有限公司
版權與免責聲明
版權申訴
出版物許可證
營業執照
6979阿強
碼齡0年
暫無認證
11
原創
13萬+
周排名
12萬+
總排名
579
訪問
等級
132
積分
1
粉絲
1
獲贊
評論
1
收藏
私信
關注
熱門文章
GraphScope、Neo4j與TigerGraph單機環境下性能對比 146
NetworkX與GraphScope的性能對比 88
GraphScope、Gemini與GraphX的性能對比 60
分佈式圖計算引擎 46
國足歷屆世界盃對戰圖關係 45
最新評論
圖分析入門
大家一起學編程(python): 感謝博主的分享!
您願意向朋友推薦「博客詳情頁」嗎?
強烈不推薦
不推薦
一般般
推薦
強烈推薦
最新文章
2021-10-11
圖數據庫在社交方向上的應用
國足歷屆世界盃對戰圖關係
2021年11篇
你的瀏覽器目前處於縮放狀態,頁面可能會出現錯位現象,建議100%大小顯示。
舉報
————————————————
版權聲明:本文為CSDN博主「6979阿強」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/236987.html