培训减少,验证 - 增加。培训损失,验证损失减少
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了培训减少,验证 - 增加。培训损失,验证损失减少相关的知识,希望对你有一定的参考价值。
我正在努力实施LRCN但我在培训方面面临障碍。目前,我正在尝试单独训练CNN模块,然后将其连接到RNN。您在下面看到的结果在某种程度上是我迄今为止取得的最好成绩。问题在于除了训练准确性之外,一切似乎都很顺利。它正在逐渐下降。
我的模型在FC层之间存在激进的辍学,所以这可能是一个原因,但是,你认为这些结果有什么问题吗?如果他们继续这个趋势,我应该改变什么呢?
要预测的数字类是3.代码是用Keras编写的。
Epoch 1/20 16602/16602 [==============================] - 2430s 146ms /步 - 损失:1.2583 - acc :0.3391 - val_loss:1.1373 - val_acc:0.3306
Epoch 00001:val_acc从-inf改为0.33058,将模型保存为权重0.01-1.14.hdf5 Epoch 2/20 16602/16602 [===================== =========] - 2441s 147ms /步 - 损失:1.1998 - acc:0.3356 - val_loss:1.1342 - val_acc:0.3719
Epoch 00002:val_acc从0.33058提高到0.37190,将模型保存为权重0.02-1.13.hdf5 Epoch 3/20 8123/16602 [=============> ........ ........] - ETA:20:30-损失:1.1889 - acc:0.3325
我还有两个简短的问题,我暂时无法回答。
- 为什么从我的自定义视频数据生成器输出的张量是尺寸:
(4, 288, 224, 1)
但我的输入形状的层是生成为(None, 288, 224, 1)
?为了澄清形状,我将4个批次包含单个图像分类到非时间分布的CNN中。我使用功能API。 - 后来,当我训练RNN时,我将不得不按时间步进行预测,然后将它们平均并选择最佳的一个作为我整体模型预测的预测。指标['准确度']是否这样做,或者我需要自定义指标函数?如果是后者,我如何根据以下内容编写一个:Keras doc.
the results from evaluating a metric are not used when training the model
。为此目的,我是否需要自定义目标(丢失)功能?
任何帮助,专业知识将受到高度赞赏,我真的需要它。先感谢您!
只要损失不断下降,准确性最终应该开始增长。既然你只训练了2-3个时代,我会说精确度可能会波动是正常的。
至于你的其他问题:
- 层的输入形状的概念是
(batchSize, dim1, dim2, nChannels)
。由于您的模型在训练之前不知道批量大小,因此将None
用作一种占位符。图像尺寸似乎是正确的,一个通道中的一个意味着您不使用彩色图像,因此每个像素只有一个条目。 - 我认为准确度指标应该没问题,但是我没有使用RNN的经验,所以也许其他人可以回答这个问题。
以上是关于培训减少,验证 - 增加。培训损失,验证损失减少的主要内容,如果未能解决你的问题,请参考以下文章