Keras简介

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Thinking_boy1992/article/details/53205889

本文摘自
Keras是一个高水平的神经网络库,使用Python进行编写,能够在Tensor或Theano的基础之上运行,它的开发目标是能够快速实验;

如果你需要一个深度学习库,使用Keras:
简单和快速的原型设计(通过整体的模块化、极简化艺术、和扩展性)
提供卷积神经网络和循环神经网络,以及二者的结合
支持任意的链接方案(包括多输入和多输出训练);
可以运行在CPU和GPU上;

 Keras适用于Python 2.7-3.5. 

指导原则(Guiding principles)
模块化
一个模块能够被独立理解为一个序列和一个图像,

极简主义
易扩展性
Python 协同性

开始(Getting started: 30 seconds to Keras)
Keras中的核心数据结构是模型,一种方式进行组织层次
模型的主要形式是Sequential model,,就是层次的线性叠加;
对于更复杂的架构,应该使用 Keras functional API.

这里是Sequential 模型:

from keras.models import Sequential
model = Sequential()

通过.add()进行层次叠加:

from keras.layers import Dense, Activation

model.add(Dense(output_dim=64, input_dim=100))
model.add(Activation("relu"))
model.add(Dense(output_dim=10))
model.add(Activation("softmax"))

一旦你的模型看起来很好,使用.compile()函数进行学习过程的配置;

model.compile(loss='categorical_crossentropy', optimizer='sgd', metrics=['accuracy'])

如果需要,你能够进一步配置优化器。Keras的核心原则是使事情变得合理的简单,它允许使用者需要时能够完全的自主;

from keras.optimizers import SGD
model.compile(loss='categorical_crossentropy', optimizer=SGD(lr=0.01, momentum=0.9, nesterov=True))

现在你能够用你的训练数据批次迭代:

model.fit(X_train, Y_train, nb_epoch=5, batch_size=32)

可选择的,你能够手动的向你的模型添加批次;

model.train_on_batch(X_batch, Y_batch)

评价性能:

oss_and_metrics = model.evaluate(X_test, Y_test, batch_size=32)

对新的数据生成预测:

classes = model.predict_classes(X_test, batch_size=32)
proba = model.predict_proba(X_test, batch_size=32)

构建一个问答系统,图像分类模型,神经图灵机,word2vec嵌入器或其他的任何模型是快速的;深度学习背后的思想是简单的,所有为什么它的实现是痛苦的?
关于Keras的教程:
Getting started with the Sequential model
Getting started with the functional API
在示例文件夹中会发现很多优秀的模型:关于记忆网络的问答系统,使用迭代LSTMs进行文本生成;
安装(Installation)
Keras使用下述依赖库:
numpy, scipy
pyyaml
HDF5 and h5py (optional, required if you use model saving/loading functions)
cuDNN:Optional but recommended if you use CNNs:
当使用TensorFlow后台:
Tensor Flow
See installation instructions.
当使用Theano 后台:
Theano
See installation instructions.
为了安装Keras,cd 到Keras文件夹,运行安装命令:

sudo python setup.py install

也可以从PyPi中进行安装:

sudo pip install keras

从Tensor Flow到Theano的转换(Switching from TensorFlow to Theano)
默认情况下,Keras使用Tensor Flow作为它的向量计算库,
下面这个指南用来配置Keras的后台;

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页