先说原因,因为python版本不支持(3.6才可以),可以考虑降版本或者重新配一个环境(考虑到原来的环境还连着其他的一些包,改了python版本就势必要动他们,所以还是从头配吧orz)
在使用stellargraph 时遇到了如下报错:
features: expected batch dimension = 1 when using sparse adjacency matrix in GraphConvolution, found features batch dimension {ag__.ld(features).shape[0]}
在线上并没有找到类似的解决方案,不过有搜到和我遇到同一问题的:
python - Error in Graph Convolution Layer using StellarGraph GCN - Stack Overflow
乍一看可能无法解决了(实际上解决方案就在文档里),只是我习惯性觉得会按照安装的python版本自动选择stellargraph版本(但是tensorflow和pytorch都有版本要求,stellargraph娇气一点似乎也很正常)
Introduction — StellarGraph 0.7.3 documentation
(而我这个倒霉蛋安装的甚至是3.8)
重新装完之后:
目前正在绝赞训练中
附录一些比较关键的版本
gensim 4.1.2 pypi_0 pypi
networkx 2.5.1 pypi_0 pypi
python 3.6.13 h12debd9_1
tensorflow 2.6.2 pypi_0 pypi
过程中还遇到了别的问题:
https://wenku.csdn.net/answer/7rku0r7wvd
python3.6.8 pip install gensim 报错_python 3.6.8 不能与gensim一起工作-CSDN博客
解决方案先给numpy降版本:
pip uninstall numpy
再安装对应python版本的numpy
conda install numpy==1.15.4
以及可能还需要:
pip install chardet -i https://pypi.tuna.tsinghua.edu.cn/simple
参考:
python - Cannot install stellargraph - Stack Overflow
这个似乎是一个历史打包错误问题
——————————————————
题外话,我其实不是在GCN的时候遇到的问题,GAT的时候我就发现这个示例代码没法用了,但是我自己写了2333
但是,我现在想拿到节点embedding,比较一些节点的相似性,so……想看看有没有现成的方法,结果卡了我一周了(幸好这一周我在绝赞摸鱼中:X搞deepwalk、node2vec)