概述

样本选择方法是噪声标签鲁棒学习的常用方法。然而,如何正确地控制选择过程,使深度网络能够从记忆效应中获益是一大难题。本次工作中,受自动机器学习(AutoML)的成功启发,我们将此问题建模为一个函数逼近问题。

具体来说,我们基于记忆效应的一般模式设计了一个特定领域的搜索空间,并提出了一种新的牛顿算法来有效地解决双层优化问题,并进一步对算法进行了理论分析,保证了算法对临界点的良好逼近。实验结果表明,该方法优于现有的噪声标签学习方法,并且比现有的 AutoML 算法有更高的效率。

论文作者:Quanming Yao [1], Hansi Yang [2], Bo Han, Gang Niu, James Kwok

论文地址:https://arxiv.org/abs/1911.02377

代码地址https://github.com/AutoML-4Paradigm/S2E

招聘启事:http://www.cse.ust.hk/~qyaoaa/pages/job-ad.pdf

研究组介绍:http://www.cse.ust.hk/~qyaoaa/pages/group.html


背景

深度网络在图像处理、语音识别、语言建模和推荐系统等多项任务中取得了巨大的成功,很大程度上在于拥有大量高质量的可用数据,但这在现实场景中很难实现。相反,许多大型数据集是通过众包平台收集或互联网抓取得来,获得的标签很嘈杂。

由于深度网络具有较大的学习能力,最终会过度匹配噪声标签,导致泛化性能较差。因此,抗噪的机器学习方法逐渐受到关注,并在医疗图像分类、人脸识别、目标检测等许多领域均得到应用(实例请参见代码地址)。

为了减少噪声标签的负面影响,抗噪机器学习领域提出了许多方法,它们可以分为三大类。第一种方法基于对标签转换矩阵进行估算,然而,这可能导致含有噪声和无法处理的大量标签。第二种类型基于正则化方法,然而由于深度网络通常是过参数化,在足够的训练时间下,仍然可以完全记忆含噪声的数据。

第三种方法是本文的重点,它基于在每个迭代中选择(或加权)可能干净的样本进行训练,通过降低训练数据的噪声,可以获得更好的性能。代表性的方法包括 MentorNet 和 Co-teaching [3](去噪原理如下图所示)。

具体地说,MentorNet 使用一个额外的网络来选择干净的样本来培训一个 StudentNet。Co-teaching 通过在培训期间同时维护两个具有相同架构的网络来改进 MentorNet,并且每个网络都使用来自另一个网络的小损失样本进行更新。

▲ Figure1.为何能用大损失衡量标签可能被污染的示意图

在样本选择中,一个核心问题是在每次迭代中选择多少个小损失样本。虽然丢弃大量样本可以避免使用噪声标签进行训练,但丢弃过多样本会导致准确度降低。Co-teaching 使用后发现,深度网络通常在过度拟合噪声样本之前学习简单的模式,这种记忆效应广泛存在于各种深度网络中。

因此,在训练的早期阶段,由于网络无法记忆噪声数据,Co-teaching 会减少很少的样本。随着训练的进行,网络开始记忆噪声数据。

这种情况在 Co-teaching 中是可以避免的,方法是根据预先确定的时间表逐渐减少更多的样本。从经验上讲,这显著提高了网络在噪声标签上的泛化性能。然而,尚不清楚其人工设计的时间表是否“最优”。此外,该调度与数据无关,但对所有数据集都是相同的。手动为每个数据集找到一个好的时间表显然非常耗时而且不可行。


本次工作的方法

受 AutoML 成功启发,本文提出利用 AutoML 自动开发记忆效应。我们首先将制定学习描述为一个双层优化问题,类似于神经架构搜索(NAS)。基于深度网络共享学习曲线行为,设计了调度的搜索空间。这个空间是富于表现力的,但只有少量的超参数。

然而,由于样本选择是一个离散算子,计算梯度非常困难。为了避免这一问题并进行有效的搜索,我们建议使用随机松弛和牛顿方法从模型和优化目标中获取信息。

从经验上看,该方法优于现有的方法,并且可以比其他的样本选择方法选择更高比例的干净样本。实验表明,本次工作选择的搜索空间是合适的,且提出的搜索算法比其余的 AutoML 搜索算法更快。

3.1 动机图示:普世的记忆性

当在有噪声的数据集上训练深度网络时,网络会出现所谓“记忆性”现象:在训练的初始阶段,网络会学到一些简单的模式,在验证集上的准确率随之上升;而随着训练过程继续进行,网络会逐渐“记忆”噪声样本,导致验证集上的准确率因过拟合而下降。上述现象在不同网络、数据集、噪声水平和优化器设置下均能观察到,具有普适性:

受此启发,MentorNet 和 Co-teaching 提出了如下的抗噪训练方法:随着训练过程进行逐渐去掉每批中的大损失样本,因为当模型在验证集上准确率提升后,这些样本更有可能是噪声样本,而非模型错分的样本。

然而,已有工作均需要人工确定大损失样本移除比例的具体时间表,无法适用于多样的噪声数据集。因此,我们计划将 AutoML 引入抗噪机器学习领域,自动地选择大损失样本移除比例的时间表。

尽管不同噪声数据集上的最佳时间表可能不同,但一般来说,一个较好的时间表应与验证集上准确率趋势刚好相反:当验证集上准确率提升时,网络具有更好的判别能力,此时大损失的样本更有可能是噪声样本,所以应当移除更多的大损失样本,反之亦然。而上图显示网络在验证集上的准确率会先上升,再下降,因此一个较好的时间表应具有先下降,再上升的趋势。

基于上述推理,本文将时间表的搜索范围限制为一组具有“先下降,再上升”趋势函数的线性组合,相关函数及其示意图如下:

3.2 公式化AutoML目标

记网络权重为 w,使用的时间表为 R,我们的优化问题可以建模为如下的双层优化问题:

其中 分别表示在训练(带噪)/ 验证(无噪)集上的损失,F 为所有可能的时间表组成的集合。

然而,由于无法计算目标对 R 的导数,直接求解这个问题是十分困难的。为解决这一困难,本文提出对 R 进行随机松弛操作,在 R 上附加一个概率分布,并将优化目标由寻找一个较好的时间表转变为寻找一个更有可能抽取到较好时间表的概率分布,即优化在此概率分布下,用抽取到的时间表 R 训练网络在验证集上表现的期望,如下式所示:

其中 x 为控制时间表 R 的参数,f(x)为使用这一时间表 R(x)在验证集上的表现, 为随机松弛的概率分布。

3.3 快速Newton优化算法

已有使用随机松弛的 AutoML 算法均基于梯度下降或自然梯度下降,无法利用优化目标的高阶信息,具有收敛速度较慢、训练过程不稳定等问题。由此本文提出将 Newton 优化算法应用到随机松弛上,导出了上述随机松弛问题 Hessian 矩阵的一般形式,如下:

算法流程见下图(细节请参见论文)。

本文同时从理论上证明了,在梯度和 Hessian 矩阵可能出现一定偏差的情形下,同样可以保证优化过程收敛到稳定点(详见论文 Theorem 1)。


实验

4.1 基准标签噪声数据

该实验中,使用了三个流行的基准数据集:MNIST、CIFAR-10 和 CIFAR-100。接下来,添加了两种类型的标签噪声:

1. 对称翻转,它以相同的概率将标签翻转到其他不正确的标签上;

2. 成对翻转,即翻转一对相似的标签,并使用相同的网络架构。

我们将 S2E 与以下最先进的方法进行比较:Decoupling、F-correction、MentoNet、Co-teaching、Co-teaching+、Reweight。

作为一个简单的基线,我们还与直接在全噪声数据集上训练的标准深度网络进行比较。所有实验重复五次,取平均结果。下图显示了测试精度的收敛性。可以看出,S2E 明显优于其他方法,并且更加稳定。

下图比较了 S2E 和 Mentonnet、Co-teaching 和 Co-teaching+ 的样本选择方法。

可以看出,由 S2E 学习的 R(·)是特定于数据集的,而其他方法总是使用相同的 R(·)。此外,在噪声较大的数据上学习的 R(·)较小。因为较高的噪声水平意味着每个小批量中的干净样品(R(·)更小)。此外,R(·)下降的大损失样本比例大于潜在噪声水平。

由此看出,大损失样本通常具有较大的梯度,如果标签错误,可能会对模型产生重大影响。由于大损失样本不一定会因为模型的不完美而产生噪声,所以会丢弃更多的样本。另一方面,简单地丢弃更多的样本会导致精度降低。

下图比较了 S2E 和其他比较方法的标签精度(即,选择后每个小批次中干净样品的比率)。可以看出,S2E 的标签精度一直是最高的。这表明,S2E 使用的训练样本更干净,从而产生更好的性能。

4.2 对比实验

在这个实验中,我们依旧使用 MNIST、CIFAR-10 和 CIFAR-100 数据集来研究不同的搜索空间设计。将 S2E 的搜索空间与Co-teaching 在指定空间比较,并与 Single 的单个基函数跨越的空间进行比较。在这里,我们展示了四个基函数的最佳性能;为了公平比较,本实验采用随机搜索。重复 50 次,取平均结果。

上图显示了不同搜索空间变量所获得的所有时期的最佳测试精度。Co-teaching 和 Single 的性能优于两种一般函数逼近法(RBF 和 MLP)。

上图显示了在 CIFAR-10 数据集上由 MLP(其性能优于 RBF)获得的 R(·)(MNIST 和 CIFAR-100 的结果相似)。可以看出,这些形状通常遵循此前的假设,为支持这一假设提供了进一步的经验证据。S2E 所获得的性能仍然是最好的(即使这里只使用随机搜索)。这证明了所提出的搜索空间的表达性和紧凑性。

4.3 搜索算法

S2E 使用随机松弛和牛顿法作为搜索算法。在此,我们将研究其他基于梯度搜索算法的使用,包括梯度下降(Gradient Descent)、自然梯度下降(Natural Gradient Descent)、以及随机搜索、贝叶斯优化(Bayesian Optimization)、hyperband 等无导数搜索算法。实验在 CIFAR-10 上进行。

上图显示了测试精度 w.r.t. 这类调用的数量。可以看出,与其他算法相比,使用 Hessian 矩阵的 S2E 是最有效的。


总结

本次工作利用深度网络的记忆效应,利用 AutoML 来解决带噪声标签的学习问题。首先根据学习曲线的观察值设计一个有表现力但紧凑的搜索空间,通过一种基于随机松弛和牛顿法的高效搜索算法,克服了计算梯度的困难,并允许将模型和优化目标的信息结合起来。

经试验表明,该方法的性能优于现有的方法,并且可以比其他的样本选择方法选择出更高比例的干净样本。

参考注释

[1] 姚权铭博士为第四范式资深研究员

[2] 杨瀚思为清华大学本科生,现为第四范式机器学习研究组实习生

[3] Co-teaching是本组2018年发表于NeurIPS的工作,为当年10大高引论文之一

ICML 2020 | 第四范式基于AutoML的深度网络记忆性自动化挖掘相关推荐

  1. 深度学习(二十八)基于多尺度深度网络的单幅图像深度估计

    基于多尺度深度网络的单幅图像深度估计 原文地址:http://blog.csdn.net/hjimce/article/details/50569474 作者:hjimce 一.相关理论 本篇博文主要 ...

  2. RSE2020/云检测:基于弱监督深度学习的高分辨率遥感图像精确云检测

    RSE2020/云检测:Accurate cloud detection in high-resolution remote sensing imagery by weakly supervised ...

  3. ICML 2020 | GCNII:简单和深度图卷积网络

    目录 前言 1. 基础知识 1.1 Vanilla GCN 1.2 APPNP 1.3 JKNet 1.4 DropEdge 2. GCNII 2.1 初始残差连接 2.2 恒等映射 3. 实验 3. ...

  4. 除了网络搜索(NAS),AutoML对深度学习模型优化还有哪些贡献?

    文/编辑 | 言有三 自从Google提出AutoML技术以来,已经过去了好几年了,如今在学术界和工业界都是热点.AutoML在网络结构的搜索上已经取得了非常多的突破,相关的文章,技术博客都已经广为流 ...

  5. 打开深度神经网络黑箱:竟是模块化的?图聚类算法解密权重结构 | ICML 2020

    十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI 深度神经网络这个黑箱子,似乎有了更清晰的轮廓. 我们都知道深度神经网络性能十分强大,但具体效果为什么这么好,权重为什么要这么分配,可能连&q ...

  6. 【小结】除了网络搜索(NAS),AutoML对深度学习模型优化还有哪些贡献?

    文/编辑 | 言有三 自从Google提出AutoML技术以来,已经过去了好几年了,如今在学术界和工业界都是热点.AutoML在网络结构的搜索上已经取得了非常多的突破,相关的文章,技术博客都已经广为流 ...

  7. RSE2021/云检测:基于小波变换和连续多尺度空间注意的上下块深度网络云检测

    RSE2021/云检测Deep network based on up and down blocks using wavelet transform and successive multi-sca ...

  8. ICML 2020 | 基于类别描述的文本分类模型

    论文标题: Description Based Text Classification with Reinforcement Learning 论文作者: Duo Chai, Wei Wu, Qing ...

  9. 基于深度学习的图像语义分割技术概述之背景与深度网络架构

    本文为论文阅读笔记,不当之处,敬请指正.  A Review on Deep Learning Techniques Applied to Semantic Segmentation: 原文链接 摘要 ...

最新文章

  1. python 画三维函数图-Python画三维图-----插值平滑数据
  2. 窗口分析函数_1_生成不重复排名序号
  3. suse linux10 关闭防火墙,Suse10 关闭防火墙
  4. HTML5 - Canvas动画样例(谷歌弹跳球)
  5. 解决Please choose a writable location using the '-configuration' command line option
  6. 开放源代码GIS资源集锦
  7. php多进程有什么用,有关php多进程的用法举例
  8. R语言入门2---R语言基础绘图
  9. 初识Mysql(part16)--我需要知道的2条Mysql语句之子查询
  10. nginx php fpm 日志,nginx下php-fpm不记录php报错日志怎么办?
  11. java泛型的作用及其基本概念
  12. static_cast,reinterpret_cast,const_cast,dynamic_cast:
  13. WebLogic 服务器概述 与 部署 Java Web 应用
  14. aws fargate_使用AWS Fargate部署PyCaret和Streamlit应用程序-无服务器基础架构
  15. Ani网页木马生成器
  16. python编号/排序/翻转/并行迭代使用场景及作用
  17. zjs-my-diary-20200527
  18. spring boot 实现 Kurento 一对一浏览器视频聊天
  19. MyHandler.h对消息accu的处理
  20. 解决FBX模型导入Unity后没有贴图的问题

热门文章

  1. hello1源码解析
  2. OI/ACM 刷题网站 人气OJ简介
  3. sql-having
  4. [题解]POJ 3683 Priest John's Busiest Day
  5. lucene3.5学习笔记02--创建索引和建立搜索
  6. 修改chrome的页面背景颜色
  7. General texture mapping resources
  8. redis哨兵集群的搭建
  9. mysql语句优化方案(网上流传)
  10. 8年javascript总结