【发布时间】:2019-05-12 00:36:50
【问题描述】:
1.
model = Model(inPut, outputs=outPut)
model.compile(loss="mse", optimizer="adam")
for i in range(10):
model.fit(dataX, dataY, epochs=EPOCH, batch_size=BATCHSIZE, verbose=0, shuffle=False)
#save model
2.
model = Model(inPut, outputs=outPut)
for i in range(10):
model.compile(loss="mse", optimizer="adam")
model.fit(dataX, dataY, epochs=EPOCH, batch_size=BATCHSIZE, verbose=0, shuffle=False)
#save model
3.
for i in range(10):
model = Model(inPut, outputs=outPut)
model.compile(loss="mse", optimizer="adam")
model.fit(dataX, dataY, epochs=EPOCH, batch_size=BATCHSIZE, verbose=0, shuffle=False)
#save model
我在 keras 中研究过神经网络。
我希望每次迭代都是每次学习。
但是第二次(第三次..第四次..)迭代学习(model.fit)正在持续进行第一次学习(model.fit)
损失在三个代码中不断发生。
你能告诉我一些每次迭代都是每次学习的方法吗?
每个迭代模型都是另一个模型。
【问题讨论】:
-
我不确定你在追求什么。你只是想在
EPOCHepochs 之后继续使用fit吗?model.fit从上一个 epoch 恢复训练,所以如果我明白你想要什么,它已经在做你想要的了。 -
我希望每个模型在交互上都不同。但在我的代码中,每个 for 语句都是相同的模型。第一个模型保存后,当我训练第二个模型时,模型已经在训练(第一个模型继续应用)。