Chainer:ことはじめ


2017年 01月 13日

新年を迎えたので、何か新しいことをしようということで選んでみたのがChainerである。

去年の春、AlphaGoから人工知能の狂乱ブームが始まり、猫も杓子も Deep Learning を勉強しているようで、オライリージャパンの『ゼロからはじめるDeep Learing』がやたらに売れている。
もう4万部を突破しているようだが、あの本を4万人もの人が読んで理解できるなら、日本のIT技術者の層は予想より遥かに厚かったことになるが、実際には人工知能ブームに流されて買っただけで積読状態ではないかと思っている。

Deep Learning(以下DL)でよく利用されている言語がPythonである。といっても、Pythonの基本部分ではなく、NumPyを始めとする拡張部分を使いまくってDLを実現している。つまり、Pythonの基本部分を使いこなすだけでDLのコードが書けるわけではない。

ちょっと勉強し、拡張機能を使えば、かなり簡単にDLを実現できるが、もっともっと安直に横着に怠惰に使いたいという人間の本性を満たすために、さまざまなフレームワークが提供されている。

Googleが開発し公開したTensorFlowが一番有名で、日本語でも書籍が複数冊出ているようだ。
ネット上でも、色々な情報が出ているようだ。
ということで、TensorFlowは避けることにした(笑)

それで、何か別のものはないかと探して見つかったのがChainerというDLのフレームワークである。

とりあえず、本家(http://chainer.org/)を知っておくべきだ。
Chainerは、東大や京大出身者が集まって作ったベンチャー企業であるPreferred Infrastructure社からさらにスピンアウトしたPreferred Networksが作っている。
スピンアウトといっても、役員が一緒なので、ベンチャーの企業内ベンチャーみたいなものだろうか。

たとえば、深層学習フレームワーク Chainer の開発と今後の展開 という62ページのプレゼン資料もある。
著者の得居誠也氏は、現役の東大の情報科学専攻の大学院生である。
その他にもいろいろ資料がネット上にあるので、そのうち紹介しようと思う。

DLでは海外のソフトが圧倒的に強いのだが、そういうのは避けて、日本発のを弄ることにした。

まず、インストールしなければいけないのだが、pipで簡単にインストールできる。
 
pip install chainer

そして、Pythonを起動して、import して、バージョンを確認してみた。
>>> import chainer
>>> chainer.__version__
'1.19.0'
>>>
これで、とりあえず動いているらしいことが分かった。 勉強開始だ!