我正在做研究以使用Mask R-cnn检测负载损坏。
道路损坏分类有8种类型,我们用423列火车和Val 103数据集进行训练。
图中,红色图是原始图像的学习结果,蓝色图是使用增强源代码调整大小的结果。
调整后的学习图(蓝色图)减少了验证损失和训练损失。 但是,使用原始数据集(无扩充,红色图)的学习结果在15到20个时期内迅速增加。
结果,沥青路面裂缝的检测精度较低(4种),而车道,人孔和人行横道的检测精度较高(4种)。
这是三个问题。
- 为什么在无扩充数据集学习中验证损失会迅速增加? (红色图表)
- 当相同数据集扩充(调整大小)时,为什么验证损失会更低? (蓝色图)
- 有没有办法降低红色图表的验证损失?
谢谢。
- img_per_gpu:每个时期2个步骤:训练图片÷2,验证时期:val图像÷2
#red graph
model.train(dataset_train,dataset_val,
learning_rate=config.LEARNING_RATE,
epochs=400,
layers='heads')
#blue graph
model.train(dataset_train,
layers='heads',
augmentation=imgaug.augmenters.Sequential([
imgaug.augmenters.Affine(scale=(0.5,0.7))]) #resize