半监督二维人体姿态估计中的模型坍塌问题研究(代码已开源)|ICCV 2021 | 一致性( 二 )


当模型针对两个对应的像素(来自于两个 Perturbations)产生不一致的预测时,比如一个预测为1(前景),一个预测为0(背景)。经典的一致性训练方法中,试图同时更新两个预测值,从而移动决策边界,使得两者位于边界的同一侧。而因为类别不均衡问题的存在,决策边界倾向于移动到全局来看样本数目更稀疏的少数类别区域(也就是前景)。因此,随着训练的进行,我们发现越来越多的像素被预测成背景。图示分析可见图2。

半监督二维人体姿态估计中的模型坍塌问题研究(代码已开源)|ICCV 2021 | 一致性
文章插图
图2.(A) 进行无监督训练前的决策边界。(B) 经典的一致性训练方法试图让同一图像在不同扰动下的预测保持一致,因此该损失函数倾向于驱动决策平面移动到样本数量较少的前景区域,从而导致越来越多的像素被预测成背景。(C) 本文提出的方法,具体介绍见下文。


3

本文方法
上面的分析促使我们在计算一致性损失的时候,应该考虑两个输出的准确性,从而用相对准确的预测去监督另外一个预测。我们在统计中发现,对图像进行简单的图像增强后得到的结果要比进行困难的图像增强更准确。基于此,我们提出了一个非常简单的训练方式。
半监督二维人体姿态估计中的模型坍塌问题研究(代码已开源)|ICCV 2021 | 一致性
文章插图
图3. 本文提出的 Easy-Hard 数据增强方法
如上图所示,针对一张无标签图像,我们分别进行一次“Easy”和“Hard”的图像增强,并将其分别输入姿态估计模型预测 Heatmap。当网络接收来自于简单增强的图像时,得到的预测值被当作 Teacher,用于监督对应的接收困难增强的图像的预测。
值得注意的是,这里的梯度传播是单向的,也就是说困难增强的图像的结果并不会去指导对应的简单增强的图像,从而尽可能降低因为错误的监督而导致模型退化的可能性。这种方法可以成功避免退化的问题,其训练过程和结果可参考图4。
半监督二维人体姿态估计中的模型坍塌问题研究(代码已开源)|ICCV 2021 | 一致性
文章插图
图4. 本文方法成功解决了模型退化的问题
双重网络
在 Easy-Hard 增强方法解决了模型退化问题的基础上,本文中进一步提出了双重网络的训练方式。双重网络通过增加 Teacher 和 Student 预测间的差异,来避免一致性训练过早收敛,从而提高了半监督学习的效果。
如图5所示,该方法同时训练两个参数独立且初始化不同的网络,并且在它们之间通过无标记样本来交换信息。该方法同样使用了 Easy-Hard 增强方法来避免模型退化。具体来说,模型一在简单样本下得到的预测,将用于监督模型二在困难样本下的预测。反之亦然,模型二的预测值也同样用于指导模型一的训练,两者互为教师和学生模型。
半监督二维人体姿态估计中的模型坍塌问题研究(代码已开源)|ICCV 2021 | 一致性
文章插图
图5. 本文提出的双重网络模型
4

实验结果
我们在多个数据集和多个基线方法上进行了大量的实验,验证了本文提出的训练方式可以取得非常好的效果。