TensorFlowは、機械学習や深層学習のプログラムを実装する際に使用できるライブラリです。
この記事では、TensorFlowを使って機械学習や深層学習に挑戦してみようと思っているあなたに向けて、TensorFlowのインストール方法と、オススメの公式チュートリアルを紹介しています。
また、KerasやTF-SlimといったTensorFlowのラッパーライブラリも簡単に紹介しています。
では、始めましょう。
Pythonがオススメの理由とは?
TensorFlowには、Java用、Go用、C用など、Python以外のプログラミング言語用のインターフェースも用意されています。
参考:https://www.tensorflow.org/install/install_java
参考:https://www.tensorflow.org/install/install_go
参考:https://www.tensorflow.org/install/install_c
しかし、Java用とGo用のページには、安定性を保証しないと書かれていますので、使わない方が良いでしょう。
「安定性を保証しない」と書かれていないC用でも良さそうですが、実はTensorFlowの公式チュートリアルでは、Pythonで説明されています。
以上のことから、Cを使わなければいけない特別な事情がなければ、PythonでTensorFlowを利用することをオススメします。
若干話がそれますが、TensorFlowではなく、scikit-learnやChainerなど、他のライブラリと比較してみたいという方は、他のライブラリも紹介している以下の記事をご覧ください。
PythonとTensorFlowのインストール
Python用のTensorFlowを使うことにしたら、次にやるべきことは、Pythonのインストールと、TensorFlowのインストールです。
PythonにもTensorFlowにも様々なバージョンがあり、正しく組み合わせる必要があります。
また、TensorFlowには、インストール方法が異なるCPU版とGPU版が存在するなど、やや複雑になっています。
PythonとTensorFlowのインストールについては、以下の記事で詳しく説明していますので、こちらをご覧ください。
TensorFlow公式チュートリアルまとめ
PythonとTensorFlowをインストールして、「Hello, TensorFlow!」と表示できたら、次はもう少ししっかりした機械学習のコードを見てみましょう。
私が公式チュートリアルから1つだけ選ぶとしたら、手書き数字の認識ができるチュートリアルですね。
以下の記事で紹介しているcnn_mnist.pyを読んでみてください。
この記事では、チュートリアルをなぞるだけでなく、少しコードを書き加えて、自分の手書き数字を認識できるか試していますので、TensorFlowの取っかかりとしてはちょうど良いでしょう。
手書き数字の認識に飽きたら、公式チュートリアルをいくつか試してみても良いでしょう。
公式チュートリアルについては、以下の記事でまとめていますので、この記事の中から気になるチュートリアルを選んで挑戦してみてくださいね。
その他
PythonのAPIドキュメント
TensorFlowを利用するPythonのコードを読んでいて気になることがあったら、APIドキュメントを読んでみましょう。
参考:https://www.tensorflow.org/api_docs/python/tf
公式チュートリアルのコードだけでなく、APIドキュメントを読んでいけば、さらにTensorFlowへの理解が深まるでしょう。
KerasやTF-Slimも便利
TensorFlowだけでも十分使えるのですが、これをさらに簡単に使えるようにするために、KerasやTF-Slimといったラッパーライブラリも開発が進められています。
Kerasは、元々TensorFlowとは別のプロダクトでしたが、現在ではTensorFlowに統合されています。
ただ、TensorFlowに統合した後のKerasを使用したサンプルコードが少なく、初めが大変という状況になっています。
TF-Slimも同様にTensorFlowを簡単に使えるようにするライブラリです。
TF-Slimについては、以下の記事で紹介していますので、こちらをご覧ください。
Raspberry Piにもインストールできる
TensorFlowは、ラズベリーパイ財団が発売している小型コンピュータであるRaspberry Piにもインストールできます。
Raspberry Piのカメラモジュールで撮影した画像に何が写っているかを識別するなど、機械学習の成果を実際に活用するには、Raspberry Piはちょうどよいコンピュータだと言えます。
Raspberry PiにTensorFlowをインストールする方法については、以下の記事でまとめました。
この記事を参考に、TensorFlowのインストールはサッと終わらせて、機械学習の活用に取り組んでみてはいかがでしょうか。
まとめ
今回は、TensorFlowにはPythonに限らずいくつかの言語用のインターフェースが用意されていることを説明しました。
とはいえ、公式チュートリアルがPythonで書かれているためPythonを使うことをオススメしました。
以前と比べると、機械学習や深層学習を簡単に扱えるようにはなりましたが、理解を深めていかないと実際に成果をあげるのは非常に大変で、時間がかかります。
もっと簡単になるまで始めないのか、今から始めてゆっくりでも理解を深めていくのかは、あなたが選べます。
どうしますか?今から初めて見ませんか?