我使用以下方法创建了一个顺序模型tf.keras:
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(8, input_dim=4))
model.add(tf.keras.layers.Dense(3, activation=tf.nn.softmax))
opt = tf.train.AdamOptimizer(learning_rate=0.001)
model.compile(optimizer=opt, loss="categorical_crossentropy", metrics=["accuracy"])
model.summary()
之后,我使用train_on_batch以下代码创建了一个培训过程:
EPOCHS=50
for epoch in range(EPOCHS):
for metrics, labels in dataset:
# Calculate training loss and accuracy
tr_loss, tr_accuracy = model.train_on_batch(metrics, labels)
当我尝试保存模型时,会收到警告。我不明白为什么,因为我将优化器作为的一部分包括在内model.compile:
tf.keras.models.save_model(
model,
"./model/iris_model.h5",
overwrite=True,
include_optimizer=True
)
警告:tensorflow:TensorFlow优化器无法在实例化后访问优化器属性或优化器状态。因此,我们无法将优化器保存为模型保存文件的一部分。加载模型后,您将不得不再次编译模型。最好改用Keras优化器(请参阅keras.io/optimizers)。
我使用的TF版本是1.9.0-rc2。
月关宝盒
相关分类