作者简介:
袁晓彤,博士,教授,主要研究方向为机器学习、随机优化、计算机视觉等.E-mail:xtyuan@nuist.edu.cn. 刘成林,博士,研究员,主要研究方向为模式识别、机器学习、文档分析与识别等.E-mail:liucl@nlpr.ia.ac.cn.人工智能的研究问题现已逐步从封闭环境扩展到开放环境,但开放环境中存在各种变化性因素,导致传统基于封闭世界假设和独立同分布假设的学习模型与算法性能明显下降.因此,变化环境下的自适应感知与学习成为当前人工智能研究的前沿热点,文中聚焦其中三个方面介绍相关最新研究进展.针对类别集变化,介绍开放集识别与分布外样本检测、新类别自主发现、类别增量学习等问题;针对数据分布变化,介绍领域自适应、领域泛化、测试时自适应等问题;针对数据质量变化,介绍弱监督学习和标签噪声学习等问题.最后分析未来的研究趋势.
Corresponding author:
ZHANG Xuyao, Ph.D., professor. His research interests include pattern recognition, machine learning and deep learning.
About Author:
YUAN Xiaotong, Ph.D., professor. His research interests include machine learning, stochastic optimization and computer vision.
LIU Chenglin, Ph.D., professor. His research interests include pattern recognition, machine learning, and document analysis and recognition.
The research on artificial intelligence is gradually extended to open environment from closed environment. There are various changing factors in open environment leading to evident performance degradation of the traditional models and learning algorithms based on closed set assumption and independently and identically distributed assumption. Therefore, adaptive perception and learning in changing environments is a frontier topic in the field of artificial intelligence. The latest advances are introduced from three aspects. For category changing, research issues of open set recognition and out-of-distribution detection, new categories discovery and class-incremental learning are introduced. For data distribution changing, issues of domain adaptation, domain generalization and test-time adaptation are introduced. For data quality changing, issues of weakly supervised learning and label noise learning are introduced. Finally, future research trends are analyzed and discussed.
模式识别和人工智能领域多年来的研究取得巨大进展[1].尤其是近年来快速发展的深度学习(深度神经网络)方法[2], 在视觉模式识别、语音识别、自然语言处理、博弈决策等智能感知和认知问题上都取得超过传统的基于人工特征和知识规则方法的性能, 甚至超过人类水平.但是, 传统感知和学习方法(尤其是基于深度学习的方法)的不足也越来越明显.主要不足体现在:1)依赖大量标记数据训练, 小样本训练时泛化性能难以保证; 2)开放环境下处理噪声数据和对抗数据的稳定性、鲁棒性较差; 3)数据分布变化、类别变化时模型自适应能力较差; 4)深度神经网络的可解释性较差.针对这些不足, 学者们在理论、模型、算法等层面不断开展新的探索.
当前机器学习技术通常依赖于封闭环境假设, 即假定学习过程中涉及的诸多要素(类别集、特征分布等)保持不变.然而, 实际学习任务面临的环境往往是开放的, 各种学习要素, 如类别集合、数据分布、特征表示等, 可能都会随时间发生变化, 容易导致传统封闭环境机器学习系统性能急剧下降[3].实际上, 在大部分模式识别和机器学习模型和算法背后蕴含3个基础假设:封闭世界假设、独立同分布假设、大数据假设[4].这三个假设直接或间接影响学习系统在开放环境中的鲁棒性.如何使机器学习方法适应开放环境成为新一代人工智能技术研究需要解决的关键问题之一.
开放环境中存在多重不确定性和变化性因素.首先, 在开放环境中类别集会发生变化, 在实际应用中, 样本有可能是不属于任何类别的噪声数据, 也有可能是训练集未出现过的新类别数据.因此需要探索开放集识别与分布外样本检测问题, 提高模型对未知的拒识能力.在此基础上, 进一步实现新类别自主发现和类别增量学习, 不断扩展模型在开放环境中的认知边界.
其次, 在开放环境中数据的分布会发生变化, 训练集和测试集细微的分布差异会带来识别性能的大幅下降.需要通过领域自适应消除分布差异的影响, 进一步探索具备领域泛化能力的特征表示, 使其具备领域不变的特性, 或者通过测试时的自适应能力, 使模型不断适应数据分布变化.
最后, 在开放环境中会出现数据质量和规模变化, “ 大数据” 和“ 精准数据” 往往是矛盾的:对较小的数据库进行逐个样本的精准标注是可实现的, 然而对于大数据的搜集将不可避免地存在噪声和错误数据.因此, 为了提升模型在数据的“ 量” 和“ 质” 方面的鲁棒性和自适应性, 产生弱监督学习、标签噪声学习、少样本学习等问题, 这些问题也影响开放环境中感知和学习算法的鲁棒性.
本文主要针对开放环境自适应感知与学习中存在的问题, 从类别集变化自适应学习、数据分布变化自适应学习、数据质量变化自适应学习等方面介绍相关研究进展, 探讨存在的问题并展望研究前景.
在开放环境中, 类别集合是动态变化的, 测试样本不一定来自已知类别, 也有可能是不属于任何类别的噪声样本, 或者是来自于未知的新类别样本.为了适应开放环境下类别的变化, 开放集识别与分布外样本检测在确保已知类别分类精度的基础上, 实现对未知样本的有效拒识.在开放环境中从无标记样本中自动发现新类别将有助于促进新知识的发现.在此基础上, 通过克服灾难性遗忘, 类别增量学习将扩展模型的处理能力, 既保持旧类别的分类能力又增加对新类别的识别能力.通过上述方法, 有望实现开放环境下的连续自主学习.
表1对类别集变化自适应学习相关问题进行对比介绍.
分布外样本检测(Out-of-Distribution Detection, OOD Detection)是一个关注如何提高模型拒识来自未知类别样本的任务[5].例如:模型在自然场景数据集上训练, 那手写数字数据集就是OOD数据集, 遇到手写数字样本输入时, 模型需要拒绝识别.开放集识别(Open Set Recognition, OSR)和OOD检测类似, 任务目标也是拒识未见类别的输入, 但是OSR面对的未知类别的语义信息和已见类别更接近, 因此可看成一种较困难的OOD检测[6].
目前关于OOD检测的研究可大概分为两类:额外使用分布外样本数据集和不使用分布外样本数据集.接下来将主要沿着这两条思路介绍一些最新的研究进展.
第一类是不使用额外OOD数据集的方法.基于距离的拒识方法表现出较大潜力, 如马氏距离等.然而, 这些方法需要对数据的分布加入较强的假设, 这些假设在实际中往往并不成立.因此, Sun等[7]探索使用非参数方法KNN(k-Nearest Neighbor)进行OOD检测, 由于不需要数据分布的假设, 具有更强的灵活性和普遍性.
Wang等[8]进一步探索基于子空间的拒识, 认为虽然模型分类可只在子空间中进行, 但是补空间中含有大量和OOD样本有关的信息, 需要挖掘这些补空间中的信息.因此, 提出ViM(Virtual-Logit Matching), 同时考虑特征在线性分类器的子空间及其补空间的信息.具体地, 在补空间计算虚拟的logits, 再通过恒定的缩放和原始logits进行匹配, 用于OOD拒识.
此外, 也有一些研究者探索训练阶段如何改进模型的OOD检测性能, Wei等[9]分析模型训练过程中OOD检测性能的变化, 发现标准的交叉熵损失训练的模型, 其logits的范数在训练过程中不断增加, 导致模型的过度自信.因此, 提出LogitNorm(Logit Normalization), 在网络优化的过程中控制logits的范数, 减小其过度增加导致的影响.
还有另一部分研究者关注OOD检测的学习理论, 由于OOD数据的不可知性和多样性, 优良的泛化能力对于有效的OOD检测算法至关重要.为了研究OOD检测的泛化能力, Fang等[10]探讨OOD检测的PAC(Probably Approximately Correct)学习理论.这是一个之前被大家忽略的问题, 作者同时给出OOD检测可学性的必要条件和充分条件, 还根据提出的OOD检测学习理论为一些代表性的OOD检测方法提供理论支持.
第二类是使用额外OOD数据集的方法.虽然训练过程中使用OE(Outlier Exposure)可在OOD检测上表现出较优性能, 然而考虑到潜在的OOD数据样本空间可能非常庞大, 筛选更具有信息量的异常数据将进一步有助于OOD检测.Ming等[11]提出POEM(Posterior Sampling-Based Outlier Mining), 高效利用异常数据, 使正常数据和异常数据之间的边界更紧凑, 从而提高检测性能.
通常的OOD检测方法OE认为用户可额外获得一个完全由OOD数据组成的辅助数据, 因此, Katz-Samuels等[12]提出WOODS(Wild OOD Detection Sans-Supervision), 辅助数据集同时包含无标记的ID和OOD样本.作者将该问题进一步建模成带约束的优化问题, 并展示如何可行地解决它, 实验表明WOODS具有卓越的性能.
另一方面, 尽管OE在OOD拒识上具有明显效果, Zhu等[13]发现其会导致模型拒识错误分类样本的性能大幅降低, 因此, 作者研究OE这类利用无标记OOD数据的思路是否可提高模型在已知类别上的置信度估计性能, 并提出OpenMix, 包含拒识类别增广和分布外样本变换两部分.相关实验表明, OpenMix在多种情况下可提升模型的安全性和可靠性.
以往的OOD检测方法往往仅是由视觉这个单一模态驱动的, 受到近期多模态模型CLIP(Contrastive Language-Image Pre-training)的启发, Ming等[14]将OOD检测的范围从单一模态拓展到多模态领域, 提出MCM(Maximum Concept Matching), 将视觉特征和文本特征对齐, 在拒识时同时考虑两者的信息, 大量实验表明MCM性能优于纯视觉特征方法.
近年来, OSR得到越来越多的关注, Vaze等[15]对OSR基线方法进行大量实验, 发现开放集识别性能与其在封闭集类别上的准确性之间高度正相关, 这种相关性在不同的数据集和网络之间广泛存在.进一步, 通过提高基线方法的准确率, 在开放集识别上达到最优性能.另一些人从自编码器和原型学习的角度进行研究, Yang等[16]结合原型学习与深度学习, 提出深度原型网络, 利用样本到原型的距离实现对未知样本的拒识.
由于现有的基于自编码器和原型学习的方法在处理开放集识别这个问题上表现出巨大潜力, Huang等[17]提出CSSR(Class-Specific Semantic Reconstruction), 通过类别独立的自编码器替代原型点, 在每个已知类别上建立一个独立的自动编码器流形.区别于传统的基于原型的方法使用距离进行判别, CSSR使用自编码器的重建误差衡量类别归属度, 在开放集识别上取得优异性能.
新类别自主发现是开放环境中的重要任务.相比OOD检测, 新类别发现希望模型不仅能拒识来自开放环境的新类别样本, 而且能更进一步主动从这些样本中无监督地发现新类别.
从最终目标上看, 新类别发现类似于聚类, 但假设模型可额外见到一部分有标签的样本, 通过对这些样本的监督学习获得通用知识, 可更准确地聚类新类别, 缓解无监督聚类的分类准则歧义性和平凡解问题.
从数据层面上看, 新类别发现是一个半监督的设定, 把传统半监督学习拓展到开放环境中, 即无标签的数据来自新的类别, 与有标签数据的类别集不重合.
从底层的学习范式上看, 新类别发现可理解为一个迁移的聚类, 即将知识从有标注旧类别迁移到无标签的新类别数据进行聚类.
从任务设定上讲, 可分为3类:新类别发现、广义新类别发现和增量新类别发现.
常规的新类别发现是这个领域最基础的设定:给定有标签数据Dl和无标签数据Du, 类别分别为旧类别和新类别, 即Du中只包含新类别数据, Dl和Du类别集不相交.模型需要利用Dl对Du实现聚类.
AutoNovel[18]是这个领域早期的经典工作, 算法分为三步.1)角度预测自监督预训练.在Dl和Du上同时预训练, 随后在Dl上有监督微调.2)迁移学习.特征提取器在Du上预测二分类伪标签(两个样本是否相似), 这里作者提出排序统计量, 即根据特征向量最高的k个激活索引是否一致来判断相似与否, 利用伪标签训练新类分类头.3)联合训练.在Dl和Du上分别使用真实标签和伪标签进行训练, 实现对新旧类的同时分类.
在AutoNovel的基础上, NCL(Neighborhood Con-trastive Learning)[19]构建邻居关系, 挖掘更多的正样本, 克服传统对比学习的假负例(False Negative)的影响.具体地, 对于Dl和Du, 分别维护特征队列, 通过挖掘队列中与查询样本(Query)最相似的k个特征, 加入对比学习的正(伪)样本对中, 缓解假负例的影响.作者的第二个创新点是提出困难负样本生成, 在无标签队列中选取k个最不相似的特征, 再与有标注数据队列进行混合, 在这里选择k个最相似的作为困难的负样本, 进行对比学习.
UNO(Unified Objective Function)[20]使用统一的框架解决新类发现问题.对于无标签数据的新类发现, 核心思想是采用交叉视角预测任务, 让一个数据的两个增强视角互相打伪标签, 方式为Sink-horn-Knopp算法, 通过求解最优传输问题分配伪标签, 再在统一的概率空间对新旧类进行分类.Li等[21]提出IIC(Inter-Class and Intra-Class Constraints), 核心思想是在新旧类各设置一个分类头, 最后堆叠在统一空间分类.作者主要创新点是使用KL散度约束类内和类间关系, 最大化类间KL散度, 最小化类内KL散度, 同时使用交叉熵损失进行有标签数据的分类, 无标签数据的伪标签也采用Sinkhorn-Knopp算法处理.
相比最基本的新类发现, 处理广义新类别发现拓展无标签数据的复杂性, 允许Du中同时包含旧类别和新类别的数据, 即Dl的类别集包含于Du.这一设定的复杂之处在于模型需要同时在Du中分类旧类、识别新类.Vaze等[22]提出GCD(Generalized Category Discovery), 定义广义新类别发现这个任务设定, 为了避免伪标签带来的偏差, 使用无参数分类器, 训练时在Du上使用无监督对比学习、在Dl上使用有监督对比学习训练特征提取器, 测试时使用半监督K-means聚类.同时, 利用有标签数据的分类性能估计新类别的数量.
Pu等[23]提出的DCCL(Dynamic Conceptional Contrastive Learning), 包含两个阶段.1)动态概念生成.利用Dl和Du构造紧邻矩阵, 利用现有熵最小化聚类算法得到概念标签, 并对每个标签求解概念中心.2)双层对比学习.概念层使用1)的概念, 每个样本与所属概念中心作为正样本对进行对比学习, 实例层采用对比学习, 类似GCD中的方式.这两步轮替优化, 类似EM(Expectation-Maximum)算法, 保证模型学得更好的特征表示, 推理时类似GCD, 利用半监督K-means进行聚类.
Zhang等[24]提出PrompCAL(Prompt-Based Con-trastive Affinity Learning), 引入提示学习的概念, 提高模型的表示能力, 同时提出对比近邻学习的概念, 构建近邻图, 通过近邻传播算法结合有标签数据作为约束, 得到伪标签, 在图中与查询样本相连边, 权重为1为正样本, 权重为0为负样本, 进行对比学习.
增量新类发现把新类发现推广到增量学习的设定, 即模型在发现新类阶段, 无法获得旧类数据, 学习新类同时不能忘记旧类知识.NCDwF(Novel Class Discovery without Forgetting)[25]和FRoST(Feature Replay and Distillation with Self-Training)[26]是同期的两个工作, 也是增量类别发现最早的两个工作, 使用不同的方法解决问题.NCDwF最大化旧类分类头和新类分类头, 输出logits的互信息, 发现新类.针对灾难性遗忘的克服:1)使用特征空间蒸馏损失, 防止特征空间偏移过大; 2)利用梯度上升生成旧类别每类的伪特征, 与存储的旧类类别均值混合, 构建旧类别的重放特征进行分类.此外, 还需要再训练一个MLP(Multi-layer Perception)网络, 判断样本是来自新类还是旧类, 推理时利用这个网络首先判断新旧类, 再利用相应的分类头进行分类.FRoST发现新类的方式借鉴文献[18], 首先利用Dl进行预训练, 并保存旧类别每类的原型(特征均值); 再用排序统计量对无标签数据打伪标签, 用伪标签监督新类别分类头学习, 进行新类发现.
对于防止遗忘方面, 借鉴现有增量学习的方法, 在原型周围进行高斯采样特征重放, 并对这些特征进行训练, 得到所在原型的标签, 再加上特征空间蒸馏约束, 防止偏移过大.NCDwf和FRoST都只有一步增量, Zhao等[27]提出一个更困难也更符合实际情况的设定, 即多步增量, 同时每步增量的数据中不仅包含新类数据, 也包含旧类数据.针对这个任务, 作者结合非参数分类器与基于密度的样本选择, 通过与k近邻样本相似性得到密度, 选取密度较高的样本, 并为其近邻设置伪标签, 使方法更稳定.增量阶段也通过密度采样进行旧类重放, 防止灾难性遗忘.
类别增量学习旨在使模型能不断更新以学习新类别, 同时又能较好地保持在已学习类别上的性能.已有的类别增量学习方法主要分为无样本回放和样本回放两类.无样本回放类方法又可分为基于参数正则化的方法、知识蒸馏的方法和基于原型回放的方法.样本回放类方法可进一步分为真实数据回放和生成数据回放.
近期, 类别增量学习的进展主要在如下三方面:1)无样本回放类方法; 2)动态结构类方法; 3)类别增量学习的任务扩展和理论分析等.
早期的类别增量学习方法通常保存一部分旧类别的真实训练数据或使用生成模型生成旧类别的伪样本, 减少类别增量学习中的灾难性遗忘问题.然而, 输入空间数据回放需要占用较大的存储空间.此外, 生成旧类别原始空间的样本也往往较困难.
为了克服上述问题, 无样本回放类方法在近期得到关注和发展.Zhu等[28]提出PASS(Prototype Augmentation and Self-Supervision), 在深度特征空间保留旧类别均值作为原型.在学习新类别时, 提出基于高斯噪声的原型增强, 较好地维持已学习到的决策面.此外, 考虑到持续更新的特征提取器也会过拟合当前的新类别, 加重增量学习过程中的遗忘现象, PASS使用自监督旋转变换策略辅助模型学习更通用的特征表示, 使不同任务在参数空间更接近, 同时提升模型的稳定性和可塑性.实验表明PASS达到与真实数据回放方法相当的性能.
Zhu等[29]提出IL2A, 在学习新类别时基于记忆的协方差矩阵对旧类别均值进行隐式语义增强, 生成无限多的伪特征实例.IL2A未直接生成旧类别特征, 而是将其转换为正则项, 提升模型训练效率.此外, 深入研究增量学习过程中的特征表示迁移性问题, 提出的类别增广技术在原始输入空间中合成伪新类别, 有效提升特征表示的迁移性和多样性.
Zhu等[30]在PASS的基础上, 为了使新类别得到较充分的学习, 在每次学习新类别时对网络进行结构扩展, 即在当前网络的分块中添加侧分支.在每次增量学习阶段结束训练后, 使用结构重参数化技术, 将添加的侧分支信息无损地集成到主支路中, 确保每一阶段结束时网络参数数量保持不变.
在样本回放的基础上, 为了进一步提升类别增量学习性能, Yan等[31]提出DER(Dynamically Ex-pandable Representation), 构建一个由超级特征提取器网络和线性分类器组成的模块化深度分类网络.当面对新任务包含的一组新类别时, DER冻结先前学习的特征提取器, 使用新的特征提取器扩展超级特征提取器网络.最后拼接所有提取器提取的特征, 一并输入分类器进行类别预测.该策略能保留已有知识并提供足够的灵活性学习新知识.
Douillard等[32]提出DyTox(Dynamic Token Ex-pansion), 构建基于Transformer的增量学习动态网络结构, 其中编码器和解码器在所有任务中是共享的, 通过对特殊tokens的动态扩展, 将解码器与具体的任务之间建立联系.由于严格控制参数的扩展, DyTox可扩展到大量增量学习任务.
为了克服灾难性遗忘的问题, Wu等[33]使用ReduNet, 网络的每层都在没有反向传播的情况下显式计算.在这种范式, 给定一个预训练的网络和新类别数据, ReduNet可构建一个新的网络, 模拟使用旧类别和新类别的联合训练.实验表明, 相比传统的深度神经网络, ReduNet在类别增量学习任务上具有一定的优势.
基于预训练模型的快速发展, Wang等[34]提出在不同任务下L2P(Learning to Prompt for Continual Learning)一个预训练模型依次学习任务.具体地, 提示是在内存空间中维护的可学习参数, 指导模型预测并明确管理任务无关和任务特定的知识, 同时保持模型的可塑性.然而, 该方法的性能显著依赖预训练模型的性能.考虑到现实世界中长尾分布的普遍存在, Liu等[35]提出两种长尾类别增量学习场景, 即有序长尾类别增量学习和混合长尾类别增量学习, 系统地在这两种长尾类别增量学习场景下评估现有方法.此外, 提出一个两阶段学习的基准方法, 包括一个可学习的权重缩放层, 减少长尾分布引起的偏差.
在理论分析方面, Kim等[36]指出, 类别增量学习系统需要在每个任务中具有强大的任务内预测和强大的分布外检测能力.基于上述研究, 该工作研究类别增量学习的可学习性, 理论分析表明类别增量学习是可学习的, 并基于这一理论提出ROW(Replay, OOD, and Within-Task Prediction for Class Incremental Learning).
此外, 增量学习对于解释性提出新的挑战, 因为模型预测背后的原理可能会随时间的推移而改变, 导致解释性概念漂移. Rymarczyk等[37]提出可解释的类增量学习, 采用基于部分的原型方法, 包含解释性正则化、基于接近度的原型初始化策略、专注于原型部分的任务新近度偏差补偿.实验表明, 该方法减少解释性概念漂移, 在可解释性方面优于常见类增量学习方法.通过让模型在训练阶段学习更多的类别, 可显著提升模型置信度估计的可靠性及新类别的泛化能力[38].
为了适应开放环境下数据分布的变化, 领域自适应(Domain Adaptation)考虑如何利用目标域拥有的少量有标记样本或无标记样本, 再配合源域的标记样本, 进行分布迁移学习, 即把源域上有标记样本中学习的知识迁移到目标域上.更一般地, 当目标域不存在可用于学习的数据, 领域泛化(Domain Generalization)研究的问题是如何利用源域数据训练一个模型, 使该模型能泛化到其它不同数据分布的目标域.虽然这项能力对于人类来讲似乎并不需要刻意学习就能拥有, 但是对于目前的机器学习算法, 领域泛化仍然是极具挑战性的问题之一.最近, 测试时自适应(Test-Time Adaptation)作为有望解决分布漂移的有望解决方案, 允许基模型在推理期间利用测试批次中的信息不断适应未知分布, 从而实现连续的自适应学习.
表2对数据分布变化自适应学习相关问题进行对比介绍.
领域自适应是指把分布不同的源域和目标域的数据映射到一个特征空间中, 使其在该空间中的距离尽可能近, 从而使领域内的特征尽可能保持一致.近年来, 学者们对领域自适应进行广泛的研究和深入的探索.根据目标领域数据的标记情况, 领域自适应的方法主要可分为:无监督域自适应、半监督域自适应和主动域自适应.
无监督自适应是域自适应较典型的设定, 即假定目标领域有少量的无标记样本用于学习, 通常使用源模型为目标域数据生成伪标签以训练目标模型, 重点是改进伪标记技术或提出新的训练目标.Shen等[39]对目标模型的泛化误差建立信息论界限, 说明固有的偏差-方差权衡, 再从三个角度提供有关如何平衡这种权衡的见解, 包括域聚合、选择性伪标记和联合特征对齐.Chen等[40]提出GDA(Gra-dual Domain Adaptation), 认为当源域和目标域之间存在较大差异时, 会降低无监督域适应的有效性.GDA是缓解此类问题的一种有效方法, 利用逐渐从源转移到目标的额外未标记数据, 提升领域自适应的性能.
半监督域自适应是指源域和目标域分布不同但标签共享, 源域数据拥有标签, 而目标域只拥有少量的标记数据和无标记数据, 这是一种对真实环境中跨域任务的模拟.Li等[41]推导半监督域适应任务的泛化上界, 给出影响泛化上界的两个重要的因素:不变性表示(Invariant Representation)和不变性风险(Invariant Risks), 提出一种获得目标泛化的原则方法, 即对齐特征空间中跨域的边际分布和条件分布.Singh等[42]提出CLDA(Contrastive Learning Frame-work for Semi-Supervised Domain Adaptation), 试图弥合标记目标和未标记目标分布之间的域内差距, 以及源目标和未标记目标分布之间的域间差距.Yang等[43]提出DeCoTa(Deep Co-training with Task Decomposition), 将半监督域自适应任务显式分解为两个子任务:目标域中的半监督学习任务和无监督任务, 应用完善的协同训练框架, 其中两个分类器迭代地“ 互相教导” , 交换其高置信度预测, 以便两个分类器都能在目标领域表现出色.
主动域自适应方法利用主动学习策略挑选目标域中的未标记样本进行标记, 从而辅助目标领域中的知识迁移过程.Xie等[44]提出SDM(Select-by-Distinctive Margin), 由最大边际损失和用于数据选择的边际采样算法组成.提供的理论分析表明, SDM的工作方式类似于支持向量机, 存储决策边界周围的困难示例, 并利用它们查找信息丰富且可传输的数据.
Prabhu等[45]提出CLUE(Clustering Uncertainty Weighted Embeddings), 证明现有的仅基于模型不确定性或多样性采样的主动学习方法对于领域自适应来说效果较差, 进而提出聚类不确定性加权嵌入, 这是一种针对主动域自适应的新型标签获取策略, 执行不确定性加权聚类, 查询不确定且特征空间多样化的目标实例并进行标记.Xie等[46]认为传统的主动学习方法可能效果较差, 因为它们未考虑域迁移问题, 在此基础上提出DUC(Dirichlet-Based Uncertainty Calibration), 同时实现误校准的缓解和信息丰富的目标样本的选择.
领域泛化旨在提高模型应对测试数据分布变化的能力.近年来, 研究者们从不同角度出发, 提出大量的领域泛化方法, 大致可归纳为:基于数据操作的方法、基于表示学习的方法和基于不同学习策略的方法.
基于数据操作的方法主要思想是通过数据层面的扰动增加数据的多样性, 使训练数据更具有代表性.如受AdaIN(Adaptive Instance Normalization)[47]技术的启发, Zhou等[48]提出MixStyle, 随机混合来自不同域的两个样本的统计信息, 生成新的风格, 再将其迁移到其它标准化的内容样本上进行数据增强, 以此提供更多不同的域/样式的样本, 训练更具有域泛化性的模型.
Huang等[49]利用离散余弦变换(Discrete Cosine Transform, DCT)将图像变换到频率域, 发现移除低频成分或高频成分可显著提高模型的泛化能力, 说明相比中频成分, 低频成分和高频成分能捕捉更多随域变化的特征, 因此提出FSDR(Frequency Space Domain Randomization), 在频率域随机化域相关的频率成分以增强训练数据.Shankar等[50]使用贝叶斯网络建模训练样本、所属域和所属类别之间的依赖关系, 提出一种数据增强策略, 在尽可能不改变类别标签的情况下, 沿着域分类损失改变最大的方向对输入样本进行扰动.
基于表示学习的方法主要关注特征表示层面, 探究通过学习鲁棒的特征表示以提高模型对未知域数据的泛化能力.Zhang等[51]基于信息瓶颈原则, 对域泛化问题进行理论建模, 将期望的表示与域不变特征学习和最大化特征熵联系, 并通过监督对比学习和特征维度间去相关等技术手段, 在不使用域标签的情况下, 在多个公开数据集上取得优异性能.Bai等[52]将CNN(Convolutional Neural Network)提取的深度特征(原始特征)分别送入类别识别分支与环境识别分支, 每条分支由单独的特征提取器和分类器组成, 通过维持两条分支传回的分类损失对原始特征所求梯度的正交性进行解耦, 最后根据类别识别分支的输出完成当前任务.
Nam等[53]使用类似的网络结构, 即一个共享的特征提取器后面分别连接一个内容偏好网络和一个风格偏好网络, 内容偏好网络随机化输入样本的风格, 使该分支专注于学习内容, 风格偏好网络与之相反, 两个网络通过对抗学习调整共享的特征提取器对内容和风格的偏好程度.以不变的风险最小化(Invariant Risk Minimization, IRM)[54]为基础, Lin等[55]通过理论与实验分析说明, 当深度模型过度拟合数据时, IRM会退化为经验风险最小化(Empi-rical Risk Minimization, ERM).将贝叶斯推理引入IRM, 基于分类器的后验分布(而不是单一分类器)估计IRM的惩罚, 缓解上述问题.
基于不同学习策略的方法通过借助一些通用的鲁棒机器学习算法或一些启发式的训练策略以提高模型的鲁棒性.Shi等[56]假设在训练过程中两个域的梯度方向应尽可能相同, 以增强共同的表示学习.为此, 提出最大化任意两个源域数据产生的平均梯度内积以对齐跨域的梯度方向.通过此操作, 网络可找到使输入输出对应关系在跨域中尽可能接近的权重.受人类有监督和自监督相结合的学习方式启发, Bucci等[57]认为自主学习能发现有助于泛化的不变性和规律.具体地, 在监督训练中加入自监督的拼图任务和旋转预测任务, 帮助网络学习物体形状、空间方向和部件关系等概念.由于使用随机梯度下降(Stochastic Gradient Descent, SGD)训练的神经网络具有较强的简单性偏好[58]或捷径学习[59]现象, Teney等[60]在一个共享的特征提取器后分别连接多个分类器, 通过惩罚每个分类器输入梯度的相似性训练一组模型, 以不同的方式拟合训练数据, 诱导模型对更复杂预测模式的学习, 从而提升领域泛化的性能.
测试时自适应在推理阶段访问无标记的测试数据, 在源域预训练的模型自适应到目标域.在测试时自适应设置中的测试数据流以在线形式到来, 数据具有域标签, 模型通过访问测试数据和自身参数实现自适应.Wang等[61]提出Tent, 通过测试熵最小化进行自适应, 即通过预测的熵衡量其置信度, 优化模型.具体地, Tent重新估计批归一化统计数据, 并优化批归一化的仿射变换参数, 在每个批次上进行在线更新.
为了缓解使用无标记数据更新整个模型参数带来的过拟合问题, 不同于Tent仅更新批归一化层参数, Choi等[62]提出一种偏移无关的权重正则化方法.在测试时, 自适应过程中鼓励对于分布偏移敏感的模型参数进行大幅更新, 同时轻微更新对于偏移不敏感的参数.这种正则化方法使模型能利用较高的学习率迅速适应目标域, 不会出现性能下降的情况.此外, 使用基于最近源领域原型的辅助任务, 使源域和目标域特征对齐, 有助于减小分布偏移, 并进一步提升性能.
现实世界中存在大量非静态连续变化的目标域数据, 即连续测试时自适应设置.Wang等[63]提出CoTTA(Continual Test-Time Adaptation Approach), 包括两个部分:1)使用平均加权和增强平均预测减少误差积累, 2)在每次迭代中随机恢复部分神经元到源预训练权重, 长期保留源知识.CoTTA可对网络中的所有参数进行长期适应.
CoTTA主要解决对已经自适应过的目标域知识的遗忘, Niu等[64]提出EATA(Efficient Anti- forgetting Test-Time Adapta-tion Method), 可在不忘记原有知识的前提下, 适应测试数据的分布变化.EATA对测试样本进行主动筛选, 选择可靠且非冗余的样本进行模型更新, 并引入Fisher正则化, 限制重要模型参数的变化, 解决测试时间模型自适应中存在的效率较低和遗忘问题.测试时主要在内存有限的边缘设备上进行自适应, 因此减少内存对于实现测试时自适应至关重要, 但是以前的测试时自适应研究忽视这一点.
Song等[65]提出EcoTTA(Memory-Efficient Con- tinual Test-Time Adaptation), 以节省内存的方式改进连续测试时间自适应.首先, 设计轻量级的元网络, 可将冻结的原始网络适应到目标域.这种新颖的架构通过减少反向传播所需的中间激活的大小以最小化内存消耗.其次, 设计自我蒸馏正则化, 通过控制元网络的输出不显著偏离冻结的原始网络的输出, 保留源领域的训练良好知识.
单样本测试时自适应设置在测试时对单个样本而非一个批次的样本进行自适应.Zhang等[66]提出MEMO(Marginal Entropy Minimization with One Test Point), 可提高深度神经网络在测试时的鲁棒性, 在不修改模型训练过程的情况下, 使用测试数据改善模型的鲁棒性, 通过对测试数据进行不同的数据增强, 并在不同增强版本的数据上进行模型参数调整, 最小化模型的平均输出分布的熵, 鼓励模型在不同数据增强版本上做出相同的预测, 以保持其中的不变性, 并同时保持对其预测的信心.Lim等[67]提出TTN(Test-Time Normalization), 可根据不同的批归一化层对领域偏移的敏感性, 调整传统批归一化和直推批归一化之间的权重, 以插值标准化统计信息, 从而提高模型对于不同领域的鲁棒性.Niu等[68]主要讨论在实际测试场景下, 如何稳定地进行测试时自适应.作者发现批归一化层是导致测试时自适应不稳定的关键因素, 而批无关归一化层(如组归一化或层归一化)更有利于测试时自适应的稳定性.然而, 某些带有大梯度的噪声测试样本可能会干扰模型自适应, 并导致坍塌的平凡解, 即为所有样本分配相同的类标签.基于上述发现, 提出SAR(Sharp- ness-Aware and Reliable Entropy Minimization Me- thod), 进一步稳定测试时自适应.
机器学习方法包括有监督学习和无监督学习, 有监督学习已经在许多任务中取得成功, 但训练有监督模型依赖大量手动标注的训练数据, 而数据的标注成本很高, 获取大量的有标注样本难度较大, 在标注过程中会不可避免地存在标记错误.实际上, 在开放环境中, 数据质量和规模往往是良莠不齐的, 数据的标注可能不够精细或存在错误, 数据的体量也可能较小, 从而无法满足传统学习方法的要求.因此, 为了适应开放环境下数据质量和规模的变化, 弱监督学习、标签噪声学习、少样本学习等问题受到广泛关注.本文重点对弱监督学习和标签噪声学习展开介绍, 关于少样本学习的综述可参考文献[69]和文献[70], 更多的研究工作参见文献[71]~文献[76].表3对数据质量变化自适应学习相关问题进行对比介绍.
弱监督学习旨在通过较弱的监督信号构建预测模型.弱监督学习利用大量无标注或粗糙标注, 甚至不准确标注的样本进行模型的学习, 这样能够有效利用海量数据, 提升模型性能[77].从监督类型来说, 弱监督学习可分为[77]:不完全监督(Incomplete Supervision), 不确切监督(Inexact Supervision)和不准确监督(Inaccurate Supervision).
不完全监督是指只有一部分的训练数据含有标注信息, 而其它数据没有, 类似于半监督学习.例如, 在弱监督异常检测中, 从有限数量的标记数据和大量的未标记数据中学习异常检测器[78].
不确切监督是指训练数据仅具有粗粒度的标注信息, 如在图像领域中的实例分割任务仅含有矩形框标注.不确切监督的学习方法近期在很多的任务中均有发展.在三维对称性检测任务中, 现有的方法需要使用大量具有3D对称的注释训练数据, 才能实现对不完整数据的对称性检测.Shi等[79]提出以弱监督学习方式训练网络, 从单视图RGB-D图像检测物体对称性, 不需要繁琐的对称注释, 具有良好的通用性.在视频的对象定位任务中, 需要将句子中描述的对象定位到视频中的视觉区域.在只有视频句子注释可用的情况下, 使用弱监督学习的方法.Wang等[80]设计一个统一的因果框架, 学习非基础对象相关的关联, 获得更准确、鲁棒的视频对象定位, 解决先前工作因弱监督方法监督不力带来的模糊性问题和混淆对象造成的混淆联想.
在语义分割领域, 为了避免昂贵的像素级注释的负担, 同样引进弱监督学习方法.在弱监督语义分割任务中, Fan等[81]解决利用图像级标签作为弱监督的语义分割问题, 认为通过专注于从弱标签生成更好的伪掩模以训练分割模型的方法可解决该问题, 通常只考虑一个图像而忽略潜在的跨图像背景, 因此, 利用跨图像的关系进行弱监督语义分割, 获得较优的弱监督分割效果.
不准确监督是指训练数据的标注信息有误并不完全正确.相对典型的场景就是在有标签噪声的情况下进行学习.目前常见的解决方案主要是从设计更鲁棒的模型结构、损失函数和正则化方法、损失校正和样本筛选这3个角度出发.
为了提升弱监督学习在真实任务中的应用, Li等[82]提出一个通用的集成学习方案, 集成多个弱监督学习器以获得安全的预测, 对分类和回归中常用的凸损失函数具有安全性保证, 并能包含基学习器权重的先验知识.同时该工作指出, 安全的弱监督学习通用方案是关键性问题, 但尚未被广泛研究.
为了提高弱监督学习的性能, Gong等[83]提出CEGE(Centroid Estimation with Guaranteed Effi-ciency), 用于弱监督学习中处理不完整、不确切、不准确的监督问题, CEGE的核心是设计一个适用于各种弱监管的无偏和统计有效的风险估计器, 该工作也揭示各种弱监督问题之间的联系.
处理标签噪声的方法可分为两类:基于噪声模型的方法和无噪声模型的方法.基于噪声模型的方法显式区分标记正确的样本与标记错误的样本, 再通过删除标记错误的样本或打伪标签的方式降低标签噪声的负面影响.无噪声模型的方法不对噪声样本进行特殊处理, 而是通过设计鲁棒的学习算法, 降低模型对标签噪声的敏感性
MentorNet[84]是典型的基于噪声模型的方法, 若存在一个验证集, 其中所有样本的标注都是正确的, 则首先利用验证集额外训练一个元网络, 再利用元网络挑选训练集上标记错误的样本予以丢弃.若不存在这样的验证集, 在每次迭代中, 首先根据分类器的推理结果挑选标注正确的样本, 最后仅使用挑选出的样本进行参数更新.如果某次迭代中样本选择步骤出现偏差, 自步的MentorNet极易出现误差累积的问题.为了解决上述问题, Co-teaching[85]同时维持两个分类器, 在每次迭代中, 两个分类器分别基于各自的推理结果挑选标记正确的样本, 再将这部样本送给对方, 用来更新对方的参数, 并且在整个过程中两个分类器不共享任何参数.一方面, 在训练前期, 由于两个分类器的参数差异较大, 挑选的样本也不同, 因此相比自步的MentorNet, 可明显降低累积误差; 另一方面, 在训练后期, 两个分类器的参数会趋于一致, 此时又会出现误差累积问题.为了克服上述弊端, Yu等[86]进一步改进Co-teaching, 提出Co-teaching+, 算法也同时维持两个分类器, 在每次迭代中, 如果两个分类器对某个样本的推理结果相同, 移除该样本, 再在剩余的样本中挑选标记正确的样本, 送给对方用来进行参数更新.如此在每次迭代中, 两个分类器的训练集皆不相交, 从而保证两个分类器的参数存在差异, 进一步缓解误差累积问题.MentorNet等在挑选标注正确的样本时都使用小损失技巧.由于分类器在训练前期更倾向于记住标记正确的样本, 然后随着训练过程的推进, 逐渐过拟合标签噪声, 所以小损失技巧将损失值小于阈值的训练样本视作标记正确的样本, 否则视作标记错误的样本.
Xia等[87]发现, 小损失技巧的弊端主要有两点:1)基于单次推理结果计算得到的损失值通常不够稳定; 2)标注正确的困难样本(如罕见类别的样本)在训练初期的损失值也较大.为了克服缺陷1), 他们使用多次迭代中损失值的平均值代替当前迭代中的瞬时损失值; 为了克服缺陷2), 他们强制模型适度关注在之前迭代中未被选到的样本, 即使其损失值较大.与之类似, Wei等[88]发现, 位于在决策边界附近的标注正确样本损失值较大, 小损失技巧无法将这部分样本与标注错误的样本区分.基于上述现象, Xia等[87]提出自过滤算法, 使用一个记忆库存储每次历史迭代中模型在各样本上的推理结果, 根据推理结果的波动情况挑选标注正确的样本.为了规避选择偏差造成的误差累积问题, 引入正则化, 避免推理结果的置信度过高.
Li等[89]发现分类器对不同样本的记忆强度是不同的, 且记忆强度可使用推理结果的置信度量化.他们首先使用不同的数据增强处理同个样本, 得到两个视角, 然后输入分类器中, 获得来自两个视角的置信度, 将其与基于置信度动量计算得到的阈值进行对比, 从而区分标注正确和标注错误的样本.在上述过程中, 每个样本的阈值都不相同, 比全局阈值或类别层面阈值更灵活.
MentorNet等在挑选标记正确的样本后, 将标记错误的样本直接丢弃.DivideMix[90]在完成样本选择之后, 仅将标记错误的样本标签丢弃, 再利用半监督学习算法训练分类器.具体地, DivideMix也同时维持两个分类器, 首先使用常规训练方法对分类器进行预热.然后交替进行样本选择与参数更新, 样本选择同样基于小损失技巧.对于挑选的标记正确的样本, 使用分类器的推理结果对原始标签进行校正; 对于标记错误的样本, 使用两个分类器的推理结果的均值作为其伪标签, 然后基于半监督学习算法MixMatch更新参数.由于最大限度地利用训练集上的有用信息, DivideMix在多个基准任务上达到很高的准确率.
在DivideMix的基础上, Nishi等[91]发现, 在不同阶段使用恰当的数据增强, 性能可得到进一步的提高.常规的随机裁剪和镜像翻转称为弱增强, AutoAugment或RangAugment等更复杂的数据增强方法称为强增强.在预热阶段, 当噪声比例较低时, 强增强较合适, 否则应选用弱增强.在交替进行样本选择与参数更新阶段, 应在样本选择阶段使用弱增强, 在参数更新阶段使用强增强.
无噪声模型的方法中的一类是正则化.早停是一种常用的正则化方法, 通常的做法是在某个时间点停止更新分类器的所有参数.然而, Bai等[92]发现, 虽然深度神经网络的深层对标签噪声较敏感, 但是其浅层相对较鲁棒, 将所有层同时冻结可能会使不同层之间产生对抗作用, 从而降低最终性能.他们提出渐进早停(Progressive Early Stopping, PES), 将深度神经网络由浅至深划分为两部分, 使用较多的迭代轮次训练整个网络, 然后固定前面部分, 重新初始化后面部分的参数, 再使用较少的迭代轮次训练后面部分.
标签平滑也是常用的正则化方法, 然而Wei等[93]发现, 标签平滑仅在标签噪声强度较低时有效, 如果噪声强度较高, 标签平滑反而会损害分类器的泛化性能.这是因为, 当标签噪声强度较低时, 分类器会过度自信, 标签平滑可降低其自信程度, 所以有正向作用.然而当标签噪声强度较高时, 分类器的自信程度本来已经较低, 如果再引入标签平滑, 容易造成欠拟合问题, 而负标签平滑则可以缓解上述问题.
无噪声模型的方法中的另一类是鲁棒损失函数.在训练集上存在标签噪声的情况下, 使用交叉熵作为损失函数容易造成过拟合问题.使用平均绝对误差在较简单的分类任务上可达到较高的准确率, 但是当任务较困难时, 极易出现严重的欠拟合问题.Zhang等[94]对两种损失函数进行深入分析:当使用交叉熵作为损失函数时, 模型对困难样本的关注程度远大于对简单样本的关注程度, 由于困难样本与标注错误样本之间存在较大的重叠, 所以模型很容易过拟合标签噪声; 当使用平均绝对误差作为损失函数时, 模型对所有样本的关注程度相同, 一方面可有效降低标签噪声的负面影响, 另一方面也容易引起欠拟合问题.为了解决上述问题, 他们提出广义交叉熵, 相比交叉熵, 广义交叉熵对困难样本的关注程度有所降低, 从而防止严重的过拟合.相比平均绝对误差, 广义交叉熵对困难样本的关注程度总大于对简单样本的关注程度, 从而防止严重的欠拟合, 然而, 模型仍可能出现轻微的过拟合或欠拟合问题.为了解决上述弊端, 动态敏感损失[95]基于广义交叉熵进行改进, 由于分类器在训练前期倾向于记忆标注正确的样本, 随着训练过程的推进逐渐过拟合标签噪声, 动态敏感损失令分类器在训练前期模型更关注困难样本, 杜绝欠拟合问题, 而后逐渐提高模型对简单样本的关注程度.特别地, 在训练后期令模型对简单样本的关注程度超过对困难样本的关注程度, 从而杜绝模型过拟合标签噪声.
面向变化环境的自适应感知与学习, 学者们针对类别集变化、数据分布变化、数据质量变化开展大量研究工作, 取得一系列进展.从实际开放环境的自适应感知应用角度, 现有方法在学习能力、感知性能、自适应能力等方面仍有诸多不足, 需要从理论和模型、算法层面进一步探索.下面是一些值得进一步研究的方向.
1)变化环境自适应感知和学习的理论分析与建模.从理论层面对变化环境感知与学习中的各种变化因素进行建模和分析, 设计统一的模型和算法, 同时有效处理上述各种问题, 通过自适应变化环境(类别、分布、数据等)实现模型的连续自主学习, 并且提出统一多方面性能的评价指标.
2)鲁棒性和自适应性更强的模型与算法.当前的研究多聚焦在提升深度神经网络模型在某一方面(类别集变化、分布变化、标记样本不足、噪声标签、拒识、增量学习)的不足, 未来研究可逐步扩展到结合多方面变化和鲁棒性的模型与算法设计.
3)变化环境多模态感知和学习.近年来多模态感知和多模态学习取得很大进展, 但还较少考虑类别集变化、分布变化、数据质量变化等因素.因此研究变化环境下的多模态感知和学习理论与方法十分必要.面向单模态的变化环境感知模型和学习算法可推广到多模态, 跟多模态表示学习、融合、推理等模型算法结合.
4)知识和数据双重驱动的变化环境学习方法.统计模型和神经网络模型难以取得足够可靠和具可解释性的感知、认知性能.结合知识和数据驱动, 可提升对未知和变化的自适应能力, 提升自适应感知的学习效率, 快速适应变化环境.
5)开放环境感知和学习算法与科学研究结合.目前人工智能方法正在跨界改变科学研究方式, 成为科学发现的新引擎[96], 人工智能将赋能众多科学领域的研究发现, 融入科学发现的假设形成、实验设计、数据收集和分析各个阶段, 从变化中自适应地学习, 从而发现新的科学知识, 这是AI for Science的主要目标之一.
变化环境自适应感知与学习是一个新的研究方向, 其科学问题隐含已有模式识别和机器学习问题的多种特性与挑战, 如开放集识别、分布外样本检测、新类别自主发现、类别增量学习、领域自适应、领域泛化、测试时自适应、弱监督学习、标签噪声学习等问题.本文从类别集变化、数据分布变化、数据质量变化的角度回顾近年来的一些主要研究进展, 并针对现有理论方法的不足和开放环境应用的需求, 讨论一些值得研究的未来发展方向.针对变化环境自适应感知与学习的多种数据特点和挑战, 建立统一的理论框架, 对类别集变化、数据分布变化、数据质量变化等问题进行协同处理, 提出系列模型和算法, 具有重大需求和广阔前景.
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
|
[10] |
|
[11] |
|
[12] |
|
[13] |
|
[14] |
|
[15] |
|
[16] |
|
[17] |
|
[18] |
|
[19] |
|
[20] |
|
[21] |
|
[22] |
|
[23] |
|
[24] |
|
[25] |
|
[26] |
|
[27] |
|
[28] |
|
[29] |
|
[30] |
|
[31] |
|
[32] |
|
[33] |
|
[34] |
|
[35] |
|
[36] |
|
[37] |
|
[38] |
|
[39] |
|
[40] |
|
[41] |
|
[42] |
|
[43] |
|
[44] |
|
[45] |
|
[46] |
|
[47] |
|
[48] |
|
[49] |
|
[50] |
|
[51] |
|
[52] |
|
[53] |
|
[54] |
|
[55] |
|
[56] |
|
[57] |
|
[58] |
|
[59] |
|
[60] |
|
[61] |
|
[62] |
|
[63] |
|
[64] |
|
[65] |
|
[66] |
|
[67] |
|
[68] |
|
[69] |
|
[70] |
|
[71] |
|
[72] |
|
[73] |
|
[74] |
|
[75] |
|
[76] |
|
[77] |
|
[78] |
|
[79] |
|
[80] |
|
[81] |
|
[82] |
|
[83] |
|
[84] |
|
[85] |
|
[86] |
|
[87] |
|
[88] |
|
[89] |
|
[90] |
|
[91] |
|
[92] |
|
[93] |
|
[94] |
|
[95] |
|
[96] |
|