web-dev-qa-db-ja.com

ModuleNotFoundError: 'tensorflow.tensorboard.tensorboard'という名前のモジュールはありません

最近のTensorFlowビルドに問題があるようです。 TensorBoard視覚化ツールは、GPUで使用するソースからコンパイルされると実行されません。エラーは次のとおりです。

$ tensorboard
Traceback (most recent call last):
  File "/home/gpu/anaconda3/envs/tensorflow/bin/tensorboard", line 7, in <module>
    from tensorflow.tensorboard.tensorboard import main
ModuleNotFoundError: No module named 'tensorflow.tensorboard.tensorboard'

システムの仕様:Ubuntu 16.04、NVIDIA GTX 1070、cuda-8.0、cudnn 6.0。ここに記載されているソースからBazelを使用してインストールされます。 https://www.tensorflow.org/install/install_sources

新しいanaconda3環境「tensorflow」にインストールされ、コマンドを実行すると環境がアクティブになります。

助けていただければ幸いです!

13

簡単な修正:

python -m tensorboard.main --logdir=/path/to/logs
11
Adam Liu

試行錯誤の後、ファイルを調整することでこの問題を解決しましたtensorboard-script.py in path/to/conda/envs/myenv/Scripts(Windows)次のとおり:

if __name__ == '__main__':
    import sys
    #import tensorflow.tensorboard.tensorboard
    import tensorboard.main

    #sys.exit(tensorflow.tensorboard.tensorboard.main())
    sys.exit(tensorboard.main.main())

予想どおりにテンソルボードを呼び出すことができます:tensorboard --logdir=log/ --port 6006

4
Martin

さて、私は動作する解決策を見つけ、githubのtensorflowerから説明を受けました。

テンソルボードは別のリポジトリに削除されており、テンソルフローの一部ではないため、ソースからテンソルフローをコンパイルするときにテンソルボードに問題がある可能性があります。テンソルフラワーは、ドキュメントは最終的に更新されると言ったが、私はせっかちな人(私のように)の回避策を考え出した。

tensorflow/bin(私の場合は/home/gpu/anaconda3/envs/tensorflow/bin/tensorboard)内のtensorboardファイルを編集して置き換えます

from tensorflow.tensorboard.tensorboard import main

沿って

from tensorflow.tensorboard.main import *

これで、テンソルボードは通常どおりコンソールから実行されるはずです。

2

Tensorboardにはtensorflowが付属しています。 tensorboardコマンドを使用して実行できない場合は、以下の方法を試してください。 tensorboard.pyは別のディレクトリに移動された可能性があります。

テンソルフローがインストールされているtensorbardディレクトリでtensorboard.pyを検索してみてください。パスに移動し、視覚化のために次の行を使用します。

python tensorboard.py --logdir=path
1
Harman