0

我正在使用卷积神经网络,我正在保存它并通过模型序列化程序类加载它。

我想要做的是能够在稍后回来并继续根据提供给它的新数据训练模型。

我正在做的是使用 ComputationGraph net = ModelSerializer.restoreComputationGraph(modelFileName); 加载它

然后我用 net.train(dataSetIterator); 像以前一样给它数据。

这似乎有效,但它使我的准确性非常糟糕。在我这样做之前大约是 89%,并且,使用相同的数据,经过几次迭代后,它的准确率大约是 50%(使用它刚刚训练自己的相同数据,所以如果有的话,它应该变得更加准确正确的?)。

我错过了一步吗?

4

1 回答 1

0

我认为根据所提供的信息很难回答,但我会给你一个例子。我有这个确切的问题。我的应用程序基于 GravesLSTMCharModellingExample(即 LSTM)。我在运行几个 epoch 后保存了我的模型(此时它生成了清晰的句子),但是在加载它时,它产生了垃圾。我以为一切都是一样的,但最后结果证明我没有初始化 CharacterIterator 一样。当我修复它时,它按预期工作。

所以长话短说;在初始化辅助类时检查您的值。

于 2018-02-26T15:14:56.427 回答