Python(基本的なこと006: Tensorflowの設定)

■今回からTensorflowを試してみる。
Tensorflowは機械学習のライブラリの1つとして有名なもの。機械学習でできることは、あいまいなものを認識することだと思う。例えば、手書きで2という数字を書いた場合、丁寧に書くこともあれば適当に書くこともあり、人ならよほど崩れていない限り2と認識することができるけど、コンピュータではプログラムされたものから外れれば判断できない。どんなにプログラムを細かくしていってもこの前提からは外れない。一方、機械学習では大量のデータをもとに判断するので、限りなく人と同じ判断ができるのではと思う。実際、人も過去の経験に基づいて2と認識しているだろうし。
インターネットが広まって、専門的な知識が誰でも手に入るようになったけど、機械学習が広まれば、専門家の判断を(データさえあれば)誰でもできるようになるのではと思う。極端な話かもしれないけど、可能性を感じるところ。
前にオライリー社の「実践DeepLearning」(2018年4月版、りゅうぐうのつかいが表紙になっているもの)を買ったので、そのサンプルなど試しながら進めていくつもり。

では、まず設定から。
NumpyやPandasと同様にpycharmの設定からライブラリを追加する。tensorflowで検索すると関連しそうなライブラリがずらっと出てきた。とりあえず、何も記載がないtensorflowをインストール。現時点で最新は2.6.0。

何度かエラーが出たけど、バージョン2.5.0でインストールできた。

細かい仕組みは後にして、まずは動かしてみようと思い、本に記載のサンプルをコピーして実行してみた。
下のエラーが出た(AttributeError: module 'tensorflow' has no attribute 'placeholder')。少し調べてみると、tensorflowがバージョン2.0.0になったときにplaceholderはなくなったらしい。

このままでは本のサンプルが実行できないので、バージョンを落とす(ちなみに、本ではバージョン1.4.0を使用している)。
だけど、ここでもエラー(ERROR: Could not find a version that satisfies the requirement tensorflow==1.15.0)。さらに調べてみると、pythonのバージョンが3.8ではtensorflowのバージョン1.15は使えないらしい(バージョン3.6が必要)。

仕方ないので、python3.6をインストールした。
tensorflowのライブラリのインストールでまた別のエラーが出た(Could not install packages due to an EnvironmentError)。エラーの中身を見ると、別のプロセスで使用されているとのことなので、パソコンを再起動してもう一度行ったけど、やはり同様のエラーが出る。

原因が分からないので、インストールをコマンドプロンプトから行う方法に変えてみる。データがダウンロードされ、何とかtensorflow バージョン1.15.5がインストールできたよう(とりあえずplaceholderのエラーは出なくなった)。

最終的なバージョンが次。
Python 3.6.8
tensorflow-gpu 1.15.5

次に、データセットの導入。mnistのデータセット(訓練用60000、試験用10000の手書きの数字の画像)が有名らしく、本の中でもこれが使用されている。このデータセットも場所が変わっているようで、導入に向けて試行錯誤中。

サンプルのコードを試す前に心折れそう...