1.导入tf.keras
import tensorflow as tf
from tensorflow import keras
2.构建一个简单的模型
2.1Sequential model
在Keras中,通过组装图层来构建模型。最常见的模型类型是:tf.keras.Sequential模型。
构建一个简单的全连接模型:
model = keras.Sequential()
model.add(keras.layers.Dense(64, activation='relu')
2.2 Configure the layers
在tf.keras.layers中有很多层,下面是一些通用的参数:
- activation:设置层的激活函数。 此参数由内置函数的名称或可调用对象指定。 默认情况下,不应用任何激活。
- kernel_initializer 和 bias_initializer:设置层创建时,权重和偏差的初始化方法。
- kernel_regularizer和bias_regularizer:设置层的权重、偏差的正则化方法。比如L1或L2正则。
3.Train and evaluate
3.1 Set up training
构建模型后,通过调用compile方法配置其训练过程:
model.compile(optimizer=tf.train.AdamOptimizer(0.001),
loss='categorical_crossentropy',
metrics=['accuracy'])
- optimizer:训练过程的优化方法。此参数通过 tf.train 模块的优化方法的实例来指定,比如:AdamOptimizer,RMSPropOptimizer,GradientDescentOptimizer。
- loss:训练过程中的损失函数。
- metrics:训练过程中,监测的指标。
3.2 Iuput Numpy data
fit 方法训练数据
import numpy as np
data = np,random.random((1000, 32))
labels = np.random.random((1000,10))
val_data = np.random.random((100, 32))
val_labels = np.random.random((100, 10))
model.fit(data, labels, epochs=10, batch_size=32, validation_data=(val_data, val_labels))
# epochs 训练多少轮
# batch_size 当传递Numpy数据时,模型将数据分为较小的批次,并在训练期间迭代这些批次。此整数指定每个批次的大小。
# validation_data 在对模型进行原型设计时,您希望轻松监控其在某些验证数据上的性能。 传递这个参数 - 输入和标签的元组 - 允许模型在每个epoch的末尾以传递数据的推理模式显示损失和度量。
3.3 Evaluate and predict
model.evaluate(x, y, batch_size=32)
model.evaluate(x, batch_size=32)
网友评论