失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Keras中文文档总结

Keras中文文档总结

时间:2019-02-23 15:23:35

相关推荐

Keras中文文档总结

一、主页

上手Keras

◆ Keras 的核心数据结构是model,一种组织网络层的方式。最简单的模型是 Sequential 顺序模型,它由多个网络层线性堆叠。对于更复杂的结构,你应该使用 Keras 函数式 API,它允许构建任意的神经网络图。

Sequential 模型如下所示:

from keras.medels import Sequentialmodel = Sequential()

◆ 可以使用.add()来堆叠模型:

from keras.layers import Densemodel.add(Dense(units=64,activation='relu',input_dim=100))model.add(Dense(units=10,activation='softmax'))

◆ 完成模型构建后,使用.compile()来配置学习过程:

# 选择交叉熵损失函数作为损失函数,随机梯度下降作为优化方法,准确率作为评价指标pile(loss='categorical_crossentropy',optimizer='sgd',metrics='accuracy')

◆ 现在可以批量地在训练数据上进行迭代了:

# X_train和Y_train是Numpy数组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)

二、快速开始

1、Sequential顺序模型

from keras.models import Sequentialfrom keras.layers import Dense,Activationmodel = Sequential()model.add(Dense(32,input_dim=784))model.add(Activation('relu'))

(1)指定输入数据的尺寸

模型第一层(只有第一层需要)需要接收关于其输入尺寸的信息:

◆传递 input_shape 参数给第一层,它表示张量的形状,例如一个一阶张量[1,2,3]的shape为(3,),二阶张量[[1,2,3],[4,5,6]]的shape为(2,3)。

◆ 例如 Dense 的2D层,可以通过参数 input_dim 指定输入尺寸,而3D层使用 input_dim 和 input_length 参数。

input_length 表示输入数据的长度,input_dim 表示数据的维度

input_dim = input_shape(input_dim,)

input_dim,input_length = input_shape(input_length,input_dim)

◆ 如果需要为输入指定一个固定的 batch 大小,可以传递一个 batch_size 参数。例如,同时将 batch_size=32 和 input_shape=(6,8) 传递给一层,则每一批输入的尺寸为(32,6,8)。

# 由上述可得model.add(Dense(32,input_shape(784,)))# 等价于model.add(Dense(32,input_dim=784))

(2)模型编译

模型训练之前,需要配置学习过程,通过 .compile() 方法完成,接收三个参数:

◆ 优化器 optimizer。可以是现有优化器的字符串标识符,如 rmsprop 或 adagrad,也可以是Optimizer 类的实例。

◆ 损失函数 loss。可以是现有损失函数的字符串标识符,如 categorical_crossentropy 或 mse,也可以是一个目标函数。

◆ 评估标准 metrics。对于分类问题,metrics = [‘accuracy’]

(3)模型训练

通常会使用 .fit() 函数

未完待续。。。

如果觉得《Keras中文文档总结》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。