-
Notifications
You must be signed in to change notification settings - Fork 170
Description
Hello,
I am using conda. I created a new environment called "new_env" with python=3.7.16 (I had to use an older version of Python because stellargraph was having difficulties with python>3.8) by:
conda create -n new_env python=3.7.16
conda activate new_env
then in the terminal where the new_env being active, I typed:
pip install -r requirements.txt
where the requirements.txt file include the following (from Chapter-3 in the book):
Jupyter==1.0.0
networkx==2.5
matplotlib==3.2.2
karateclub==1.0.19
node2vec==0.3.3
tensorflow==2.4.0
scikit-learn==0.24.0
git+https://github.com/palash1992/GEM.git
git+https://github.com/stellargraph/stellargraph.git
I have two questions.
Question-1: When I run the "01_Shallow_Embeddings.ipynb" notebook given in Chapter-03, for the cell given below, I get the following error in GraphFactorization section:
from gem.embedding.gf import GraphFactorization
G = nx.barbell_graph(m1=10, m2=4)
draw_graph(G)
gf = GraphFactorization(d=2, data_set=None,max_iter=10000, eta=1*10**-4, regu=1.0)
gf.learn_embedding(G)
Error: ./gf not found. Reverting to Python implementation. Please compile gf, place node2vec in the path and grant executable permission.
Do I go to site_packages in the active conda environment and compile/run a setup.py file in GEM library? Or do I need to clone GEM library (as well as stellar) separate;y rather than putting them in the requirements.txt file, though I thought it is the same procedure.
Question-2: I have also an error when I run the DeepWalk example in the same notebook,
The code:
import networkx as nx
from karateclub.node_embedding.neighbourhood.deepwalk import DeepWalk
G = nx.barbell_graph(m1=10, m2=4)
draw_graph(G)
dw = DeepWalk(dimensions=2)
dw.fit(G)
The error I get:
TypeError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_22368\195704241.py in <module>
6
7 dw = DeepWalk(dimensions=2)
----> 8 dw.fit(G)
~\anaconda3\envs\gml_book_ch3\lib\site-packages\karateclub\node_embedding\neighbourhood\deepwalk.py in fit(self, graph)
57 min_count=self.min_count,
58 workers=self.workers,
---> 59 seed=self.seed)
60
61 num_of_nodes = graph.number_of_nodes()
TypeError: __init__() got an unexpected keyword argument 'iter'
Did anyone have similar issues or know the solution?
Thanks!