今更ではありますが、今年のPythonキーワードの中で外すことはできないのではないでしょうか?
というわけで今年を振り返ってお世話になったDeepLearning系Pythonライブラリを紹介したいと思います。
Keras
chainer, tensorflow, mxnetなどいろいろなフレームワークが出てますが、単純にGithubのスター数でみると次の順で人気なようです。(12月25日現在)
- tensorflow(40959)
- keras(10509)
- mxnet(7288)
- chainer(1910)
tensorflow大人気なのが分かりますね。kerasはコード行数が少なくて済むので好きなのですが、tensorflow-slimなども出てきて、今後もtensorflowベースでより簡単に書けるライブラリが出てきそうです。
keras-rl
kerasを使ったDeep Reinforcement Learingのライブラリです。OpenAI Gymの環境に対応しています。
以下の基本的な深層強化学習のアルゴリズムが実装されています。
Kerasには他にもkerlymというOpenAI Gymに対応した深層強化学習ライブラリもあります。
tensorflowベースのライブラリではrllabというのがあります。こちらはOpenAIが作っていて、規模も大きく、実装されているアルゴリズムが上のものに加えてさらに以下のものがあります。
- Trust Region Policy Optimization
- CMA-ES
- Truncated Natural Policy Gradient
- Reward-Weighted Regression
- Relative Entropy Policy Search
いろいろこっちも良さそうなのですが、keras-rlのほうがシンプルなのでそっちを使ってます。
keras-resnet
Resnetはネットワークの層を飛躍的に増やすことを可能にしました。Githubをでもかなりたくさんの方が実装しています。kerasに限らず主な実装を上げておきます。
GAN
GANも流行りました。次から次へと新しいGANが提案されてはGithubですぐに実装されるという感じで、すごい競争激しいです。
KerasのGAN専用ライブラリもありました。
GAN用のモデル定義や学習方法がやりやすくなっているようです。
quiver
学習結果などの描画ツールもいろいろ出てます。quiverはKerasでConvnetの描画を行ってくれます。
その他描画ツールです。
その他
個人的にKeras好きなので、Kerasまわりで気になるツールを集めました。
-
keras-js
Javascript用のKerasです。 -
keras-resources
Kerasに関連することを集めています。かなりお世話になってます。 -
elephas
Kerasで複数のPCを使って、Distributed Deep Learningを行うことができます。 -
hyperas
Keras用ハイパーパラメータの最適化です。 -
seya
Kerasをパワーアップさせます。聖闘士星矢の星矢らしいです。