Keras 是一个用 Python 编写的高级神经网络 API,它能够以 TensorFlow, CNTK, 或者 Theano 作为后端运行。Keras 的作者——谷歌工程师 François Chollet 表示,Keras 更像是一个界面而不是一个独立的机器学习框架。
Keras 允许简单而快速的原型设计(用户友好,高度模块化,可扩展性),同时支持卷积神经网络和循环神经网络,以及两者的组合,而且在还可以在 CPU 和 GPU 上无缝运行与切换。总体来说,Keras 具有以下几大优点:
- 用户友好:Keras 提供一致而简洁的 API,能够极大减少一般应用下用户的工作量,同时,Keras 提供清晰和具有实践意义的 bug 反馈。
- 模块性:模型可理解为一个层的序列或数据的运算图,完全可配置的模块可以用最少的代价自由组合在一起。具体而言,网络层、损失函数、优化器、初始化策略、激活函数、正则化方法都是独立的模块,你可以使用它们来构建自己的模型。
- 易扩展性:添加新模块超级容易,只需要仿照现有的模块编写新的类或函数即可。创建新模块的便利性使得 Keras 更适合于先进的研究工作。
- 与 Python 协作:Keras 没有单独的模型配置文件类型(作为对比,Caffe 有),模型由Python 代码描述,使其更紧凑和更易 debug,并提供了扩展的便利性。
截至 2017 年 11 月,Keras 的用户数已经超过 20 万。可以说,Keras 的火热也早已传到了中国。一些志愿者早早地就翻译了 Keras 的英文文档(https://keras-cn.readthedocs.io/en/latest/),造福国人。
近日,François Chollet 又在 Twitter 上宣布,“中文版的 Keras 来了。”
从下图的 Keras 中文版目录可以看出,该文档的汉化版还不完全。从 Processing 这一章节开始,文档依然全是英文,预计完整的汉化版还得一段时间。
官方版 Keras 中文文档链接:https://keras.io/zh/constraints/