本人小白,写博客是为了记录学习笔记,也为了和各位大佬交流,如果文中出现错误,希望各位指正,本人不胜感激!
论文题目:UNet-based model for crack detection integrating visual explanations
论文链接:https://www.sciencedirect.com/science/article/abs/pii/S0950061821039957
文章的主要贡献
- 提出一种基于UNet的模型,它集成了视觉解释来解释模型。它的编码器被典型的CNN模型取代,以具有不同的计算和模型复杂度。
- 代替唯一的准确性度量,使用包括准确性、时间(计算复杂度)和内存(模型复杂度)的三个评估度量来估计基于UNet的模型和典型分割模型的有效性和效率,同时采用四种类型的损失函数。
- 预测(二进制图像)和视觉解释(热图)显示了三种基于UNet的模型(UNet-VGG 19,UNet-InceptionResNetv 2和UNet-EfficientNetb 3)在不同条件下和不同训练周期的性能。
编码器
对于UNet编码器提出,编码器可以由多中特征提取的网络模型进行替换,对于模型评估标准提出了准确性、模型复杂性、计算复杂性三个指标。
损失函数
- 二进制交叉熵损失函数:是一个二进制问题上,一个sigmoid函数加上交叉熵损失,是分割模型的默认值;
- Dice Loss:衡量两个图像的相似性的Dice系数;
- Focal Loss:二进制加插上损失函数的变体,它专注于学习复杂的示例并降低分配给分类良好的示例的损失;
- BCE +骰子损失:组合了BCE损耗和骰子损耗,这使得损耗具有一定的多样性,并受益于BCE损耗的稳定性;
总结来说:随着训练次数的增加, BCE损失和 Focal 损失趋于稳定,但是骰子损失和BCE +骰子损失依旧有波动, BCE损失的F1和MIOU指标高于Focal 损失,骰子损失指标低于BCE +骰子损失,经过作者比较得出BCE损失的UNet获得了最高的F1和MIoU以及最低的损失值。
实验比较了UNet网络下不同的损失函数对应的F1和MIOU数值,显示BCE的指标最好,同时比较在BCE损失函数下不同网络的损失值,发现UNet,UNet-VGG 19,UNet-EfficientNetb 3和UNet-InceptionResNetv 2t网络的损失值稳定且UNet、UNet-VGG 19、UNet-EfficientNetb 3和UNetInceptionResNetv 2的损失值逐渐减小并趋于平缓,而UNet-MobileNetv 2的损失值经历了一点波动。相比之下,UNet-ResNet 50和UNet-DenseNet 161的损耗曲线首先减小到一个小值,然后缓慢增加并随着历元的增加而波动。他们可能会面临过度拟合的问题。