我正在将ubuntu 16与python 3,带有keras的tf-GPU一起使用。
由于here
所述,由于CUDA错误,我降级至1.4版本但是现在我收到此错误
TypeError:softmax()得到了意外的关键字参数'axis'
似乎这是张量流中的API change,而新的keras不适合旧的tf。
我找不到与tf 1.4 gpu一起使用的正确的keras版本。正确的是什么?
答案 0 :(得分:4)
Keras-Tensorflow版本的兼容性是我多次遇到的问题。我过去使用过(保留在书签中)这个link,并具有 Node* NewNode = new Node(value, type);
NewNode->LeftChild = LeftChild;
LeftChild = NewNode;
和tensorflow
版本的匹配项。我相信 keras
与 keras 2.0.8
答案 1 :(得分:2)
如果您仅在tensorflow后端使用keras,我建议使用tf.keras
中的keras实现,而不是keras
模块。这样,您就不会为可能的不兼容或错误而挠头(另请参见该问题)。
答案 2 :(得分:0)
似乎没有适当的文档说明哪个Keras版本针对哪个TensorFlow版本。解决问题的最快方法可能是一次将Keras版本降级,直到找到一个可用的版本为止(或者相反,从您知道的版本一次升级一个版本,直到它失效为止)。如果您发现乏味,可以将其作为二进制搜索来完成。
看看releases page,看来version 2.0.8应该与TensorFlow 1.4兼容;已经大约一岁了,但是至少您有一个起点。
答案 3 :(得分:0)
我能够使用conda package manager安装keras和keras-gpu,并具有兼容的tensorflow和cuda版本,以克服您的TypeError: softmax()
...错误消息,当我尝试加载original BERT tensorflow checkpoint使用keras-bert软件包:
$ conda create -n bert python=3.6
$ conda activate bert
$ conda install keras==2.0.8
$ conda install keras-gpu==2.0.8
$ pip install keras-pos-embd==0.10.0
$ pip install keras-transformer==0.22.0
答案 4 :(得分:0)
我使用的是 tensorflow 1.15.4 版,安装 Keras 2.3.1 版解决了我的问题。
顺便说一句,this page 很有用。找到您想要的 tensorflow 版本,然后点击相应的包和 Nvidia 设置。
setuptools==41.0.0
numpy
matplotlib
pandas
pydub
scipy
tensorflow==1.15.4
keras==2.3.1
python_speech_features
praat-parselmouth
pyquaternion