自监督学习技术综述

本文涉及的产品
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_高级版,每接口累计50万次
NLP自然语言处理_基础版,每接口每天50万次
简介: 自监督学习技术综述

前言


人工智能是当前科技领域最热门的话题之一。随着人工智能的发展,研究人员们不断探索新的技术手段和方法,以进一步提升人工智能系统的性能和能力。目前,人工智能的发展趋势主要包括大模型、多模态、知识蒸馏和自监督的结合。


大模型是指通过增加模型参数、层数和计算资源,以提高模型的性能和表现。在自然语言处理和计算机视觉等领域,深度学习模型的表现和性能都得到了巨大的提升,这得益于大模型的应用和发展。


多模态是指结合不同的数据来源,例如图像、文本、语音等,以提高模型的性能和能力。随着互联网和物联网的普及,大量的多模态数据被收集和存储,这为多模态人工智能的应用和发展提供了良好的基础。


知识蒸馏是指将大型、复杂的模型的知识转移给小型、简单的模型,以提高小型模型的性能和泛化能力。这种方法可以减少计算和存储资源的使用,同时也可以提高模型的效率和可用性。


自监督学习是指使用未标记的数据自动学习特征和模式,以提高模型的性能和泛化能力。自监督学习可以降低数据收集和标注的成本,同时也可以提高模型的自主性和智能性。


大模型、多模态、知识蒸馏和自监督学习的结合是当前人工智能的主要发展趋势之一。这些技术手段和方法的应用和发展将进一步提高人工智能系统的性能和能力,促进人工智能技术的应用和普及。

1a702365de284c1a942c30e11527a18f.png

大模型,多模态,自监督,知识蒸馏,这四个关键词,对应的关键技术的实现,似乎就是一个真正模仿人的过程,实现真正的人工智能。


以一个人出生到工作为例,人的五官感知正是多模态模型需要完成的任务,小孩刚出生有自监督学习和父母提供的部分答案的监督学习,到了学校老师提供答案监督学习以及自己的思维扩展自监督学习(而老师提供答案的监督学习,恰恰对应的就是知识蒸馏技术),自监督学习学习到人的常识认知,学校的监督学习学习到的就是不同行业专业的知识。


在过去的十年中,人工智能领域在监督学习范式下取得了重大发展,可以利用机器学习系统解决广泛的计算机视觉问题。然而,监督学习需要大量经过精心标注的数据,数据标注过程常常漫长、昂贵和容易出错。因此,除非你有像 V7 这样的自动注释工具,否则这种方法并不理想。此外,使用监督学习训练的模型在其训练的数据上具有良好的泛化性能,但不能掌握泛化到新的未标记数据分布的“技能”,从而成为深度学习进一步发展的瓶颈。


非监督学习是另一种机器学习范式,它通过各种技术对未标记数据进行解读。自监督学习(Self-Supervised Learning)是一种可以从未标记数据中学习复杂模式的方法。Self-Supervised Learning使得人工智能系统在部署时可以更有效地工作,因为它具有自我训练的能力,因此需要较少的训练时间。自监督学习的一个常见应用是在计算机视觉中,通过学习图像的自然变换、旋转和颜色变化等,可以自动学习图像特征,而无需手动标注。自监督学习也可以与其他学习范式(如监督学习和强化学习)结合使用,以提高模型的性能。


在接下来文章内,您将了解有关自监督学习的一切知识,以及这种方法如何改变我们构建和思考人工智能的方式。我们还将重点介绍一些最令人兴奋的方向和领域,这些方向和领域已经得到了自监督学习的转变。以下是我们将涵盖的内容:


什么是自监督学习

自监督学习的重要性

自监督学习的方法

自监督学习在AIGC时代的应用

自监督学习是一种从未标记数据中学习复杂模式的方法,它通过利用数据本身的内在结构来自我训练。相比于监督学习需要大量标记数据的情况,自监督学习更加具有实际意义。


在计算机视觉领域中,自监督学习通过学习图像的自然变换、旋转和颜色变化等,可以自动学习图像特征,而无需手动标注。此外,自监督学习还可以与其他学习范式(如监督学习和强化学习)结合使用,以提高模型的性能。自监督学习的重要性在于可以解决数据标注的困难和昂贵,使得模型的训练过程更加高效。自监督学习已经在图像和语音处理领域得到广泛应用,例如图像分类、物体检测和语音识别等。自监督学习的发展也为人工智能在未来的应用提供了新的可能性和方向。


什么是自监督学习?


自监督学习(Self-Supervised Learning, SSL)是一种机器学习方法,其模型通过输入未标记的数据,自动生成标签并在后续迭代中将其用作真实标签。该方法的基本思想是通过无监督方式理解提供的未标记数据,生成监督信号,然后在下一次迭代中使用其中高置信度的数据标签,通过反向传播等方法像任何其他监督学习模型一样对模型进行训练。每次迭代使用的数据标签都是不同的。SSL最广泛用于解决计算机视觉问题,如图像分类、目标检测、语义分割或实例分割。


自监督学习与有监督学习和无监督学习的区别


有监督学习的训练数据带有与之相关联的高质量手动标签,以调整模型权重。

自监督学习也需要使用数据及其标签进行模型训练,但标签是由模型本身生成的,并在初始阶段不可用。


无监督学习用于没有可用标签的数据集,该学习范式试图在没有在任何阶段使用标签的情况下理解所提供的数据。


因此,从这个讨论中,我们可以推断出SSL是无监督学习的子集,因为两者都只提供未结构化的数据。但是,无监督学习旨在进行聚类、分组和降维等工作,而SSL像任何有监督模型一样执行分类、分割和回归等决定性任务。


自监督学习的重要性


尽管监督学习在广泛的应用领域中取得了巨大的成功,但是它也存在一些问题。


监督学习非常依赖大量高质量标记的数据,而获取这些数据非常昂贵且耗时。在医学成像等领域,只有专业的医学专业人员才能手动注释数据,这是一个巨大的限制。


此外,监督学习模型在每个数据类别具有数量大致相等的样本时才能发挥最佳效果,类别不平衡会对模型性能产生不利影响。然而,获取稀有类别的足够数据是困难的,例如新发现的野生鸟类数据。


自监督学习消除了对数据标记的需求。自监督学习的概念在自然语言处理(NLP)领域得到了普及,当时它被应用于像BERT这样的transformer模型,用于文本预测、文本主题确定等任务。自监督学习的优点,以下是自监督学习的一些优点:


自监督学习优点


可扩展性


如上所述,监督学习的成功严重依赖于高质量数据标签的数量。此外,超出监督模型训练的类别的新类别在测试时无法进行适配。而自监督学习则可以处理非结构化数据,并能够在大量数据上进行训练


了解人类思维工作原理

有监督学习需要人类注释的标签来训练模型。在这里,计算机通过已经标记的示例学习人类思维方式。但是,正如我们所讨论的,标记如此大量的数据并不总是可行的。

强化学习是另一种方法,其中模型可以在预测调整权重的情况下获得奖励或受到惩罚。但是,在许多实际场景下,这也是不可行的。自我监督学习探索机器独立思考的能力,就像人类一样,通过自动生成标签而不需要在AI环中涉及任何人类。模型本身需要决定生成的标签是否可靠,并相应地在下一次迭代中使用它们来调整其权重。


新的AI能力

自监督学习(Self-Supervised Learning,SSL)最初是在自然语言处理(NLP)领域中使用的。

自那以后,它已经被扩展到解决各种计算机视觉任务,如图像分类、视频帧预测等。目前该领域仍在积极研究,以进一步增强自监督学习的能力,使其可以与监督学习模型一样准确。


自监督学习缺点


自监督学习的缺点包括需要大量的计算能力


在自监督学习中,模型需要理解提供的未标记数据,并生成相应的标签,这比受过监督的学习任务的模型更加负担。当提供带有真实标签的示例时,模型可以更快地训练。例如,在对比学习类型的自监督学习中,每个anchor-正例对(例如同一图像的两个裁剪片段)需要在每个迭代中采样多个anchor-负例对(测试图像的裁剪片段和几个不同的裁剪图像),使训练过程变得更慢。


自监督学习的另一个缺点是准确性较低

自监督学习模型为数据集生成自己的标签,我们没有任何外部支持来帮助模型确定其计算是否正确。因此,不能指望自监督学习模型像传统监督学习模型一样准确。在自监督学习中,如果模型以非常高的置信度分数预测了错误的类别,模型将继续认为该预测是正确的,而不会针对此预测调整权重。


自监督学习有哪些方法


自监督一种通过自动创建标签来进行训练的机器学习方法。


自监督学习的工作方式是利用模型来自动生成数据标签,而不需要人类的干预。在自监督学习中,通常会提供大量未标记的数据,模型需要从这些数据中学习,并自行决定如何生成标签。

常用的自监督学习方法包括能量模型(EBM)和联合嵌入架构。


能量模型(EBM)


能量模型是一种计算两个给定输入之间兼容性的数学函数,当给定两个输入时,如果能量模型产生一个低能量输出,则表示这两个输入具有高度的兼容性。反之,高能量输出则表示两个输入之间不兼容。


例如,在给定两个相同的狗的图像的情况下,能量模型应该产生一个低能量输出,而在给定一张狗和一张猫的图像时,能量模型应该产生一个高能量输出。


联合嵌入架构


联合嵌入架构一个由两个分支网络构成的模型,每个分支网络的结构都是相同的。


输入两个样本,模型将分别为它们计算嵌入向量。接着,模型的头部模块将这两个嵌入向量作为输入,计算它们在潜空间中的距离。

f1d0a17652af49ee8562deab0a830a85.png


因此,当两个输入彼此相似时(狗图像的两个增强版本),计算的距离应该很小。可以容易地调整网络参数,以确保潜在空间中的输入彼此接近。


对比学习(Contrastive Learning)


对比这种方法中,我们使用“锚点”(anchor)来对比正样本和负样本。

正样本指的是与锚点具有相同分布的样本,而负样本则是分布不同于锚点的样本。


1687316892344.png

对比预测编码(CPC)


是对比学习方法里的一种方法,通过丢弃低级别的信息和噪声,学习编码不同数据部分之间的共享信息。这种方法的灵感来源于这篇论文:Representation Learning with Contrastive Predictive Coding


例如,给定一张图片的上半部分,模型需要预测出下半部分。

1687316929948.png

实例判别法


这类方法采用了对比学习的一般思想,针对整个数据实例(比如整张图片)进行学习。


例如,同一只狗的两个旋转或翻转版本可以作为anchor-正样本对,而一只猫的旋转/翻转版本可以作为负样本。


现在,类似于基本原则,需要最小化锚-正样本对之间的距离,同时最大化锚-负样本对之间的距离。


这种技术背后的主要思想是,经过基本数据转换的输入仍应属于同一类别,即深度学习模型应该对转换具有不变性。一张狗的图片,当它被垂直翻转并转换为灰度图像时,仍表示“狗”的类别。在这类方法中,会随机选择一张图像,对其进行随机数据变换(如翻转、裁剪、加噪声等),从而创建正样本。现在,从数据集中选取若干其他图像作为负样本,并设计一个类似于CPC的损失函数,以最大化锚-负样本对之间的距离。


这个类别下常用的两种方法是SimCLRMoCo,它们在处理负样本方面有所不同


对比聚类分配


对比聚类分配是一种新兴的自监督学习方法。在2020年,一篇论文提出了SwAV (Swapping Assignments between multiple Views)模型,用于比较聚类分配以对比不同的图像视图,同时不依赖于显式的成对特征比较。


![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/0a8fcc9f8496473aaf0d33d618d611a0.png 600x200)

该方法的目标是在线学习视觉特征而不需要监督。为此,作者提出了一种基于在线聚类的自监督方法。传统的基于聚类的方法是离线的,因为它们在图像特征被聚类的步骤和在不同的图像视图上预测聚类分配(即“代码”)的训练步骤之间交替进行。不幸的是,这些方法不适合在线学习,因为它们需要多次通过数据集来计算聚类所需的图像特征。在SwAV中,作者通过不同图像增强的代码之间的一致性来实现代码的在线聚类。这个解决方案受到对比实例学习的启发,因为这些代码不被视为目标,而仅用于在同一图像的不同视图之间强制实施一致的映射。SwAV可以被解释为一种比较多个图像视图之间聚类分配而不是它们的特征的方法。因此,这种方法可以扩展到潜在的无限数据量


非对比度学习


非对比度学习是一种学习范式,只使用正样本对来训练模型,不像对比度学习那样同时使用正负样本对。这种方法似乎有些反直觉,因为只尝试最小化正样本对之间的距离可能会导致恒定的解。


然而,非对比度学习已经被证明可以使用额外的预测器和停止梯度操作来学习非平凡的表示,而且学到的表示在下游任务中表现相当(甚至更好)。


这引出了两个基本问题:(1)为什么学习到的表示不会崩溃为平凡的(即恒定的)解,(2)没有负样本,NC-SSL从训练中学到了什么表示,以及学到的表示如何降低下游任务的样本复杂度。


为了回答第一个问题,在NC-SSL中提出了不同的技术来避免崩溃。BYOL和SimSiam使用额外的预测器和停止梯度操作。除此之外,BatchNorm(包括其变体)、去相关性、白化、居中和在线聚类等都是实施隐式对比度约束以防止崩溃的有效方法。


Wang等人在这篇论文中寻找第二个问题的答案,他们证明在线性网络设置中可以学习到理想的投影矩阵,并减少下游任务的样本复杂度。此外,他们的分析强调了NC-SSL中权重衰减的重要作用,该方法丢弃在数据增强下具有高方差的特征并保留不变的特征。


自监督学习在AIGC时代下的应用


自监督学习是一种无需人工标注数据即可训练模型的机器学习方法。它可以应用于各种场景,尤其在AIGC(人工智能、大数据、云计算)时代下,它的应用得到了广泛的关注和应用。下面是自监督学习在AIGC时代下的一些应用:


语言模型:语言模型是指训练机器生成文本的模型,自监督学习可以用于训练语言模型。例如,利用自监督学习训练的GPT-3模型可以生成自然语言文本,从而应用于自然语言处理任务。

计算机视觉:自监督学习可以用于训练计算机视觉模型。例如,利用自监督学习训练的模型可以识别图片中的物体、人脸等特征,并实现图像搜索、人脸识别等功能。

推荐系统:自监督学习可以用于训练推荐系统模型,例如电商平台中的商品推荐系统、新闻推荐系统等。通过自监督学习训练模型,可以挖掘用户的兴趣和偏好,从而提高推荐系统的准确度。

强化学习:自监督学习可以用于训练强化学习模型,例如通过自监督学习训练的AlphaGo模型,可以在围棋比赛中战胜世界顶尖选手,展示了自监督学习在强化学习中的巨大潜力。

无监督学习:自监督学习是一种无监督学习方法,可以用于训练各种无监督学习模型,例如聚类、异常检测等。

相关文章
|
6月前
|
机器学习/深度学习 自然语言处理 数据挖掘
【论文精读】TNNLS 2022 - 基于深度学习的事件抽取研究综述
【论文精读】TNNLS 2022 - 基于深度学习的事件抽取研究综述
|
1月前
|
机器学习/深度学习 传感器 算法
机器学习入门(一):机器学习分类 | 监督学习 强化学习概念
机器学习入门(一):机器学习分类 | 监督学习 强化学习概念
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】机器学习、深度学习、强化学习和迁移学习简介、相互对比、区别与联系。
机器学习、深度学习、强化学习和迁移学习都是人工智能领域的子领域,它们之间有一定的联系和区别。下面分别对这四个概念进行解析,并给出相互对比、区别与联系以及应用场景案例分析。
87 1
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】Chameleon多模态模型探究
【机器学习】Chameleon多模态模型探究
225 5
|
5月前
|
机器学习/深度学习 人工智能 算法
机器学习算法综述
机器学习算法综述
105 1
|
5月前
|
机器学习/深度学习 数据采集 运维
无监督学习是机器学习的一种重要方法
无监督学习是机器学习的一种重要方法
|
6月前
|
机器学习/深度学习 人工智能 运维
|
6月前
|
机器学习/深度学习 人工智能 数据挖掘
【AI 生成式】半监督学习和自监督学习的概念
【5月更文挑战第4天】【AI 生成式】半监督学习和自监督学习的概念
|
6月前
|
机器学习/深度学习 自然语言处理 算法
【机器学习】生成对抗网络(GAN)应用领域分析
【1月更文挑战第27天】【机器学习】生成对抗网络(GAN)应用领域分析
|
机器学习/深度学习 人工智能 算法
【人工智能】机器学习入门之监督学习(一)有监督学习
定义:利用已知类别的样本,训练学习得到一个最优模型,使其达到所要求性能,再利用这个训练所得模型,将所有的输入映射为相应的输出,对输出进行简单的判断,从而实现分类的目的,即可以对未知数据进行分类。 监督学习分为:有监督学习,无监督学习,半监督学习
114 0