web-dev-qa-db-ja.com

基本的なテンソルフローのサンプルの実行エラー

私はちょうどubuntuに最新のテンソルフローを再インストールしました:

$ Sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
[Sudo] password for ubuntu: 
The directory '/home/ubuntu/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with Sudo, you may want Sudo's -H flag.
The directory '/home/ubuntu/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with Sudo, you may want Sudo's -H flag.
Collecting tensorflow==0.7.1 from https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
  Downloading https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl (13.8MB)
    100% |████████████████████████████████| 13.8MB 32kB/s 
Requirement already up-to-date: six>=1.10.0 in /usr/local/lib/python2.7/dist-packages (from tensorflow==0.7.1)
Requirement already up-to-date: protobuf==3.0.0b2 in /usr/local/lib/python2.7/dist-packages (from tensorflow==0.7.1)
Requirement already up-to-date: wheel in /usr/local/lib/python2.7/dist-packages (from tensorflow==0.7.1)
Requirement already up-to-date: numpy>=1.8.2 in /usr/local/lib/python2.7/dist-packages (from tensorflow==0.7.1)
Requirement already up-to-date: setuptools in /usr/local/lib/python2.7/dist-packages (from protobuf==3.0.0b2->tensorflow==0.7.1)
Installing collected packages: tensorflow
  Found existing installation: tensorflow 0.7.1
    Uninstalling tensorflow-0.7.1:
      Successfully uninstalled tensorflow-0.7.1
Successfully installed tensorflow-0.7.1

テストの指示に従うと、名前pywrap_tensorflowをインポートできませんで失敗します:

$ ipython

/git/tensorflow/tensorflow/__init__.py in <module>()
     21 from __future__ import print_function
     22 
---> 23 from tensorflow.python import *

/git/tensorflow/tensorflow/python/__init__.py in <module>()
     43 _default_dlopen_flags = sys.getdlopenflags()
     44 sys.setdlopenflags(_default_dlopen_flags | ctypes.RTLD_GLOBAL)
---> 45 from tensorflow.python import pywrap_tensorflow
     46 sys.setdlopenflags(_default_dlopen_flags)
     47 

ImportError: cannot import name pywrap_tensorflow

pythonまたはubuntu/bash環境に追加の変更が必要ですか?

65
javadba

スタックトレースのパス(/git/tensorflow/tensorflow/…)から、Pythonパスは、インストールしたバージョンではなく、ソースディレクトリからtensorflowライブラリを読み込んでいるようです。その結果、別のディレクトリにインストールされている(コンパイルされた)pywrap_tensorflowライブラリを見つけることができません。

一般的な解決策は、cdまたはpythonを開始する前に、/git/tensorflowディレクトリーからipythonを出すことです。

171
mrry

以下のコマンドが役立ちました。

 pip install tensorflow --upgrade --force-reinstall
8
neustart47

Python 2.7仮想環境(venv)で、ソース(GitHub: https://github.com/tensorflow/tensorflow )からTensorFlowをコンパイルしてインストールしました。それはうまくいきましたが、TensorFlowをコンパイルしたパーティションから別のパーティションにcdするために(他の人が言及したように、 基本的なテンソルフローの実行中のエラー のユーザー「mrry」など) TensorflowをPythonにインポートできるようにするため。それ以外の場合、自分がどの(ソースパーティション)ディレクトリにいるかに応じて、さまざまなエラーが発生しました。

         source: /mnt/Vancouver/apps/tensorflow
can't import tf: Python launched in any of /mnt/...
  can import tf: Python launched in /home/victoria/...

後でここの指示に従っただけです

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/get_started/os_setup.md#anaconda-installation

すべてが正常に機能します。

参考のために、私は

  • Arch Linux [4.6.3-1-Arch] x86_64
  • Intel i7-4790
  • xfce 4.12デスクトップ環境

インストール手順:

設定に従って、パス、venv名を変更します。

  1. Tf-envを作成します。

    cd /home/victoria/anaconda3/envs
    
    conda create -n tf-env python=2.7 anaconda
    

注:「anaconda」メタパッケージを追加すると、すべてのAnacondaパッケージ(NumPy; ...)がインストールされます。

  1. ソースはそのvenv(tf-env)をアクティブにします

    source activate tf-env
    

注:〜/ .bashrcにエイリアスとして追加:

alias tf='echo "  [TensorFlow in Anaconda Python 2.7 venv (source activate tf]" && source activate tf-env'
  1. Tensor-env venvにTensorFlowをインストールします。

    (tf-env)$ conda install -c conda-forge tensorflow
    

これにより、ここで説明するTensorFlowをインストールするための代替アプローチであるpip(* .whlインストールスクリプトを含む)の使用が不要になります。

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/get_started/os_setup.md).

動作します!

(tf-env)[victoria@victoria ~]$ P

  [P: python]
Python 2.7.12 |Anaconda 4.1.1 (64-bit)| (default, Jul  2 2016, 17:42:40)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org

>>> import tensorflow
>>> print tensorflow.__version__
0.9.0
>>> [Ctrl-D]

(tf-env)[victoria@victoria ~]$

その後、tf-envでTensorFlowを使用できます。たとえば、この(tf-env)venvで起動されたJupyterノートブックで。

4
Victoria Stuart

私のpython -m venv environmentでは、次のように修正されているようです:

pip uninstall tensorflow

requirements.txttensorflow==1.5.0ではなくtensorflow==1.8.0に変更します。

pip install -r requirements.txt
1
Cees Timmerman

2011年以前に製造されたCPUを使用している場合、テンソルフローバージョンを1.8.0から1.5.0または1.2.0にダウングレードし、動作するモジュールをインポートしようとしました。

1
iwilldo

テンソルフロー1.13.1を使用しています。テンソルフローを再インストールするだけでうまくいきました。

0
Roberto Deresu

次のコマンドを使用してインストールすると、問題が解決します。

pip install --upgrade

ここに link があります

0
Rajesh Tc

TensorFlow 1.12.0はPythonバージョン3.5.2でのみ動作することがわかりました。 Python 3.7がありましたが、うまくいきませんでした。そのため、Pythonをダウングレードする必要があり、それが機能するTensorFlowをインストールできました。

pythonバージョンを3.7から3.6にダウングレードするには

conda install python=3.6.8
0
Thirumal Alagu