Kerasは、ニューラルネットワークの構築とトレーニングのための高レベルで人間に優しいAPIを提供するオープンソースのディープラーニングライブラリである。Francois Cholletによって作成され、2015年3月に初めてリリースされた。これは、ディープラーニングへの最も広く使われる入り口の1つとなり、研究者や学生が数行の読みやすいコードでモデルを定義できる点が評価された。
歴史
Kerasは、複数のバックエンド上で動作できる独立したライブラリとして始まり、当初はTheano、その後TensorFlowとMicrosoftのCNTKをサポートした。その人気は、AlexNet後のディープラーニングの波に乗って急速に高まり、2017年にはGoogleがTensorFlowの公式高レベルAPIとして採用し、tf.kerasとして提供した。2023年には、プロジェクトはKeras 3でマルチバックエンドの原点に戻り、単一のコードベースからTensorFlow、PyTorch、JAX上で動作する。これは、研究がPyTorchに集中していた時期に、フレームワークへの囲い込みに対する意図的な賭けだった。
設計哲学
Cholletは、指針となる原則を「人間のためのディープラーニング」と説明した。一貫性とシンプルさを備えたインターフェース、賢明なデフォルト、複雑さの段階的な開示、明確なエラーメッセージである。モデルは、構成可能なレイヤーから組み立てられ、損失関数とオプティマイザでコンパイルされ、勾配降下法、バッチ処理、検証分割、コールバックを処理する単一のfit呼び出しでトレーニングされる。この抽象化により、Kerasは標準的な教育ツールとなり、Andrew Ngによる影響力のあるオンラインコースや、Chollet自身の広く読まれている教科書『Deep Learning with Python』で取り上げられた。
評価と影響
Kerasは、ドキュメントの品質と教育上の明確さで賞賛される一方、研究環境ではトレーニングループの多くを隠しすぎると批判されることもある。上級ユーザーは、カスタムアーキテクチャのために低レベルAPIに切り替えることが多い。そのレイヤー指向の使いやすさは、後のフレームワークやエコシステム全体の高レベルラッパーを形作り、エラーメッセージの哲学は、機械学習ツールの開発者体験に関する議論の参照点となった。現在の大規模なLLM研究はPyTorchが主流であるが、Kerasは業界、教育、応用分野で広く使われ続けており、ディープラーニングの形成期に入門障壁を下げたと評価されている。