要約
TensorFlowの公式が公開している環境構築方法が全然うまく行かなかったので、解決した流れの備忘録
Windows10だと、python3.6でTensorflowが実行できない(ただし、理由は知らない)
公式さんは確かにこう言っています。
★ Requires Python 3.4, 3.5, or 3.6
確かに、pipでTensorflowはインストールできるのですが、以下の行を実行することができません。
import tensorflow as tf
ずらずらと、大量の出力分が出てきたのと同時に、以下のようなメッセージが末尾の方にありました。
Failed to load the native TensorFlow runtime.
原因と解法を調べ回っていると、以下の記事にたどり着きます。
ここを読めば、大抵のことは察することができますが、今回は細かい点を抑えようと思います。
ところで、上の記事の通り、Windows10とPython3.6の相性が悪いらしく、しかも、pipからインストールしたTensorFlowもまた動かないようですので、ここはおとなしくAnacondaを使うことにします。
処理手順
0. 入れてしまったpythonはアンインストール
TensorFlowの導入と同時にpython3系も入れてしまったのなら、消すことを推奨します。
Anacondaで環境を構築する際にpython3.5を入れることになります。
1. Anacondaをインストール
Anacondaをインストールしましょう。
インストールウィザードを開いて、流されるままにインストールします。
2. Tensorflowの環境を構築する
ENV_NAMEは、Anaconda上で構築する際の環境の名前なので、自由につけて構いません。
CPU版のTensorFlowを使いたいのであれば、以下の行の「tensorflow-gpu」を「tesorflow」に差し替えましょう。
他にも入れたいものがあるなら、後からインストールもできますので、今回はTensorFlowの導入に集中します。
conda create -y -n ENV_NAME python=3.5 tensorflow-gpu anaconda
作った環境を有効化しましょう。
activate ENV_NAME
3. 動作確認
TensorFlowがちゃんと動いてくれるか確認するために、pythonのREPL環境を開きます。
今の行をプロンプトに入力してください。
python -c "import tensorflow as tf; tf.enable_eager_execution(); print(tf.reduce_sum(tf.random_normal([1000, 1000])))"
エラーとかワーニングっぽいのが出なければ成功
まとめ
インストールできない原因は、Windows10側にあるのかなぁと、なんとなく考えていますが、TensorFlowが動きさえすればいいので、めでたしめでたしです。
しかし、この記事自体が2018年現在のものであることに十分留意してください。
それから、Anacondaでいちいち構築した環境をactivateしないといけないのは面倒くさいので、この点の解決は今後の課題になります。(覚えてればの話ですが)