GoogleのTensorFlowをUbuntu 14.04にインストールしてみました。しかし、”import tensorflow”で、TypeErrorが出ていました。
TensorFlow
TensorFlow(https://www.tensorflow.org)は、Googleが開発したディープラーニングフレームワークです。
インストール
TensorFlowのインストール方法には、Pip install、Virtualenv install、Docker installがありますが、今回は、Virtualenv installを選択しました(インストール時点のバージョンは、0.6.0)。
$ sudo apt-get install python-pip python-dev python-virtualenv $ virtualenv --system-site-packages ~/tensorflow $ source ~/tensorflow/bin/activate (tensorflow)$ pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
エラー発生
(tensorflow)$ python >>> import tensorflow as tf ... TypeError: __init__() got an unexpected keyword argument 'syntax'
Mac OS Xで記載のあったTypeErrorが、Ubuntu 14.04でも発生しました。
(tensorflow)$ pip install --upgrade protobuf
も試して見ましたが、TypeErrorは消えてくれません。
システム上のprotobufのバージョンは古いのですが、Virtualenv上のprotobufのバージョンはTensorFlowが必要とするバージョンになっていました。
また、CPU版の代わりにGPU版も試して見たのですが、同じエラーが発生しました。
自己解決
せっかくVirtualenvを使用するのだから、オプションの”–system-site-packages”をなくしてクリーンなPython環境にTensorFlowをインストールしてみました。
$ virtualenv ~/tensorflow
$ source ~/tensorflow/bin/activate
(tensorflow)$ pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
結果、TypeErrorの発生はなくなりました。
(tensorflow)$ python >>> import tensorflow as tf >>> hello = tf.constant('Hello, TensorFlow!') >>> sess = tf.Session() >>> print(sess.run(hello)) Hello, TensorFlow!
Ubuntu環境にも関わらず、TypeErrorが発生している方は、お試しあれ!