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

プログラミングも電気回路も専門外の技術屋の末端が勉強したことや作品をアウトプットするブログ。コードに間違いなど見つけられたら、気軽にコメントください。 C#、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がまとめてリンクされているので正しく選択しましょう。
実際に機械学習を使うのは、これから勉強が必要です。