Ubuntu18.04LTSにTensorFlowをインストールしましたので、その手順を書いておきます。
種類 | バージョン | 内容 |
---|---|---|
OS | Windows10 Professional 64bit | WSL(Windows Subsystem for Linux)でUbuntu18.04.1LTSを使っています |
Python | Python3.6.8 |
公式サイトに「Requires Python 3.4, 3.5, or 3.6」と記載があるのでPython3.6にしています pyenv1.2.8でバージョン管理してvenvで仮想化しています |
TensorFlow | TensorFlow 1.12 | TensorFlow with CPU support onlyです。当ブログ内容は"TensorFlow with GPU support"に対応していないので注意ください |
#関連記事
#インストール手順
##0. 前提
pyenvはGithub way (recommended)の手順に従ってインストール済
##1. 仮想環境作成
###1.1. pyenvでpythonインストール
pyenvでインストール可能なpythonのバージョンを確認します。
pyenv install -list
2018/12/28時点で3.6系で最新だった3.6.8をインストールします。
pyenv install 3.6.8
※失敗したので、不足した以下をapt-get後に、もう一度3.6.8をインストールしました。
sudo apt-get install zlib1g-dev libssl-dev
インストールされた結果、pyenvで使用できるかを確認。
pyenv versions
ひとまず、グローバルに設定して、現在のpythonバージョンの確認。
pyenv global 3.6.8
python --version
which python
###1.2. venvの仮想環境作成
ディレクトリを移動し、venvで"tf12"という名前の仮装環境を作成します。
cd <directory>
python -m venv tf12
仮想環境作成後にtf12というフォルダができ、その直下にbinなどのフォルダができているのを確認します。
ls tf12 -al
作成した仮想環境"tf12"を有効化します。
source tf12/bin/activate
1.3 pipの最新化
pipを最新にしておきます。
pip install --upgrade pip
##2. TensorFlowインストール
###2.1. TensorFlowインストール
仮想環境"tf12"に対してpipでTensorFlow CPU-only の最新版をインストールします。
pip install --upgrade tensorflow
バージョンを指定したい場合は下記のようにしてください(Ver1.10としています)。
pip install tensorflow==1.10
これで依存関係があるパッケージも含めてインストールされました。pip freezeで確認します。
$ pip freeze
absl-py==0.6.1
astor==0.7.1
gast==0.2.0
grpcio==1.17.1
h5py==2.9.0
Keras-Applications==1.0.6
Keras-Preprocessing==1.0.5
Markdown==3.0.1
numpy==1.15.4
protobuf==3.6.1
six==1.12.0
tensorboard==1.12.1
tensorflow==1.12.0
termcolor==1.1.0
Werkzeug==0.14.1
###1.3. TensorFlowインストール確認
サンプルのコマンドを打って、TensorFlowのインストールを確認します。
$ python -c "import tensorflow as tf; tf.enable_eager_execution(); print(tf.reduce_sum(tf.random_normal([1000, 1000])))"
2018-12-31 12:58:37.931864: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
tf.Tensor(-483.9022, shape=(), dtype=float32)
#経緯
ただの経緯なので、興味がある人だけ読んでください。
長年Windowsを使い続けていたのですが、PythonやTensorFlow開発に限界を感じてUbuntuを使い始めました。だいたい、どの手順書見てもWindowsは対象としていなかったり、トラブルシュート情報が少なかったりするためです。CLIなど慣れずに面倒と思うことも多いのですが、頑張っていきたいと思っています。
また、Windows感覚でAnaconda/Minicondaで仮想環境を作ろうとしたのですが、Linuxでは悪評も多かったのでpyenvとvenvを使っています。condaでパッケージを探すのも面倒だと感じていたので、脱condaしてみました。