Keras

Kerasは、Pythonで書かれたオープンソースニューラルネットワークライブラリである。、Deeplearning4j、TensorFlow、CNTK、の上部で動作することができる。ディープニューラルネットワークを用いた迅速な実験を可能にするよう設計され、最小限、モジュール式、拡張可能であることに重点が置かれている。プロジェクトONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System) の研究の一部として開発された。中心的な開発者、メンテナはGoogleのエンジニアのFrançois Cholletである。
2017年、GoogleのTensorFlowチームは、TensorFlowのコアライブラリにおいてKerasをサポートすることを決定した。Cholletは、Kerasはタスク全体を担う機械学習ライブラリよりむしろインタフェースとして着想された、と説明した。Kerasはバックエンドの科学計算ライブラリにかかわらず、ニューラルネットワークの設定を容易に行うことができる、より高いレベルでより直感的な一連の抽象化を提供している。マイクロソフトはKerasにCNTKバックエンドを追加する作業を行っている。
特長.
Kerasライブラリは、レイヤー（層）、目的関数、活性化関数、最適化器、画像やテキストデータをより容易に扱う多くのツールといった一般に用いられているニューラルネットワークのビルディングブロックの膨大な数の実装を含む。コードはGitHub上にホストされ、GitHub issues pageや channel、Slack channelなどのサポートフォーラムがある。
標準的なニューラルネットワークに加えて、Kerasは畳み込みニューラルネットワークと回帰型ニューラルネットワークをサポートしている。また、Dropout、Batch Normalization、Poolingなどの他の一般的なユーティリティレイヤをサポートしている。
Kerasは、スマートフォン (iOS/Android)、Web、またはJava仮想マシンでディープモデルを製品化することを可能にする。また、GPUとTPUのクラスター上でディープラーニングモデルの分散トレーニングを使用することもできる。