创意:创建了一个Memory Blank,,特征来自 标记和未标记的数据都被优化为与MemoryBlank的同类样本相似。
首先了解一下Mean teacher
Mean teacher
本文采用两个网络进行训练,连个网络模型结构一样,分别命名为teacher,student网络。student网络参数根据损失函数梯度下降法更新得到;teacher网络参数通过student网络的参数迭代得到。
训练数据:
有标签样本x1,y1,以及无标签样本x2.
训练策略:
将有标签数据x1,y1输入student,从而计算loss1.
将无标签数据x2输入student,从而计算得到label1
将无标签数据x2输入teacher,从而计算得到label2
我们希望两个网络的预测标签尽量相等,因此根据lable1,label2得到损失函数loss2.
根据loss=loss1+loss2更新student网络。
在每个step中,更新student网络参数后,再利用student网络的参数更新teacher网络参数,
github代码:https://github.com/CuriousAI/mean-teacher
————————————————
版权声明:本文为CSDN博主「imperfect00」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011961856/article/details/84063663
上图未mean图,两个个loss分别为标签分类损失函数,参数更新为
为教师模型,Lsup 和 Lpseudo 跟mean teacher中差不多
重点为Lcontr
右边为教师网络通过带标签的数据集产生的特征向量,存储在Memory Bank中,左边为学生网络通过带标签和未带标签生成的特征向量,使用余弦相似度判断两个之间的距离:
w为通过attention后计算出来的权重