Keras
作者 | François Chollet |
---|---|
開発元 | various |
初版 | 2015年3月27日 |
最新版 |
2.4.0[1]
/ 2020年6月18日 |
リポジトリ | |
プログラミング 言語 | Python |
プラットフォーム | クロスプラットフォーム |
サポート状況 | 開発中 |
種別 | ニューラルネットワーク |
ライセンス | MIT |
公式サイト |
keras |
Kerasは、Pythonで書かれたオープンソースニューラルネットワークライブラリである。MXNet、Deeplearning4j、TensorFlow、CNTK、Theanoの上部で動作することができる[2][3]。ディープニューラルネットワークを用いた迅速な実験を可能にするよう設計され、最小限、モジュール式、拡張可能であることに重点が置かれている。プロジェクトONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System) の研究の一部として開発された[4]。中心的な開発者、メンテナはGoogleのエンジニアのFrançois Cholletである。
2017年、GoogleのTensorFlowチームは、TensorFlowのコアライブラリにおいてKerasをサポートすることを決定した。Cholletは、Kerasはタスク全体を担う機械学習ライブラリよりむしろインタフェースとして着想された、と説明した。Kerasはバックエンドの科学計算ライブラリにかかわらず、ニューラルネットワークの設定を容易に行うことができる、より高いレベルでより直感的な一連の抽象化を提供している[5]。マイクロソフトはKerasにCNTKバックエンドを追加する作業を行っている[6][7]。
特長
[編集]Kerasライブラリは、レイヤー(層)、目的関数、活性化関数、最適化器、画像やテキストデータをより容易に扱う多くのツールといった一般に用いられているニューラルネットワークのビルディングブロックの膨大な数の実装を含む。コードはGitHub上にホストされ、GitHub issues pageやGitter channel、Slack channelなどのサポートフォーラムがある。
標準的なニューラルネットワークに加えて、Kerasは畳み込みニューラルネットワークと回帰型ニューラルネットワークをサポートしている。また、Dropout、Batch Normalization、Poolingなどの他の一般的なユーティリティレイヤをサポートしている。
Kerasは、スマートフォン (iOS/Android)、Web、またはJava仮想マシンでディープモデルを製品化することを可能にする。また、GPUとTPUのクラスター上でディープラーニングモデルの分散トレーニングを使用することもできる。
脚注
[編集]- ^ “Keras 2.4.0”. 2021年1月16日閲覧。
- ^ “This Is What Makes Keras Different, According To Its Author”. forbes.com. 2016年9月20日閲覧。
- ^ Deeplearning4j Keras Frontend
- ^ “Keras Documentation”. keras.io. 2016年9月18日閲覧。
- ^ Chollet GitHub Comment
- ^ CNTK Keras GitHub Issue
- ^ alexeyo. “CNTK_2_0_Release_Notes” (英語). docs.microsoft.com. 2017年6月14日閲覧。