Mean teacher are better role models-论文笔记

论文笔记

资料

1.代码地址

2.论文地址

https://arxiv.org/pdf/1703.01780

3.数据集地址

CIFAR-10
https://www.cs.utoronto.ca/~kriz/cifar.html

论文摘要的翻译

最近提出的Temporal Ensembling方法在几个半监督学习基准中取得了最先进的结果。它维护每个训练样本的标签预测的指数移动平均,并惩罚与该目标不一致的预测。然而,由于每个目标只改变一次,所以在学习数据量较大数据集时,Temporal Ensembling变得很笨拙。为了克服这个问题,我们提出了Mean Teacher,一种平均模型权重而不是标签预测的方法。作为一个额外的好处,Means Teacher提高了测试的准确性,并允许使用比Temporal Ensembling更少的标签进行训练。在不改变网络结构的情况下,Means Teacher在具有250个标签的SVHN上获得了4.35%的错误率,性能优于使用1000个标签训练的Temporal Ensembling。我们还表明,良好的网络架构对性能至关重要。结合Mean Teacher和残差网络,我们将CIFAR-10上的4000个标签从10.55%提高到6.28%,在ImageNet 2012上将10%的标签从35.24%提高到9.11%。

1背景介绍

深度学习在图像和语音识别等领域取得了巨大的成功。为了学习有用的抽象概念,深度学习模型需要大量的参数,从而使它们容易过度拟合(图1a)。此外,手动将高质量的标签添加到训练数据通常是昂贵的。因此,需要使用正则化方法来有效地利用未标记数据来减少半监督学习中的过拟合。
在这里插入图片描述
当感知稍有变化时,人类通常仍会认为它是同一个物体。相应地,分类模型应该偏爱为相似数据点提供一致输出的函数。实现这一点的一种方法是向模型的输入添加噪声。为了使模型能够学习更抽象的不变性,可以将噪声添加到中间表示,这一见解激励了许多正则化技术,例如Dropout。正则化模型不是最小化输入空间零维数据点的分类成本,而是最小化每个数据点周围的流形上的成本,从而将决策边界推离标记的数据点(图1b)。
在这里插入图片描述
由于未标记样本的分类代价是未定义的,因此噪声正则化本身并不有助于半监督学习。为了克服这一点,Γ模型[21]评估了有和没有噪声的每个数据点,然后在两个预测之间应用一致性成本。在这种情况下,该模型承担了教师和学生的双重角色。作为学生,它像以前一样学习;作为教师,它产生目标,然后作为学生使用这些目标进行学习。由于模型本身会产生目标,它们很可能是错误的。
如果对生成的目标赋予太多权重,则不一致的代价大于错误分类的代价,实际上,该模型遭受了确认偏差(图1c),这一危险可以通过提高目标的质量来减轻
在这里插入图片描述
至少有两种方法可以提高目标质量。一种方法是仔细选择表示的扰动,而不是仅仅应用加性或乘性噪声。另一种方法是仔细选择教师模式,而不是勉强复制学生模式。与我们的研究同时进行的,Miyato等人。采取了第一种方法,并表明虚拟对抗性训练可以产生令人印象深刻的结果。我们采取第二种方法,并将表明它也提供了显著的好处。据我们了解,这两种方法是兼容的,它们的结合可能会产生更好的结果。然而,对它们的综合影响的分析超出了本文的范围。
因此,我们的目标是在不进行额外培训的情况下,从学生模型中形成更好的教师模型。作为第一步,考虑到模型的Softmax输出通常不能在训练数据之外提供准确的预测。这可以通过在推理时向模型添加噪声来部分缓解,因此嘈杂的教师可以产生更准确的目标(图1D)。这种方法被用在伪集协议中,并且最近被证明在半监督图像分类上效果良好。Laine和Aila将该方法命名为 Π \Pi Π模型;我们将使用这个名称和他们的版本作为我们实验的基础。
在这里插入图片描述
Π \Pi Π模型可以通过Temporal Ensembling来进一步改进,它对每个训练样本保持指数移动平均预测。在每个训练步骤中,基于新的预测来更新该小批量中的样本的所有EMA预测。因此,每个实例的均线预测是由模型的当前版本和评估同一实例的早期版本的集合形成的。这种集合提高了预测的质量,并将它们用作教师预测来改善结果。然而,由于每个目标在每个时期只更新一次,因此学习到的信息以较慢的速度被纳入训练过程。数据集越大,更新的跨度就越长,在在线学习的情况下,根本不清楚如何使用时间整合。(每个历元可以对所有目标进行一次以上的周期性评估,但保持评估跨度恒定将需要每个历元进行O(N2)个评估,其中n是训练实例的数量。)

2论文的创新点

  • 他会说有那几点,你总结一下

3 论文方法的概述

  • 为了克服Temporal Ensembling方法的局限性,我们提出平均模型权重替代预测。由于教师模型是连续学生模型的平均值,我们将其称为Mean Teacher方法。
    在这里插入图片描述
    在训练步骤上平均模型权重往往会产生比直接使用最终权重更精确的模型。我们可以在训练中利用这一点来构建更好的目标。教师模型使用学生模型的EMA权重,而不是与学生模型共享权重。现在,它可以在每一步而不是每一轮训练之后收集信息。此外,由于权重平均值改善了所有层的输出,而不仅仅是顶部输出,因此目标模型具有更好的中间表示。这些方面导致了Temporal Ensembling的两个实际优势:第一,更准确的目标标签导致学生和教师模型之间更快的反馈循环,从而产生更好的测试准确性。其次,该方法适用于大型数据集和在线学习

更正式地,我们将一致性成本 J \text{J} J定义为学生模型的预测(权重 θ \theta θ和噪声 η \eta η)和教师模型的预测(权重 θ ′ \theta^\prime θ和噪声 η ′ \eta^\prime η)之间的预期距离。 J ( θ ) = E x , η ′ , η [ ∥ f ( x , θ ′ , η ′ ) − f ( x , θ , η ) ∥ 2 ] J(\theta)=\mathbb{E}_{x,\eta',\eta}\left[\left\|f(x,\theta',\eta')-f(x,\theta,\eta)\right\|^2\right] J(θ)=Ex,η,η[f(x,θ,η)f(x,θ,η)2]
Π \Pi Π模型、Temporal Ensembling和Mean Teacher之间的区别在于教师预测是如何产生的。虽然 Π \Pi Π模型使用 θ ′ = θ \theta^ {\prime}= \theta θ=θ,并且时间集成使用连续预测的加权平均来近似 f ( x , θ ′ , η ′ ) f(x,\theta^ {\prime},\eta^ {\prime}) f(xθη),但我们在训练步长 t t t θ t ′ θ^{\prime}_t θt定义为连续 θ \theta θ权重的均方根: θ t ′ = α θ t − 1 ′ + ( 1 − α ) θ t \theta'_t=\alpha\theta'_{t-1}+(1-\alpha)\theta_t θt=αθt1+(1α)θt其中 α \alpha α是平滑系数超参数。这三种算法之间的另一个区别是, Π \Pi Π模型将训练应用于 θ ′ \theta^\prime θ,而时间集成和均值教师将其视为优化方面的常量。
我们可以通过随机梯度下降在每个训练步骤上采样噪声 η , η ′ \eta,\eta^{\prime} ηη来逼近一致性代价函数 J J J

4 论文实验

Π \Pi Π模型作为我们的基线。然后,我们修改了基线模型,以使用加权平均一致性目标。该模型结构是一个13层卷积神经网络(ConvNet),具有三种类型的噪声:输入图像的随机平移和水平翻转、输入层上的高斯噪声和网络内应用的丢弃噪声。我们使用均方误差作为一致性成本,并在前80轮训练中中将其权重从0递增到最终值。

4.1 在数据集SVHN和CIFAR-10与其他方法的比较

  • 数据集
    我们使用街景房屋编号(SVHN)和CIFAR-10基准进行了实验。这两个数据集都包含属于十个不同类别的32x32像素RGB图像。在SVHN中,每个示例都是门牌号的特写,类表示图像中心数字的标识。在CIFAR-10中,每个例子都是属于一个类别的自然图像,如马、猫、汽车和飞机。SVHN包含73257个训练样本和26032个测试样本。CIFAR-10由50000个训练样本和10000个测试样本组成。

表1和表2将结果与最近最先进的方法进行了比较。比较中的所有方法都使用类似的13层ConvNet架构。Mean Teacher提高了Π模型和时间集成在半监督SVHN任务上的测试准确率。Mean Teacher也提高了CIFAR-10的成绩,超过了我们的基线 Π \Pi Π模型。
在这里插入图片描述

4.2 SVHN with extra unlabeled data

如上所述,我们提出的Mean Teacher能够很好地适应大数据集和在线学习。另外,SVHN和CIFAR-10的实验结果表明,该方法能够有效地利用未标注的样本。因此,我们想测试我们是否已经达到了我们方法的极限。除了原始训练数据外,SVHN还包括531131个样本的额外数据集。我们从原始训练样本中挑选了500个样本作为我们的标注训练样本。我们使用主要训练集的其余部分以及额外的训练集作为未标记的示例。我们对Mean Teacher和我们的基线Π模型进行了实验,并使用了0、100000或500000个额外的例子。表3显示了结果。
在这里插入图片描述

4.3训练曲线分析

图3中的培训曲线帮助我们了解使用Mean Teacher的效果。正如预期的那样,EMA加权模型(最下面一排的蓝色和深灰色曲线)在初始阶段之后比裸露的学生模型(橙色和浅灰色)给出了更准确的预测。
在这里插入图片描述
使用EMA加权模型作为教师改善半监督环境下的结果。教师(蓝色曲线)通过一致性成本改善学生(橙色),学生通过指数移动平均改善教师,这似乎是一个良性反馈循环。如果脱离了这个反馈周期,学习速度就会变慢,模型就会更早地开始过度适应(深灰色和浅灰色)。
当标签稀缺时,刻薄的老师会提供帮助。当使用500个标签时(中间一栏)意味着教师学习得更快,并在Π模式停止改进后继续培训。另一方面,在所有标签的情况下(左栏),Mean Teacher和 Π Π Π模型的行为实际上是相同的。
平均而言,教师比 Π Π Π模型更有效地使用未标记的训练数据,如中间一栏所示。另一方面,在增加500k未标记样本的情况下(右栏), Π Π Π模型在更长的时间内保持改进。平均而言,教师的学习速度更快,最终会收敛到更好的结果,但庞大的数据量似乎抵消了 Π Π Π模型更糟糕的预测。

4.4 消融实验(Ablation experiments)

为了评估模型各个方面的重要性,我们对具有250个标签的SVHN进行了实验,每次改变一个或几个超参数,而保持其他参数不变

  • 消除噪音(图4(A)和4(B))。
    在引言和图1中,我们提出了一个假设,即Π模型通过在模型两侧添加噪声来产生更好的预测。但是,在加入了卑鄙的老师之后,还需要噪音吗?是。我们可以看到,无论是增加输入还是丢弃,都是可以通过的性能所必需的。另一方面,当使用增强时,输入噪声不起作用。教师方面的辍学只比学生方面提供了微不足道的好处,至少在使用输入增强时是这样。
    在这里插入图片描述
  • 对均线衰变和稠度重量的敏感性(图4©和4(D))。
    均值教师算法的基本超参数是一致性代价权重和均方根平均衰减α。算法对它们的值有多敏感?我们可以看到,在每种情况下,好的值大约跨越一个数量级,超出这些范围,性能会迅速下降。请注意,EMA Decayα=0使该模型成为Π模型的变体,尽管该模型的效率较低,因为梯度仅通过学生路径传播。还请注意,在评估运行中,我们在提升阶段使用了均线衰减α=0.99,在其余训练阶段使用了α=0.999。我们选择这一策略是因为学生在训练初期进步很快,因此老师应该很快忘记旧的、不准确的、学生的重量。后来,学生的进步变慢了,老师受益于更长的记忆力。

在这里插入图片描述
在这里插入图片描述

  • 分离分类和一致性(图4(E))。
    与教师预测的一致性不一定是分类任务的良好替代,特别是在培训的早期。到目前为止,我们的模型通过对这两个任务使用相同的输出,将这两个任务紧密地耦合在一起。将任务解耦将如何改变算法的性能?为了进行研究,我们将模型更改为具有两个顶层并生成两个输出。然后,我们对其中一个输出进行分类训练,对另一个进行一致性训练。我们还添加了输出对数之间的均方误差成本,然后改变该成本的权重,使我们能够控制耦合的强度。看一下结果(使用分类输出的EMA版本报告),我们可以看到强耦合版本执行得很好,而过于松散耦合版本则不好。另一方面,适度的脱钩似乎有让一致性提升变得多余的好处。
    在这里插入图片描述
  • Changing from MSE to KL-divergence
    在Laine&Aila之后,我们使用均方误差(MSE)作为一致性成本函数,但KL-散度似乎是更自然的选择。哪一种效果更好?我们对从均方误差(图中的τ=0)到KL发散(τ=1)的成本函数族的实例进行了实验,发现在这种设置下,均方误差比其他成本函数执行得更好。

4.5 Mean Teacher with residual networks on CIFAR-10 and ImageNet

在上面的实验中,我们使用了传统的13层卷积结构(ConvNet),这使得与早期工作的比较更容易。为了探索模型结构的影响,我们使用12块(26层)残差网络(ResNet)和Shake-Shake正则化在CIFAR-10上进行了实验。如表4所示,网络架构越好,结果越好。为了测试这些方法是否适用于更自然的图像,我们在Imagenet 2012数据集[22]上使用10%的标签进行了实验。我们使用了50块(152层)的ResNeXt架构[33],并且看到了相对于最先进水平的明显改进。由于测试集不是公开可用的,我们使用验证集测量结果。
在这里插入图片描述

5 总结

Temporal Ensembling、Virtual Adversarial Training等一致性正则化方法在半监督学习中表现出了较强的优势。在本文中,我们提出了均值教师,这是一种平均模型权重的方法,以形成一个目标生成教师模型。与时间整合不同的是,Means教师使用的是大型数据集和在线学习。实验表明,该方法提高了训练网络的学习速度和分类精度。此外,它还可以很好地扩展到最先进的架构和大图像尺寸。一致性正规化的成功取决于教师产生的目标的质量。如果目标可以改进,它们应该是。平均教师和虚拟对抗性训练代表了利用这一原则的两种方式。它们的结合可能会产生更好的目标。可能还有其他方法有待发现,以进一步改进目标和训练的模型。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/779367.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

设计模式探索:策略模式

1. 什么是策略模式(Strategy Pattern) 定义 策略模式(Strategy Pattern)的原始定义是:定义一系列算法,将每一个算法封装起来,并使它们可以相互替换。策略模式让算法可以独立于使用它的客户端而…

Unity 使用AVProMovieCapture实现Game视图屏幕录制

内容将会持续更新,有错误的地方欢迎指正,谢谢! Unity 使用AVProMovieCapture实现Game视图屏幕录制 TechX 坚持将创新的科技带给世界! 拥有更好的学习体验 —— 不断努力,不断进步,不断探索 TechX —— 心探索、心…

01背包问题-队列分支限界法-C++

0-1背包问题-队列分支限界法 问题描述: 给定n种物品和一个背包。物品i的重量是wi,其价值为vi,背包的容量为C。问应如何选择装入背包中的物品,使得装入背包中物品的总价值最大?对于给定的n种物品的重量和价值,以及背包的容量&…

17-JS封装:工具类方法

目录 一、extend方法 二、添加一些工具类方法:$.xxx() 实现1: 实现2: 一、extend方法 jQuery.fn.extend jQuery.extend function(...args){let target,source[];source[...args];//判断2种情况 //$.extend({}) -->给$添加属性//$.…

算法金 | 欧氏距离算法、余弦相似度、汉明、曼哈顿、切比雪夫、闵可夫斯基、雅卡尔指数、半正矢、Sørensen-Dice

大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 抱个拳,送个礼 在算法模型构建中,我们经常需要计算样本之间的相似度,通常的做法是计算样本之间的距…

源码航行阅读目录

🏀 前言 在准备面试和学习的过程中,我阅读了比较多的源码,比如 JUC、Spring、MyBatis,收获了很多代码的设计思想,也对平时调用的 API 有了更深入的理解;但过多散乱的笔记给我的整理复习带来了比较大的麻烦…

基于Java技术的人事管理系统

你好,我是专注于计算机科学领域的小野。如果你对人事管理系统感兴趣或有相关需求,欢迎私信交流。 开发语言: Java 数据库: MySQL 技术: B/S模式、Java技术、SpringBoot 工具: Eclipse、MySQL、浏览…

【linux学习---1】点亮一个LED是多么的困难!!!

文章目录 1、原理图找对应引脚2、IO复用3、IO配置4、GPIO配置5、GPIO时钟使能6、总结7、编程8、编译9、链接10、格式转换11、反汇编(查看用)12、使用Makefile操作13、代码烧写14、代码验证 1、原理图找对应引脚 从上图 可以看出, 蜂鸣器 接到…

Photoshop属于什么软件 Photoshop缓存文件清理 Mac清理PS缓存 苹果电脑ps内存满了怎么清理

对于所有热爱使用Adobe Photoshop的Mac用户来说,这款软件无疑是创意工作的强大助手。但是,随着时间的积累,你可能会发现Photoshop开始变得有点慢,反应迟钝。这通常是因为Photoshop的缓存和临时文件堆积,占用了宝贵的系…

刷题之买股票的最佳时机(leetcode)

买股票的最佳时机 动态规划入门题。 最简单的模拟式解法&#xff1a; class Solution { public:int maxProfit(vector<int>& prices) {//也可以换一种思路&#xff0c;因为只交易一次&#xff0c;那么找出股票最便宜的时候买入&#xff0c;最贵的时候卖出&#xff…

每日一题~ (判断是否是合法的出栈序列)

大概的题意&#xff1a; 将 1-n 按照顺序进栈&#xff0c;问 输入的序列是否是合法的出栈序列。 遍历序列&#xff0c;如果当前这个值a小于 栈顶的值&#xff0c;说明它还未进栈&#xff08;因为我们是按照顺序进栈的&#xff09;&#xff0c;所以我们将 一些元素进栈&#xff…

uniapp 封装请求

新建request文件夹 下新建index.js 和index.js 或者创建units文件放入index.js 和api文件夹放入index.js(api.js)//看公司规范 1. index.js // 全局请求封装 // const base_url http://localhost:8080/devapi var base_url process.env.NODE_ENV development ? http://…

Studying-代码随想录训练营day27| 贪心算法理论基础、455.分发饼干、376.摆动序列、53.最大子序和

第27天&#xff0c;贪心开始&#xff01;(ง •_•)ง&#x1f4aa;&#xff0c;编程语言&#xff1a;C 目录 贪心算法理论基础 贪心的套路 贪心的一般解题步骤 总结 455.分发饼干 376.摆动序列 53.最大子序和 总结 贪心算法理论基础 什么是贪心&#xff1f;—— 贪…

自动化设备上位机设计 三

目录 一 设计原型 二 后台源码 一 设计原型 二 后台源码 using SqlSugar;namespace 自动化上位机设计 {public partial class Form1 : Form{SqlHelper sqlHelper new SqlHelper();SqlSugarClient dbContent null;bool IsRun false;int Count 0;public Form1(){Initializ…

SpringBoot新手快速入门系列教程五:基于JPA的一个Mysql简单读写例子

现在我们来做一个简单的读写Mysql的项目 1&#xff0c;先新建一个项目&#xff0c;我们叫它“HelloJPA”并且添加依赖 2&#xff0c;引入以下依赖&#xff1a; Spring Boot DevTools (可选&#xff0c;但推荐&#xff0c;用于开发时热部署)Lombok&#xff08;可选&#xff0c…

Google Earth Engine(GEE)——在控制台打印出来所选区域的缩略图

结果 函数 ui.Thumbnail(image, params, onClick, style) A fixed-size thumbnail image generated asynchronously from an ee.Image. Arguments: image (Image, optional): The ee.Image from which to generate the thumbnail. Defaults to an empty ee.Image. param…

简单分享下python多态

目录&#xff1a; 一、多态是啥嘞&#xff08;龙生九子各有不同&#xff0c;这就是多态&#xff09; 二、基础的实例 三、多态的优势与应用场景 四、深入理解 一、多态是啥嘞&#xff08;龙生九子各有不同&#xff0c;这就是多态&#xff09; 多态&#xff08;Polymorphism&…

Laravel5+mycat 报错 “Packets out of order”

背景 近期对负责项目&#xff0c;配置了一套 主从复制的 MySQL 集群 使用了中间件 mycat 但测试发现&#xff0c;替换了原来的数据连接后&#xff0c;会出现 Packets out of order 的报错 同时注意到&#xff0c;有的框架代码中竟然也会失效&#xff0c;比如 controller 类中&…

Mac电脑iTerm2 如何设置无限滑动

1.打开iTerm2应用 2.打开偏好设置 3.选中Profiles -> Terminal 4.选择Unlimited scrollback

Linux开发讲课33---线程实现与线程控制步骤简析

线程概述 进程是系统中程序执行和资源分配的基本单位。 每个进程都拥有自己的数据段、代码段和堆栈段&#xff0c;这就造成了进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理机的空转时间支持多处理器和减少上下文切换开销&#xff0c;进程在演…