Keras:Python深度学习库简介
Posted Joey-Zhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Keras:Python深度学习库简介相关的知识,希望对你有一定的参考价值。
Keras:Python深度学习库简介
Keras是一个高级神经网络API,用Python编写,能够在TensorFlow,CNTK或Theano之上运行。 它的开发重点是实现快速开发。 能够以最小的时间成本从理论到结果,这也进行快速研究验证的关键。
如果您需要深度学习库,请使用Keras:
- 允许简单快速的原型设计(通过用户友好接口,模块化和可扩展性)。
- 支持卷积网络和循环网络,以及两者的组合。
- 在CPU和GPU上无缝运行。
30秒入门Keras
Keras的核心数据结构是一种模型,一种组织层的方式。 最简单的模型是Sequential模型,一个线性的层叠。 对于更复杂的体系结构,您应该使用Keras功能API,它允许构建任意图层图。
这是Sequential模型:
from keras.models import Sequential
model = Sequential()
堆叠图层用.add():
from keras.layers import Dense
model.add(Dense(units=64, activation='relu', input_dim=100))
model.add(Dense(units=10, activation='softmax'))
一旦您的模型完成,请使用.compile()配置其学习过程:
model.compile(loss='categorical_crossentropy',
optimizer='sgd',
metrics=['accuracy'])
如果需要,您可以进一步配置优化程序。 Keras的核心原则是使事情变得简单,同时允许用户在需要时完全控制(最终控制是源代码的易扩展性)。
model.compile(loss=keras.losses.categorical_crossentropy,
optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True))
您现在可以批量迭代您的训练数据:
# x_train and y_train are Numpy arrays --just like in the Scikit-Learn API.
model.fit(x_train, y_train, epochs=5, batch_size=32)
或者,您可以手动将批次提供给模型:
model.train_on_batch(x_batch, y_batch)
在验证批次中评估:
loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)
或者生成对新数据的预测:
classes = model.predict(x_test, batch_size=128)
构建问答系统,图像分类模型,神经图灵机或任何其他模型同样快。深度学习背后的想法很简单,那么为什么他们的开发会很痛苦呢?
Keras优先考虑开发人员的体验
- Keras是专为人类而非机器设计的API。 Keras遵循降低认知负荷的最佳实践。 这使得Keras易学易用。
- 作为Keras用户,您可以更高效地工作,让您比竞争对手更快地尝试更多创意 - 这反过来又可以帮助您赢得机器学习竞赛。 作为Keras用户,您可以更高效地工作,让您比竞争对手更快地尝试更多创意 - 这反过来又可以帮助您赢得机器学习竞赛。
- 这种易用性不会以降低灵活性为代价.
以上是关于Keras:Python深度学习库简介的主要内容,如果未能解决你的问题,请参考以下文章
OpenCV-Python实战(18)——深度学习简介与入门示例(快来一起推开深度学习的大门吧)
python 参考:[Python中使用Keras深度学习库的回归教程](http://machinelearningmastery.com/regression-tutorial-keras-