自我监督学习:它是什么以及它如何运作

已发表: 2024-07-18

自我监督学习是人工智能领域的一项前沿技术,它使机器能够发现数据中的内在模式和结构,模仿人类从上下文和经验中学习的能力,而不是通过明确的指令进行学习。

目录

  • 什么是自我监督学习?
  • 与其他机器学习类型相比,自我监督
  • 自我监督学习如何运作
  • 自我监督学习的类型
  • 自我监督学习的应用
  • 自监督学习的优点
  • 自我监督学习的缺点

什么是自我监督学习?

自监督学习是机器学习 (ML) 的一种,它使用原始的、未标记的数据来训练模型创建自己的标签,即显式配对的输入和输出。与需要大量标记数据的监督学习不同,自监督学习从数据本身生成伪标签(人工标签)。该技术为模型提供了监督学习方法的目标导向和可测量性,以及无监督学习从大量未标记数据中得出有用结论的能力。

机器学习是人工智能 (AI) 的一个子集,它使用数据和统计方法来构建模仿人类推理的模型,而不是依赖于硬编码指令。自监督学习利用大量可用的未标记数据,使其成为一种以最少的手动干预来提高模型性能的强大方法。事实上,当今主要的生成式人工智能文本和图像模型很大程度上是使用自我监督学习进行训练的。

使用 Grammarly 更智能地工作
任何有工作要做的人的人工智能写作伙伴

与其他机器学习类型相比,自我监督

自监督学习结合了监督学习和无监督学习的元素,但与半监督学习不同:

  • 监督学习使用标记数据来训练模型以执行特定任务,例如分类和回归。这些标签提供了明确的指导,使模型能够做出准确的预测。常见应用包括垃圾邮件检测、图像分类和天气预报。
  • 无监督学习使用未标记的数据来查找模式和分组。它识别集群和关联并降低数据复杂性以便于处理。示例包括客户细分、推荐系统和异常检测。
  • 半监督学习:使用适量的标记数据来提供初步指导,然后利用一个或多个更大的未标记数据集合来细化和改进模型。当您有一些标记数据,但生成足够的完全监督学习所需的数据会非常困难或昂贵,这种方法特别有用。
  • 自监督学习:使用原始数据生成自己的标签,允许模型在没有任何初始标记数据的情况下从数据中学习。当标记数据根本不可用或仅占可用数据的一小部分时,例如自然语言处理 (NLP) 或图像识别,这种方法尤其有价值。

自我监督学习如何运作

自我监督意味着数据本身提供了正确的答案。自监督学习过程涉及几个步骤,结合了监督和无监督方法的各个方面:

数据收集:收集大量原始、未标记的数据。这些数据构成了创建伪标签和训练模型的基础。许多数据集都是免费提供的。

  1. 预处理:准备数据以确保质量。此步骤包括删除重复项、处理缺失值以及标准化数据范围。
  2. 任务创建:为模型创建要解决的谜题,称为借口任务。这些是通过删除或打乱部分数据来创建的,例如删除单词、删除图像像素或打乱视频帧。在这种故意破坏之前存在的任何东西都被称为伪标签:从数据本身而不是人类标签创建的“正确答案”。
  3. 训练:使用生成的伪标签在借口任务上训练模型。这意味着模型尝试生成正确的答案,将其答案与伪标签进行比较,进行调整,然后再次尝试生成正确的答案。此阶段帮助模型理解数据内的关系,并最终创建对输入和输出之间关系的复杂理解。
  4. 微调:切换模型以从较小的标记数据集中学习,以提高其在特定任务上的性能。此步骤确保模型利用在初始训练阶段学到的表示。微调并不是绝对必要的,但它通常会带来更好的结果。
  5. 评估:评估模型在尚未见过的数据上的性能。使用与任务相关的标准指标(例如 F1 分数),此评估可确保模型能够很好地推广到新数据。
  6. 部署和监控:在实际应用中部署经过训练的模型并持续监控其性能。根据需要使用新数据更新模型,以保持其准确性和相关性。

自我监督学习的类型

自我监督学习涵盖多种类型,每种类型都有多种技术和方法。在这里,我们将探讨几种类型,重点介绍它们独特的训练方法,并为每种类型提供一到两个代表性示例。

对于图像

  • 自我预测学习:自我预测学习涉及自动编码等技术,其中模型学习将信息压缩为更简单的形式,然后从中重新创建原始数据。在图像处理中,这通常意味着有选择地破坏图像的某些部分(例如,通过屏蔽部分)并训练模型以重建原始图像。这有助于模型更好地识别不同位置、大小甚至部分隐藏的物体。
  • 对比学习:在对比学习中,模型通过成对或成组比较来学习区分相似和不同的图像。例如,SimCLR 方法使用图像增强(如裁剪、扭曲和翻转)来创建训练对。正对是通过对同一图像应用不同的变化而形成的,而负对来自不同的图像。然后,模型学习相似对中的共同特征以及不同对中的不同特征。
  • 基于聚类的方法:基于聚类的方法将相似的数据点分组在一起,并使用这些聚类作为训练的伪标签。例如,DeepCluster 通过相似的特征对图像进行聚类,并使用这些聚类来训练模型。该过程在聚类和训练之间交替进行,直到模型表现良好。 SwAV(视图之间交换分配)通过使用同一图像的多个版本来增强这一点,帮助模型学习保持不变的基本特征,例如边缘、纹理和对象位置。

对于文本

  • 自我预测学习:这是大型语言模型(LLM)的核心训练机制,它将文本理解为一系列标记。这些通常代表一个单词,但有时代表一个单词的一部分或一组单词。
    • 掩码语言模型 (MLM):这些模型显示缺少一些标记的句子,并负责预测丢失的单词。通过学习如何填补这些空白,MLM 可以全面地表示语言结构和上下文,并且他们可以在进行预测时考虑整个输入的上下文。有用的输出,例如情感分析或命名实体识别,是通过微调开发的。一个典型的例子是 BERT,谷歌用它来理解搜索查询的意图。
    • 因果语言模型 (CLM): ChatGPT、Claude 和 Gemini 等生成模型通过根据之前的标记一次预测一个单词来学习重新创建他们所看到的文本。经过训练后,他们会将输入文本视为预测的上下文,并继续使用生成的每个新标记进行预测。这种顺序预测就是为什么它们的输出看起来像是自行输入而不是同时出现。
  • 对比学习:这种方法比较成对的文本样本,强调它们之间的差异和相似之处。 SimCSE 通过应用 dropout 创建同一句子的两个略有不同的版本,它在训练过程中随机忽略隐藏层中句子表示的部分内容(有关隐藏层的更多信息,请参阅我们关于深度学习的文章)。该模型学会将这些版本识别为相似的。这项技术提高了模型理解和比较句子的能力,使其对于查找相似句子或检索搜索查询的相关信息等应用非常有用。
  • 下一句预测(NSP):顾名思义,NSP 涉及预测给定句子是否是文档中另一个句子的后续句子,帮助模型理解句子之间的关系和文本的逻辑流。它通常与传销一起使用,以增强对较大文本体的理解。例如,在BERT NSP中,模型预测两个句子在原始文本中是否连续出现。

自我监督学习的应用

自监督学习在各个领域都有广泛的应用:

  • 自然语言处理: BERT 和 GPT-3 等模型使用自我监督学习来理解和生成聊天机器人、翻译和文本摘要等应用中的人类语言。
  • 计算机视觉:自我监督学习通过从原始视觉数据生成伪标签来改进图像和视频分析。用途包括物体检测(例如门铃摄像头)、面部识别以及自动从较长视频创建剪辑。
  • 语音识别:自监督模型通过学习大量未标记的音频数据来改进语音识别系统。这种方法减少了手动转录的需要,并提高了不同口音和方言的准确性。
  • 医疗保健:自我监督学习通过利用带有最少标记示例的大型数据集,有助于改进医学图像分析、药物发现和患者监测。它提高了疾病检测和治疗建议的准确性,而无需大量且昂贵的专家人工标记。
  • 机器人技术:机器人使用自我监督学习来了解其环境并改进其决策过程。用途包括自主导航、物体操纵和人机交互。

自监督学习的优点

  • 经济高效:减少对大量标记数据的需求,降低注释成本和人力。
  • 可扩展性:可以处理大型数据集,使其适合标记数据有限但未标记数据丰富的实际应用。
  • 泛化:当接受足够的原始数据训练时,模型可以学习足够的知识来执行新任务,即使它没有接受直接相关数据的训练。例如,基于一种语言的 NLP 模型可用于增强基于另一种语言的 NLP 模型的学习。
  • 灵活性:适用于各种任务和领域,有许多子类型可满足特定需求。

自我监督学习的缺点

  • 复杂性:创建有效的借口任务并生成伪标签需要仔细的设计和实验。
  • 噪声敏感性:从原始数据生成的伪标签可能与目标无关,可能会因为给模型提供太多不必要的输入来处理而影响性能。
  • 计算资源:训练自监督模型,尤其是使用大型数据集,需要大量的计算能力和时间。