最近
最近は就職活動で忙しくしていたためなかなかブログを書くことができませんでした。
これから頑張って自分のスキルアップのため頑張りたいと思います。。。
Tensorflow
しかし就活中ながら隙間の時間に勉強会などに参加するようには心がけていた。そこでTensorflowの話題が上がった。私もずっとさわってみたいと興味はあったのだが何もしていない状態だったので今回入門してみることにした。
まずAnacondaのvirtualenvを使ってTensorflow用の環境を作る。
pythonのバージョンは最新?の3.5.1を使うことにした。
$ pip install virtualenv
$ conda create --name tensorflow_env python=3.5.1
$ source activate tensorflow_env
次にpipを使ってTensorflowをインストールするのだが...
(tensorflow_env)$ pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.6.0-py3-none-any.whl
…
Collecting setuptools (from protobuf==3.0.0a3->tensorflow==0.6.0)
Using cached setuptools-20.9.0-py2.py3-none-any.whl
Installing collected packages: six, setuptools, protobuf, numpy, tensorflow
Found existing installation: setuptools 20.7.0
Cannot remove entries from nonexistent file /home/nori/anaconda3/envs/tensorflow/lib/python3.5/site-packages/easy-install.pth
調べてみるとsetuptoolsがコンフリクトしているのが問題らしくconda remove
でsetuptoolsをリムーブすれば大丈夫かと思いいろいろ試行錯誤してみたもののうまく行かず…
結局2系でTensorflowを使ってみることにした。
同じ要領でpython2.7.11の環境を作りTensorflowをインストールする。
$ conda create --name tensorflow_env2 python=2.7.11
$ source activate tensorflow_env2
(tensorflow_env2)$ pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
インスト−ルが完了すると早速インポートして試してみる
(tensorflow_env2)$ python
>>> import tensorflow
>>>
成功!
また最近jupyter notebookを使ってコードを管理しているためTensorflowのテストコードをipynbのファイルで残したいと思った。
そのままではjupyterでインポートはできなかったため調べてみるとカーネルを設定しなければならないらしい。pyenv-virtualenv + TensorFlow 環境設定覚書を参考にしてみる。
Tensorflow用のカーネルを追加する。
$ cd ~/.ipython/kernels
$ mkdir tensorflow && cd tensorflow
$ vim kernel.json
{
"display_name": "TensorFlow (Python 2)",
"language": "python",
"argv": [
"/home/User/anaconda3/envs/tensorflow_env2/bin/python",
"-c", "from IPython.kernel.zmq.kernelapp import main; main()",
"-f", "{connection_file}"
],
"codemirror_mode": {
"version": 2,
"name": "ipython"
}
}
これでjupyterでもTensorflowが使えた!
ちなみにテストコードはこんな感じ
import tensorflow as tf
hello = tf.constant("Hello Tensorflow!")
a = tf.constant(10)
b = tf.constant(20)
sess = tf.Session()
print sess.run(hello)
print sess.run(a+b)
今後の課題
今後の課題をいかに列挙しておく
Python3でなぜTensorflowが使えなかったのか?
- jupyter notebookで作成したノートブックをはてなブログに埋め込めないのか
- Tensorflowを使った応用プログラムの作成
これらのことについて今週中に頑張りたい
追記
linuxでpython3.5用のTensorflowをインストールするためにはTensorflowの公式ページにあった以下のコマンドを打てばよかった
(tensor_env)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0rc0-cp27-none-linux_x86_64.whl