Keras创建一个模型的步骤如下:
(一)模型定义。定义模型的结构
(二)模型编译。指定损失函数和优化器,并调用模型的compile() 函数,完成模型编译
(三)训练模型。通过调用模型的fit() 函数来训练模型
(四)模型预测。调用模型的evaluate() 或者predicr() 等函数对新数据进行预测
定义模型的三种方法:
1.
# 方式一: 使用 .add() 方法将各层添加到模型中
# 导入相关包
from keras.models import Sequential
from keras.layers import Dense, Activation
# 选择模型,选择序贯模型(Sequential())
model = Sequential()
# 构建网络层
# 添加全连接层,输入784维,输出空间维度32
model.add(Dense(32, input_shape=(784,)))
# 添加激活层,激活函数是 relu
model.add(Activation('relu'))
# 打印模型概况
model.summary()
2.
# 方式二:网络层实例的列表构建序贯模型
# 导入相关的包
from keras.models import Sequential
from keras.layers import Dense, Activation
# 选择模型,选择序贯模型(Sequential())
# 通过将网络层实例的列表传递给 Sequential 的构造器,来创建一个 Sequential 模型
model = Sequential([
Dense(32, input_shape=(784,)),
Activation('relu')
])
# 打印模型概况
model.summary()
3.
# 方式三:函数式模型
# 导入相关的包
from keras.layers import Input, Dense,Activation
from keras.models import Model
# 输入层,返回一个张量 tensor
inputs = Input(shape=(784,))
# 全连接层,返回一个张量
output_1 = Dense(32)(inputs)
# 激活函数层
predictions= Activation(activation='relu')(output_1)
# 创建一个模型,包含输入层、全连接层和激活层
model = Model(inputs=inputs, outputs=predictions)
# 打印模型概况
model.summary()