收藏 | 盘点语义分割小技巧

选择模型

使用小尺寸图片选择模型,因为小尺寸图片可以有大的batchsize,使得选择模型过程消耗的时间较少。而大尺寸图片和小尺寸图片训练相同的次数,loss下降的效果几乎相同。小尺寸约256x256.

先确定合适的参数,如学习率、损失函数参数等,参数一样的情况下,训练不同的模型。好的模型前期会下降较快,在小尺寸图片下预训练尤其有效。大尺寸图片训练反而下降不快,看出不下降趋势。

确定模型参数量,对于有些网络,模型参数量太大会导致loss曲线奇异。这一般是由于下采样过多、或attention通道数过多造成的,可以减少模型的参数量,确定合适的模型参数量。


训练模型

使用粗略的损失函数参数训练到底后,可以稍微改变损失函数参数,如改变bwloss和dloss的比例,对于测试集精度可能会有提升。

对于语义分割,focalloss等损失函数属于辅助损失函数,在训练前期起到加速训练的效果,在总损失函数中占比例较低,一般低于0.2的比例,约0.1。diceloss是主要损失函数,对于小前景分割有效果,能直接提升测试集精度,一般最后精训练只用diceloss损失,预训练是focalloss+diceloss。

先使用小尺寸图片(约256x256)预训练,再使用中尺寸图片(约512x512)训练,最后使用大尺寸图片(约1024x1024)精训练。小尺寸图片可以有很大的batchsize,且使用小尺寸图片训练相同的次数收敛更快,估计小尺寸图片收敛速度为中尺寸图片的两倍,大尺寸最慢,大尺寸图片通常batchsize只能取1,无法直接训练,且收敛效果很差,一般用于精训练。(使用不同尺寸图片训练是语义分割任务的优点,像目标检测等任务一般很难这样做,所以输入尺寸只能很小)


模型改进

maxpool可以增强抗噪能力。avgpool或convstridepool可以保留位置信息。

运用跨层连接结构可以不影响模型容量下加速训练。这些结构通常被封装成一个模块。现有大量的模型都是使用了优美的跨层连接结构,训练更容易,如DFANet。

有时瓶颈结构会有更好的效果,猜测可能起到编码器-解码器的作用,起到降噪的作用。如卷积从inch->outch//2;outch//2->outch//2;outch//2->outch这样,其中outch//2可能小于inch,但这样同样有效。

使用大量的分离卷积,模型参数会更小,容量会很大。分离卷积效果比非对称卷积、大卷积要好,非对称卷积一般是用在很小尺寸(约32x32)的经过下采样的图片上,而大卷积一般是用在网络一开始输入的地方。对于unet的结构,网络深度不是很深,因此使用大卷积可能较好。对于fcn式,网络可以堆叠很深,因此使用分离卷积效果较好。

在语义分割中,attention的本质是降噪。让不需要的信息(噪声)置为零,跟relu的作用一样,所以relu在语义分割中尤为有效。使用attention模块能更好的开发一个模型的潜能,能更快收敛,可以用在模块block的后面,跟BN一样。而且用很多也不会有副作用。attention模块主要有通道型和空间型两种,通道型的attention可能会导致loss训练很难(异常),带空间型的可以缓解这种现象,使得训练容易。常用的有SE-module或CBAM模块。

在编码器-解码器的网络中,主要工作都是由编码器做的,编码器参数要很大,相反,解码器要尽量简单,参数量要很小,如通常的无偏置1x1卷积来聚合编码器信息,或使用无参数的双线性插值来放大图片。使用反卷积等技术上采样反而训练更困难,因为其加大了解码器的参数量。


理解

神经网络可以看成是降噪,即不断精炼信息的过程,这意味着需要不断去除冗余信息或噪声。attention、bn、relu等手段一定程度上可以看成是去除噪声的手段,因此bottleneck结构有效,因为它在瓶颈处精炼出有用信息然后处理这些有用信息。3x3卷积的作用是处理信息,那么1x1卷积的作用就是降维精炼信息,因此1x1升维=>3x3处理=>1x1精炼也是一种有效结构。

ottleneck结构本质是降噪。bottleneck结构一般用在网络前面较好,且bottle处卷积参数初始化为正,使用torch.nn.init.uniform_(conv.weight, a=0, b=1)初始化权重和nn.init.zeros_(conv.bias)置偏置为零。原因为在瓶颈处降噪的效果好。

1x1卷积的主要作用是复制图片(增加通道数)给3x3卷积处理,因此增加通道数可以使用1x1卷积而不是3x3卷积,3x3卷积用于处理图片,只需要分离卷积即可。1x1卷积还可以将多张图片(多通道)合并成更少的图片(降通道),即将处理的结果组合起来。


本文转自:小白学视觉,转载此文目的在于传递更多信息,版权归原作者所有。如不支持转载,请联系小编demi@eetrend.com删除。

最新文章