大規模網絡表示學習庫GraphVite安裝

GraphVite重新實現了DeepWalk,LINE,Node2vec等方法,速度提高了幾十倍,的確牛,不知道啥時候也能把我們等方法也實現上去,哈哈。

這個Tangjian實驗室提出了LINE,面向大規模的網絡表示學習方法,同一時期,Tangjie也提出了另一個NetSMF,也是很不錯。但是相比之下,還是GraphVite速度更快,支持方法也更廣泛。實際上這三種方法DeepWalk,LINE,Node2vec實在差不了多少。

安裝這玩意真夠折騰的,首先檢查gcc版本,gcc -v,gcc版本在4.9以下估計要危險,編譯可能會出錯。

conda安裝,否則慢成狗,記得配鏡像。

conda安裝需要:

1. conda config --add channels conda-forge

2. conda install -c milagraph -c conda-forge graphvite

但是樓主在安裝graphvite的時候,它還沒有及時更新到鏡像裏。相對其它的包,只有它慢成狗。

graphvite-0.2.0      | 51.6 MB   | ######################4                                     |  38% 

一開始嘗試編譯安裝,在編譯的過程需要安裝:pybind11, log4xx, flag等等一大堆,最終不行。所以只能用conda來安裝。

安裝完畢,試試

graphvite baseline quick start

嘗試使用LINE在Blogcatalog數據集上,得到的結果還是不錯的

ipython

>>> import pickle
>>> with open("line_blogcatalog.pkl", "rb") as fin:
>>>     blogcatalog = pickle.load(fin)
>>> names = blogcatalog.id2name
>>> embeddings = blogcatalog.vertex_embeddings
>>> print(names[1024], embeddings[1024])
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章