Python TensorFlow 2.x のバージョン 1.x との非互換性に対する解決策

TensorFlow バージョン 2.8 をインストールしましたが、使用するコードは 1.x です。いくつかの方法を見つけて、現在使用しています。

import tensorflow.compat.v1 as tf
tf.disable_eager_execution()
#关闭eager运算,用于版本转换
##上面的用在开头处


tf.reset_default_graph()
##用于清除默认图形堆栈并重置全局默认图形。
##不清除的话,会报错说哪里哪里已创建什么的,代码运行一次要清除一次


 with tf.variable_scope('x',reuse=tf.AUTO_REUSE):
#在用tf.variable_scope时,不加reuse=tf.AUTO_REUSE,也会报错

       最初の段落はライブラリをインポートするときに使用され、1.x バージョンに従って直接インポートされますが、まだいくつかの問題があるようです; 2 番目の段落はインポート ライブラリと一緒に実行できます (ただし、テスト時には、ライブラリを複数回、実行する行を再度開くことをお勧めします); 3 番目の段落は、tf.variable_scope() 関数を使用しているときにエラーが発生した場合の解決策です。

        私の方法に加えて、tf.compat.v1.variable_scope() など、各コードの後に​​ .compat.v1 を追加する別の方法がありますが、これは面倒だと思います。

        今後も TensorFlow のバージョンに関連する問題が発生する場合は、ここで更新します. 関連する問題が発生した場合は、対応する解決策をコメント欄に残してください. 試行が成功した後に統合できます.

おすすめ

転載: blog.csdn.net/a1004550653/article/details/124632804