TensorFlowによる深層学習を試す
最初は、Googleが中心となって開発し、オープンソースソフトウェアとして公開されている機械学習ライブラリである「TensorFlow」 で「MNIST」の手書き文字認識のサンプルを実行してみよう。
以下は、実際にDeepLearning BOXを使ってMNIST For ML Beginnersを実行した様子である。

「MNIST For ML Beginners」は、Softmax回帰という関数※を用いた手書き文字認識のチュートリアルとなっており、この段階では精度がおよそ89.97%程度となっていることがわかる。
※ニューラルネットワークの計算に使われる、あるベクトルの各要素の和が1になる、もしくは全要素の和が0~1になる関数。
続けて、「Deep MNIST for Experts」を実行した様子は、以下の通りである。

トレーニングを重ねる都度、精度が向上しており、平均99.2%まで精度を上げることができるようになった。
Cognitive Toolkit (CNTK)による深層学習を試す
次はMicrosoftが開発しているOSSの深層学習フレームワークである「Cognitive Toolkit(CNTK)」で「MNIST」の手書き文字認識のサンプルを実行してみよう。
CNTKは、GPUを活用した並列処理を得意としているライブラリで、深層学習で多く利用されるプログラミング言語Pythonに加えて、C#, C++, Javaなどからも利用できるところが特徴だ。
CNTKのチュートリアルはGitHub上に公開されており、チュートリアルのなかの103シリーズからが「MNIST」を用いた内容となっている。
以下は、CNTKのチュートリアル「畳み込みニューラルネットワークによるMNISTの文字認識」を実行した様子である。

「DLスタートアップサポート」もあり
このように、初学者の筆者であっても、簡単にディープラーニングを試すことができた。
他にも経験豊富なスタッフによるサポートが受けられる「DLスタートアップサポート」などのサービスも用意されており、これから深層学習を利用したいと考えているのであれば、これらのサービスも心強い味方となってくれるだろう。
***
次回は、DeepLearning BOXのLinux版を使って、どのように深層学習を行なえるかレビューしたい。
【関連リンク】
・『DeepLearning BOX』ではじめるディープラーニング② DIGITS + Caffeで画像認識
・株式会社GDEPアドバンス
無料メルマガ会員に登録しませんか?
IoTに関する様々な情報を取材し、皆様にお届けいたします。