Keras —— 序贯模型和函数式模型

序贯模型

序贯模型是多个网络层的线性堆叠,是函数式模型的简略版,为最简单的线性、从头到尾的结构顺序,不发生分叉。

1、应用序贯模型的基本步骤

  1. model.add,添加层;
  2. model.compile,模型训练的BP模式设置;
  3. model.fit,模型训练参数设置 + 训练;
  4. 模型评估
  5. 模型预测

2、创建

1、可以通过向Sequential模型传递一个layer的list来构造该模型:

from keras.models import Sequential
from keras.layers import Dense, Activation

model = Sequential([
Dense(32, units=784),
Activation('relu'),
Dense(10),
Activation('softmax'),
])

2、也可以通过.add()方法一个个的将layer加入模型中:

model = Sequential()
model.add(Dense(32, input_shape=(784,)))
model.add(Activation('relu'))

3、指定输入数据的shape

模型需要知道输入数据的shape,因此,Sequential的第一层需要接受一个关于输入数据shape的参数,后面的各个层则可以自动的推导出中间数据的shape,因此不需要为每个层都指定这个参数。有几种方法来为第一层指定输入数据的shape

1、传递一个input_shape的关键字参数给第一层,input_shape是一个tuple类型的数据

model = Sequential()
model.add(Dense(64, input_shape=(20,), activation='relu'))

2、有些2D层,如Dense,支持通过指定其输入维度input_dim来隐含的指定输入数据shape,是一个Int类型的数据。一些3D的时域层支持通过参数input_dim和input_length来指定输入shape。

model = Sequential()
model.add(Dense(64, input_dim=20, activation='relu'))

4、编译

在训练模型之前,我们需要通过compile来对学习过程进行配置。compile接收三个参数:优化器optimizer,损失函数loss,指标列表metrics

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值