【半监督 Mean teachers】

一、相关理论

  • 文献《Mean teachers are better role models》, 提出采用权重平均来取代以前所用的预测 label 结果平均的方案。由于教师模型是连续学生模型的平均值,我们将其称为均值教师方法

在这里插入图片描述

  • 与对抗网络类似,其整体架构包含了两个网络:teacher 网络、student 网络。不过与对抗网络不同的是:这两个网络结构是相同的,teacher网络参数通过 student 网络计算得到;student网络参数通过损失函数 L = L 1 + L 2 L=L1+L2 L=L1+L2 梯度下降更新得到。
  • 分类成本(classification cost )将学生模型的Softmax输出与One-Hot Label进行比较,并使用一致性成本将其与教师输出进行比较。
  • consistency cost 是Student Model的预测值Ys1、Ys2,Teacher Model的预测值Yt1、Yt2对应的差异。

二、算法流程

假设,训练样本为X1,X2,其中X1是带标签的数据(标签L1),X2为无标签数据,Ys1、Ys2为Student Model的预测值,Yt1、Yt2为Teacher Model的预测值,具体过程:

加随机噪声1
加随机噪声2
EMA
X1 and X2
Student Model
Teacher Model
输出标签Ys1
输出标签Ys2
预测标签Yt1
预测标签Yt2
L1=CE->Ys1,L1
L2=MSE->Ys1,Yt1
L2=MSE->Ys2,Yt2

三、伪代码

  1. 设计一个监督网络结构作为student 网络,并拷贝一份作为 teacher 网络;
  2. 在每次训练选代的时候,选择同样的一批样本中image分别加入随机噪声,输入网絡student、teacher网络;
  3. 增加 student 和 teacher 的 consistency cost 损失函数,即MSE;
  4. 更新 student 权重,根据 L = L 1 + L 2 L=L1+L2 L=L1+L2 进行梯度下降,求解更新Student网络参数;
  5. 根据更新后的student 权重,计算teacher 权重。

a的选择: 在网络最开始训练阶段,由于参数是随机初始化而来,其对于类别的分类肯定也是大部分不正确的,所以teacher 和student 输出标签不同比较正常,所以一开始的时侯a值得选择,不应该选择太大,应该从零开始,直到teacher 网络到达一定的准确率后才开始增加,随着训练的进行进行递增到 0.99。
扩充噪声: 对于同样的输入样本X,我们通过扩充变换、加入噪声等,然后得到输入 teacher、student 网络数据,这样由于加了噪声,所以teacher 和student 的输入有可能是不同的,这样训练出来的网络,同时也让网络具备抗噪声的能力,得到的精度更高。

四、半监督框架

半监督算法的理论:一致性正则化,伪标记,熵最小化
一般而言,通过对原始样本和其扰动版本的分类器输出进行衡量,即可实现一致性正则化,常见的衡量方式有MSE、KL散度、JS散度等。在MixMatch中通过对图像的标准数据增强(水平翻转、裁剪)实现扰动(Augment),采用MSE准则方式衡量。

  • Dense Teacher

  • 知识蒸馏算法汇总

  • MixMatch文章解读+算法流程+核心代码详解,MixMatch抓住了半监督算法的两个重要观点:第一是熵最小化;第二是一致性正则化。结合这两个观点的算法就形成了MixMatch。有代码。

  • FixMatch文章解读+算法流程+核心代码详解,FixMatch算法抓住了半监督算法的两个重要观点,第一个是一致性正则化,第二个是伪标记。多出来一个阈值来判断是否可以当成伪标签, 其他与MT相似,有代码。

  • Virtual Adversarial Training文章解读+算法流程+核心代码详解代码核心就一个VAT_Loss的计算。 virtual adversarial training的创新在于能在无标记样本上实现扰动的计算,因为没用使用标签进行运算,而是用模型预测的结果替代标签,类似于persudo label,这就是virtual的含义。

  • MisMatch, Learning Morphological Feature Perturbations for Semi-Supervised Segmentation。该文章主要是一个编码,两个解码,感觉两个解码头有点问题,但是没看代码,后面再看。

  • Pseudo-Label : The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks,提出加入了伪标签和去噪自编码器。DeepLabv3+网络,spatial pyramid pooling module(SPP)可以捕获更多尺度信息,encoder-decoder结构可以更好恢复物体的边缘信息 ,DeepLabv3+网络将上面两个有点都用到来构建网络。V2以后主要是引入了atrous spatial pyramid pooling(ASPP),利用不同膨胀因子的空洞卷积融合多尺度信息 。其实就是利用空洞卷积(带孔卷积)用不同的rate来对图像特征进行操作的。

  • ST++: Make Self-training Work Better for Semi-supervised Semantic Segmentation(让自我训练更好地用于半监督语义分割 ),通过对未标记的图像引入强数据增强来构建一个用于半监督语义分割的强自训练基线,以期减轻过度拟合的噪声标签,并解耦教师和学生之间的相似预测。此外,还提出了一种先进的框架来逐步利用未标记的图像。

  • 信号数据扩增方法,对image进行翻转、旋转、加噪,说明翻转优于旋转优于加噪,且加噪效果很差。

  • 自适应增强Adaboost算法原理分析和实例+代码(简明易懂),前一个基本分类器被错误分类的样本的权值会增大,而正确分类的样本的权值会减小,并再次用来训练下一个基本分类器。同时,在每一轮迭代中,加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数才确定最终的强分类器。

  • YOLOv7来临:论文解读附代码解析,提出的方法是一种新的标签分配方法 ,通过引导头的预测来引导辅助头以及自身。换句话说,首先使用引导头的prediction作为指导,生成从粗到细的层次标签,分别用于辅助头和引导头的学习,

五、医学图像中的应用

参考文献

[1] 有监督、半监督、无监督、弱监督、自监督的定义和区别
[2] 深度学习(七十四)半监督Mean teachers
[3] Entropy(熵)、Cross_Entropy(交叉熵)、KL散度
[4] Conditional Convolutions for Instance Segmentation知识点总结
[2] 半监督学习(Semi-Supervised Learning, SSL)-简述及论文整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值