首页 > 解决方案 > 在多标签图像分类任务中,哪种损失函数会收敛得很好?

问题描述

sigmoid我已经通过使用作为输出激活函数和binary_crossentropy作为损失函数训练了一个多标签多类图像分类器。验证的准确度曲线显示上下波动,而几个时期的损失曲线显示奇怪(非常高)的值。

以下是具有 和 的微调(最后一个块)VGG19模型的准确度Dropout和损失曲线BatchNormalization

精度曲线
损失曲线

具有和 的微调(最后一个块)VGG19模型的准确DropoutBatchNormalization和损失曲线Data Augmentation

数据增强的准确度曲线 数据增强
的损失曲线

我已经用 1800 个训练图像(5 个标签)和 100 个验证图像训练了分类器。我使用的优化器是SGD((lr=0.001, momentum=0.99). 谁能解释为什么损失曲线在某些时期变得如此奇怪或高价值?我应该使用不同的损失函数吗?如果是,是哪一个?

标签: tensorflowkerasdeep-learningcomputer-visionconv-neural-network

解决方案


别担心——一切都很好。您的损失曲线并没有说太多,尤其是“损失曲线中的尖峰”。他们完全被允许,您的模型仍在训练中。你应该看看你的准确度曲线,我认为那个上升很正常。


推荐阅读