GraphVite 大規模網絡表示學習,DeepWalk示例

測試Graphvite實現的DeepWalk的表示學習在BlogCatalog中的效果。

In [2]: import graphvite as gv

In [3]: import graphvite.application as gap

In [4]: app = gap.GraphApplication(dim=128)

In [5]: app.load(file_name=gv.dataset.blogcatalog.train)

In [8]: app.build()

[time] GraphApplication.build: 0.200995 s

In [9]: app.train(model='DeepWalk')

In [10]: app.node_classification(file_name=gv.dataset.blogcatalog.label, portions=(0.2,))

effective labels: 14472 / 14476

Out[10]: {'macro-F1@20%': 0.23928622901439667, 'micro-F1@20%': 0.38627350330352783}

In [11]: app.node_classification(file_name=gv.dataset.blogcatalog.label, portions=(0.2,0.4, 0.6, 0.8))

effective labels: 14472 / 14476

Out[11]: 

{'macro-F1@20%': 0.2216399610042572,

 'macro-F1@40%': 0.25942087173461914,

 'macro-F1@60%': 0.2646543085575104,

 'macro-F1@80%': 0.26661422848701477,

 'micro-F1@20%': 0.3779405355453491,

 'micro-F1@40%': 0.4094797670841217,

 'micro-F1@60%': 0.427590936422348,

 'micro-F1@80%': 0.4313386380672455}

 

測試其在Youtube數據上的效果:

graphvite baseline deepwalk_youtube

[time] GraphApplication.train: 187.497 s

----------- node classification ------------

effective labels: 50691 / 50767

macro-F1@1%: 0.304472

macro-F1@10%: 0.386229

macro-F1@2%: 0.334787

macro-F1@3%: 0.352553

macro-F1@4%: 0.365586

macro-F1@5%: 0.367781

macro-F1@6%: 0.373607

macro-F1@7%: 0.37759

macro-F1@8%: 0.381236

macro-F1@9%: 0.382641

micro-F1@1%: 0.374398

micro-F1@10%: 0.464268

micro-F1@2%: 0.405696

micro-F1@3%: 0.42351

micro-F1@4%: 0.436277

micro-F1@5%: 0.4439

micro-F1@6%: 0.448071

micro-F1@7%: 0.452695

micro-F1@8%: 0.458056

micro-F1@9%: 0.460038

[time] GraphApplication.evaluate: 564.853 s

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章