私は、python 3、kersを使用したtf-GPUで、ubuntu 16を使用しています。
説明したように、cudaエラーのためにtf 1.4にダウングレードしました here
しかし、今私はこのエラーを取得しています
TypeError:softmax()が予期しないキーワード引数 'axis'を取得しました
これはテンソルフローの API変更 であり、新しいkerasは古いtfには適していないようです。
Tf 1.4 gpuで使用する正しいkerasバージョンは何ですか?正しいものは何ですか?
Keras-Tensorflowバージョンの互換性は、私が何度も直面している問題です。私は過去に(ブックマークに保存された)これを使用しました リンク 、tensorflow
とkeras
バージョンの一致。 keras 2.0.8
はtensorflow 1.4
Tensorflowバックエンドでkerasのみを使用している場合、keras
モジュールではなく、tf.keras
にあるkeras実装を使用することをお勧めします。そうすれば、非互換性やバグの可能性について頭を悩ますことはありません(その質問も参照してください)。
KerasのどのバージョンがどのTensorFlowのバージョンを対象としているかに関する適切なドキュメントはないようです。問題を解決する最も簡単な方法は、Kerasを一度に1バージョンずつダウングレードして、動作するバージョンを見つけることです(逆に、動作することがわかっているバージョンから破損するまで一度に1つのバージョンをアップグレードすること)。その退屈なことがわかった場合は、バイナリ検索として行うことができます。
リリースページ を見ると、 バージョン2.0.8 はTensorFlow 1.4と互換性があるはずです。すでに1年ほど前ですが、少なくともそこには出発点があります。
condaパッケージマネージャー を使用してkerasとkeras-gpuをインストールし、互換性のあるテンソルフローとcudaバージョンを使用して、TypeError: softmax()
...エラーメッセージを無視できました keras-bert パッケージを使用して 元の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