1. ホーム
  2. python

[解決済み] Tensorflow 2.0 - AttributeError: module 'tensorflow' has no attribute 'Session'.

2022-03-04 05:10:30

質問

コマンドを実行するとき sess = tf.Session() をTensorflow 2.0環境で使用した場合、以下のようなエラーメッセージが表示されます。

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: module 'tensorflow' has no attribute 'Session'

システム情報です。

  • OSのプラットフォームとディストリビューション。Windows 10
  • Pythonバージョン:3.7.1
  • Tensorflowバージョン: 2.0.0-alpha0 (pipでインストール)
<ブロッククオート

再現するための手順

インストールします。

  1. pip install --upgrade pip
  2. pip install tensorflow==2.0.0-alpha0
  3. pip install keras
  4. pip install numpy==1.16.2

実行します。

  1. 実行コマンド:import tensorflow as tf
  2. 実行コマンド:sess = tf.Session()

解決方法は?

によると TF 1:1 Symbols Map TF 2.0では、次のように使用します。 tf.compat.v1.Session() の代わりに tf.Session()

https://docs.google.com/spreadsheets/d/1FLFJLzg7WNP6JHODX5q8BDgptKafq_slHpnHVbJIteQ/edit#gid=0

TF 1.x のような動作を TF 2.0 で実現するには、次のように実行します。

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

しかし、その場合、TF 2.0 で行われた多くの改良点の恩恵を受けることができません。詳細については、移行ガイドを参照してください。 https://www.tensorflow.org/guide/migrate