プログラミング素人のはてなブログ

技術屋の末端。プログラミングも電気回路も専門外です。 コードに間違いなど見つけられたら、気軽にコメントください。 VC#、python3、ラズパイ始めました。

WindowsでTensorFlowが使いたい (python3)

機械学習をやってみたいと思ってpyhonを始める人も多いと思います。

Windowspythonをインストールする場合、現時点ではAnacondaを使うのがベストチョイスではないかと思います。(個人の感想です)
というのも、Windows向けのpythonは依存関係の不具合が多くあり、この点に関して、Anacondaをインストールしてしまえば同梱されているものに関しては解決するためです。

しかし、現時点でのAnacondaをインストールするとpython3は "3.6.x"がインストールされます。

一方、機械学習の定番ツールであるTensorFlowは "python3.5"にしか対応していません。
この場合、Anacondaをインストールした環境下では ”python3.5" を追加インストールする必要があります。
Anacondaでは複数のpyhton versionを切り替えながら使う、「仮想環境」という仕組みがあります。

しかし、仮想環境を作るということは、ほぼ「Anacondaをもう一つインストールする」ような状態で大きなHDDを消費します。
大きなHDDを持っているPCであれば、それを選択するべきですが、かならずしも皆さんがそうではないと思います。
(Anacondaを使わず仮想環境を作る方法もあります。)
そこで、思い切って現状のAnacondaをアンインストールしpython 3.5の入ったAnacondaをインストールすることにしました。
(複数のVersionのpythonを同居させる必要はないと判断しました。)

そのようなときには、Anacondaを過去のVersionをインストールすることで "python 3.5" に対応することができます。
過去のAnacondaは↓にあります。
https://repo.continuum.io/archive/

python 3.5を利用するにはFAQによると、 Python3では ”3.4.2.0”を選択せよ、と記載されています。
https://docs.anaconda.com/anaconda/faq#how-do-i-get-anaconda-with-python-3-5docs.anaconda.com

Anacondaのインストールは↓を参考にしました。
www.procrasist.com

Anacondaをアンインストールする前に、現在使っているパッケージを

$ pip freeze

で調べておきましょう。
パッケージの再構築に必要となるかもしれません。

インストールできました。
f:id:s51517765:20180511191121p:plain
Anaconda pronpt、もしくはWindows10では Power Shellまたは、コマンドプロンプトpythonのversionは確認できます。
Windows power shellはWin10で使えるshellです。

が、しかし、TensorFlowをpip installしようとすると、どうしても

Could not find a version that satisfies the requirement tensorflow (from versions: )

というErrorがでてインストールできません。
よくみると、インストーラが32-bit用であったようです。
上のキャプチャでpythonのバージョンとともにAnacondaのヴァージョンが出ていて、32-bitと出ていました。

再度、アンインストールして64-bit用をインストール。(もしかして上書インストールとかできるんだろうか?未確認。)
f:id:s51517765:20180511211435p:plain
f:id:s51517765:20180513111838p:plain

$ pip install tensorflow

上手くいきました。
このほか、janome、beautifulsoup、selenium、tweepyなど絶対使うものと、機械学習につかうkerasは一緒にインストールしておきます。

$ pip install keras

(32-bit版AnacondaでCPUとマッチしていなくてもこの辺はインストールできてしまうようです。ちなみにTensorFlowは64-bit版pythonでしか動作しないという報告もあります。)

You are using pip version 8.1.2, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

pip をversion upしましょうと出るので、これもアップデート。

Anacondaがインストールできたら、pycharmのインタプリタを再設定します。
s51517765.hatenadiary.jp

pycharm上のimport errorが消えて、DebugができるようになればOKです。
これで開発環境はできたはずです。
もちろん、今まで使っていたseleniumやtweepyなども以前のソースコードのまま動作することが確認できました。

まとめ

仮想環境を使わずに機械学習環境を構築するには、過去のAnacondaをインストールするという方法も使えます。
過去のAnacondaのインストーラLinuxMacWindows、32/64-bitがまとめてリンクされているので正しく選択しましょう。
実際に機械学習を使うのは、これから勉強が必要です。