機械学習
DeepLearning
ディープラーニング
深層学習

深層学習フレームワークヒッチハイクガイドVer3.0

注意:私は深層学習の専門家ではなくチュートリアルをいくつか動かした程度の初心者です。深層学習のフレームワークについてまとめ記事がかなりあるのですが、情報が古かったり私が知りたいことがなかったりして、自分が知りたいことをまとめました。定期的に更新しています。

深層学習のフレームワーク

Framework Developer License Language 動作環境 Feature Qiitaでのタグ付き解説記事(記事数は2016/10/15現在) Qiitaでのタグ付き解説記事(記事数は2017/07/17現在) Qiitaでのタグ付き解説記事(記事数は2018/02/12現在)
TensorFlow Google Apache License 2.0 Python, R Interface to TensorFlow 研究成果、ドキュメント量、関連書籍とも独走状態。A Neural Network Playground - TensorFlowでWEB上で、どんな動作をするかが簡単に試せる。 445記事 1,031記事 1,445記事
Chainer Preferred Infrastructure, Inc. Preferred Networks, Inc. License Python 解説本『Chainerによる実践深層学習』があり、日本発なこともあり日本ではかなり勢いがあると思う。
Caffeで作ったモデルを読み込める。
Chainer Playground βができた。
238記事 414記事 536記事
Keras MIT License Python, R TensorFlow, Theanoを裏で動かすための記述を簡単にしたライブラリ。Cognitive Tool Kitにも対応した。本家サイトに日本語ページあり。 34記事 250記事 475記事
Keras.js MIT License JavaScript Kerasをブラウザ上で実行できるJavaScriptライブラリ 1記事 1記事
Caffe Berkeley Vision and Learning Center BSD 2-Clause license Python, C++ 解説本『初めてのディープラーニング --オープンソース"Caffe"による演習付き 63記事 103記事 122記事
Theano License Python 32記事 40記事 48記事
Cognitive Tool Kit Microsoft License C++, C#/.NET, Python, Java CNTKがバージョンアップとともに改名した。Kerasに対応 CNTKとして1記事 CNTKとして9記事 CNTKとして42記事
Torch Facebook Lua 7記事 35記事 35記事
mxnet mxnet/Amazon Apache License 2.0 C++, Python, R, Scala, Julia, Matlab, and Javascript 2記事 14記事 21記事
Deeplearning4j Apache 2.0 License Java 解説本『Deep Learning Javaプログラミング 深層学習の理論と実装 (impress top gear) 11記事 15記事 15記事
Darknet C 1記事 10記事 15記事
Neural Network Libraries / Neural Network Console Sony Apache License 2.0 Python, C++, GUI 2017/06/27公開 Neural Network Console はGUI操作で深層学習のネットワーク構築から実行まで可能。 - タグなし記事が1記事のみ タグなし"Neural Network Libraries"で4記事のみ タグなし"Neural Network Console"で14記事
Pylearn2 3-claused BSD license Python 11記事 12記事 12記事
Sonnet DeepMind Apache License 2.0 Python - 4記事 7記事
Deel 株式会社UEI MIT License Python Deelタグなし記事が1記事のみ 2記事 2記事
DyNet カーネギーメロン大 Apache License 2.0 Python, C++ - 1記事 1記事
ReNom GRID ReNom Subscription Agreement Ver. 1.0 Python 日本発 - - タグなし記事が3記事
H2O Python, R httpサーバーのH2Oについての記事が混在し不明
on Spark
TensorFlowOnSpark Yahoo Apache License 2.0 - タグなし記事が4記事 タグなし記事が5記事
CaffeOnSpark Yahoo Apache License 2.0 - 記事見当たらず タグなし記事が2記事
開発停止?
DSSTNE Amazon Apache License 2.0 Amazonはmxnetを採用とのこと。Githubのページも7ヶ月以上更新がなく、なくなっていくと思われる 4記事 4記事 4記事

試してみよう

比較

  • Google Trend /TensorFlow, Theano, CNTK, Chainer
    • Caffe, Keras, Torch, H2O, Darknet, Deelは深層学習フレームワークだけを特定できず外している。Pylearn2, Deeplearning4j, mxnetはヒット数が少ない。
    • 世界
      • TensorFlowが圧倒的
    • 日本
      • Chainerは世界だと4番目だが日本では2番目でTensorFlowと張り合っている
  • ChainerサイトでのChainer, Theano, Torch, Caffeの機能比較

フレームワークを複数紹介しているブログ記事(更新日確認は2018/02/12現在)

フレームワークを複数解説している書籍

雑感

  • 本命
    • 初心者がやるなら情報量が多いTensorFlowがいいのだろう。Kerasを使うかどうかは好み?Kerasを用いるのが一般的となってきている。
      • 一時期までは(昔話だねもう)Caffe, Pylearn2が2大と言われていたがTensorFlowが一気に追い抜いた感がある。
  • 対抗
    • Chainerも日本発で応援したいけど最初から世界を目指しているのだろう、日本語ドキュメントが少ない。TensorFlowがトップランナーだがChainerもそれに続いている。
      • 自然言語処理に強いらしい。自然言語処理だと日本語の問題もあるので、強みがあるか。書籍も充実して日本ではかなり強力な感じとなってきている。
    • SONYのNeural Network Libraries/ConsoleがGUI操作を売りに、書籍も出して大宣伝している。コマンド操作がつらく、GUI頼りで深層学習を使えこなすのは難しいと思うけど注目。
  • その他
    • Rならmxnetの1択と思っていたが、Kerasが対応した。どうなるだろう。mxnetはAmazonが応援についたけどあまり話題を聞かない、、、H2Oはドキュメントが多いのだが、使っている記事などをあまり見かけない。
    • CのDarknetが注目。早いし、個人?でここまでチュートリアルセットを充実させているのは期待感あり。と注目していたけどその後話題をほとんど聞かない、、、
    • Connitive Tool Kitは情報が少なかったがPython対応、Keras対応で伸びてくるか。と思ったけど話題をあまり聞かず。PFNさんと組んだりしているようなのでChainerに取り込まれるのか。
    • Sonnetは何か起こしてくれそうで楽しみ。だったが、話題をほとんど聞かず。