当前位置:   article > 正文

Simulation-to-Real domain adaptation with teacher-student learning for endoscopic instrument segment_sim2real 学习

sim2real 学习

        这篇文章介绍了一种teacher-student的学习方法,从标注的模拟数据和未标记的真实数据中联合学习,以解决当前基于一致性的无监督领域自适应框架中的错误学习问题。        

        之前的基于扰动的一致性学习方法,如sim2Real存在所谓的confifirmation bias问题。sim2real方法大致如下图所示,简单来说就是将源域有标签的图像输入到网络中,得到预测结果y,并对y施加有监督的损失;将目标域无标签图像x以及其施加扰动后的图像p(x)输入网络,得到输出y1,y2,对y1,y2施加一致性损失,将一致性损失和有监督损失加起来得到总的损失。作者认为sim2real方法相当于网络既当学生又当老师,由于DNN的预测在训练过程中可能是不正确的或存在噪声的,这种学生即教师的方法,使得学生模型对老师模型产生的伪标签过度拟合,导致了所谓的confirmation bias。

          

        作者的办法是解耦学生模型和老师模型,如下图所示,即学生模型保持原样,而老师模型是一个结构和学生模型一样的模型,使用学生模型的参数初始化老师模型的参数,不同的是,在参数更新方面,学生模型就是计算损失然后反向传播更新参数,而老师模型的参数更新是借助老师模型的参数和学生模型的参数,通过指数滑动平均更新的。

        (1)式是总体的损失函数,L_{cl}是一致性损失,f_{\theta^{'}}是老师网络,f_{\theta}是学生网络。(2)式是老师网络参数更新的公式,值得注意的是更新的顺序是学生网络先更新,然后才更新老师网络。

        为什么这样可以解决confirmation bias的问题?我的理解是如果学生模型在第t次更新后,学到了错误的信息,那么由于老师模型是通过指数滑动平均更新参数的,因此相对于学生模型来说,在错误的道路上走的不远,(类似于学生模型喝了100斤du,老师模型喝了90斤du的样子)所以在计算一致性损失时可以将学生模型往正确的方向拉一拉。

        学习过程的伪代码如下图所示。 

 如有错误,欢迎指正^_^

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/816298
推荐阅读
  

闽ICP备14008679号