半监督学习:它是什么以及它是如何工作的

已发表: 2024-07-18

在机器学习领域,半监督学习作为一种巧妙的混合方法出现,通过利用标记和未标记数据来训练更强大和更高效的模型,从而弥合监督和无监督方法之间的差距。

目录

  • 什么是半监督学习?
  • 半监督学习与监督和无监督学习
  • 半监督学习如何运作
  • 半监督学习的类型
  • 半监督学习的应用
  • 半监督学习的优点
  • 半监督学习的缺点

什么是半监督学习?

半监督学习是机器学习 (ML) 的一种,它使用标记和未标记数据的组合来训练模型。 半监督意味着模型接收来自少量标记数据的指导,其中输入与正确的输出明确配对,再加上更大的未标记数据池(通常更丰富)。 这些模型通常在少量标记数据中找到初步见解,然后使用更大的未标记数据池进一步完善其理解和准确性。

机器学习是人工智能 (AI) 的一个子集,它使用数据和统计方法来构建模仿人类推理的模型,而不是依赖于硬编码指令。 利用监督和无监督方法的要素,半监督是一种独特且强大的方法,可以提高预测质量,而无需在人工标记上进行繁重的投资。

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

半监督学习与监督和无监督学习

监督学习仅依赖于标记数据,而无监督学习则适用于完全未标记的数据,而半监督学习则将两者融合在一起。

监督学习

监督学习使用标记数据来训练特定任务的模型。 两种主要类型是:

  • 分类:确定项目属于哪个类别或组。这可以是二元选择、多个选项中的选择或多个组的成员资格。
  • 回归:根据现有数据的最佳拟合线预测结果。 通常用于预测,例如预测天气或财务业绩。

无监督学习

无监督学习通过三种主要技术识别未标记数据中的模式和结构:

  • 聚类:定义具有相似值的点组。这些可以是排他的(每个数据点恰好位于一个集群中)、重叠的(一个或多个集群中的成员资格程度)或分层的(多层集群)。
  • 关联:查找哪些项目更有可能同时出现,例如经常一起购买的产品。
  • 降维:通过将数据压缩为更少的变量来简化数据集,从而减少处理时间并提高模型的泛化能力。

半监督学习

半监督学习利用标记和未标记数据来提高模型性能。 当标记数据昂贵或耗时时,这种方法特别有用。

当您拥有少量标记数据和大量未标记数据时,这种类型的机器学习是理想的选择。 通过识别哪些未标记点与标记点密切匹配,半监督模型可以创建更细致的分类边界或回归模型,从而提高准确性和性能。

半监督学习如何运作

半监督学习过程涉及几个步骤,结合了监督和无监督学习方法的元素:

  1. 数据收集和标记:收集包含一小部分标记数据和大部分未标记数据的数据集。两个数据集应具有相同的特征,也称为列或属性。
  2. 预处理和特征提取:清理和预处理数据,为模型提供最佳的学习基础:抽查以确保质量、删除重复项并删除不必要的特征。考虑创建新特征,将重要特征转换为有意义的范围,以反映数据变化(例如,将出生日期转换为年龄),这一过程称为提取。
  3. 初始监督学习:使用标记数据训练模型。这个初始阶段有助于模型理解输入和输出之间的关系。
  4. 无监督学习:将无监督学习技术应用于未标记的数据以识别模式、集群或结构。
  5. 模型细化:结合来自标记和未标记数据的见解来细化模型。此步骤通常涉及迭代训练和调整以提高准确性。
  6. 评估和调整:使用标准监督学习指标(例如准确度、精确度、召回率和 F1 分数)评估模型的性能。通过调整显式指令(称为超参数)并重新评估来微调模型,直到实现最佳性能。
  7. 部署和监控:部署模型以供实际使用,持续监控其性能,并根据需要使用新数据进行更新。

半监督学习的类型

半监督学习可以使用多种技术来实现,每种技术都利用标记和未标记的数据来改进学习过程。 以下是主要类型以及子类型和关键概念:

自我训练

自我训练,也称为自我学习或自我标记,是最直接的方法。 在该技术中,最初在标记数据上训练的模型预测未标记数据的标签并记录其置信度。 该模型通过将其最可信的预测应用为附加标记数据来迭代地重新训练自己 - 这些生成的标签称为伪标签。 这个过程一直持续到模型的性能稳定或充分改善为止。

  • 初始训练:模型在小型标记数据集上进行训练。
  • 标签预测:经过训练的模型预测未标记数据的标签。
  • 置信度阈值:仅选择高于特定置信度的预测。
  • 重新训练:将选定的伪标记数据添加到训练集中,重新训练模型。

这种方法简单但功能强大,特别是当模型可以在早期做出准确的预测时。 然而,如果最初的预测不正确,它很容易会加剧自己的错误。 使用聚类来帮助验证伪标签与数据中的自然分组是否一致。

联合培训

协同训练通常用于分类问题,涉及在不同视图或数据子集上训练两个或多个模型。 每个模型对未标记数据最有信心的预测都会增强另一个模型的训练集。 该技术利用多个模型的多样性来改善学习。

  • 双视图方法:数据集分为两个不同的视图,即原始数据的子集,每个视图包含不同的特征。两个新视图中的每一个都具有相同的标签,但理想情况下,这两个视图是有条件独立的,这意味着了解一个表中的值不会为您提供有关另一个表中的任何信息。
  • 模型训练:使用标记数据在每个视图上单独训练两个模型。
  • 相互标记:每个模型都会预测未标记数据的标签,并且最佳预测(所有高于特定置信度阈值的预测或只是列表顶部的固定数字)用于重新训练另一个模型。

当数据适合提供补充信息的多个视图(例如与同一患者配对的医学图像和临床数据)时,协同训练特别有用。 在此示例中,一个模型将根据图像预测疾病的发病率,而另一个模型将根据医疗记录中的数据进行预测。

这种方法有助于降低强化错误预测的风险,因为这两个模型可以相互纠正。

生成模型

生成模型学习给定输入和输出对同时发生的可能性,称为联合概率分布。 这种方法使他们能够生成类似于已经看到的数据的新数据。 这些模型使用标记和未标记数据来捕获底层数据分布并改进学习过程。 正如您可能从名称中猜到的那样,这是可以创建文本、图像等的生成式人工智能的基础。

  • 生成对抗网络(GAN): GAN 由两个模型组成:生成器和鉴别器。生成器创建合成数据点,而鉴别器尝试区分这些合成数据点和真实数据。 在训练过程中,生成器提高了创建真实数据的能力,而鉴别器则更擅长识别虚假数据。 这种对抗过程仍在继续,每个模型都努力超越另一个模型。 GAN 可以通过两种方式应用于半监督学习:
    • 改进的判别器:判别器不是简单地将数据分类为“假”或“真”,而是经过训练将数据分类为多个类别和一个假类别。这使得鉴别器能够进行分类和鉴别。
    • 使用未标记的数据:鉴别器判断输入是否与它所看到的标记数据匹配,或者是来自生成器的虚假数据点。这一额外的挑战迫使鉴别器通过未标记数据与标记数据的相似性来识别未标记数据,帮助它学习使它们相似的特征。
  • 变分自动编码器 (VAE): VAE 找出如何将数据编码为更简单、抽象的表示形式,并可以将其解码为尽可能接近原始数据的表示形式。通过使用标记和未标记数据,VAE 创建了一个单一的抽象,可以捕获整个数据集的基本特征,从而提高其在新数据上的性能。

生成模型是半监督学习的强大工具,特别是对于丰富而复杂的未标记数据,例如语言翻译或图像识别。 当然,您需要一些标签,以便 GAN 或 VAE 知道目标是什么。

基于图的方法

基于图的方法将数据点表示为图上的节点,使用不同的方法来理解和提取有关它们之间关系的有用信息。 应用于半监督学习的许多基于图的方法包括:

  • 标签传播:一种相对简单的方法,其中称为边缘的数值表示附近节点之间的相似性。在模型的第一次运行中,与标记点具有最强边缘的未标记点借用该点的标签。 随着越来越多的点被标记,该过程会重复,直到所有点都被标记。
  • 图神经网络 (GNN):使用训练神经网络的技术(例如注意力和卷积),将标记数据点的学习应用到未标记的数据点,特别是在社交网络和基因分析等高度复杂的情况下。
  • 图形自动编码器:与 VAE 类似,它们创建一个捕获标记和未标记数据的抽象表示。 这种方法通常用于查找缺失的链接,这些链接是图中未捕获的潜在连接。

基于图的方法对于自然形成网络或具有内在关系的复杂数据特别有效,例如社交网络、生物网络和推荐系统。

半监督学习的应用

半监督学习的众多应用包括:

  • 文本分类:当您拥有大量可用数据(例如数百万条产品评论或数十亿封电子邮件)时,您只需标记其中的一小部分即可。半监督方法将使用剩余的数据来完善模型。
  • 医学图像分析:医学专家的时间非常昂贵,而且并不总是准确的。用许多未标记的图像来补充对 MRI 或 X 射线等图像的分析可以产生等于甚至超过其准确性的模型。
  • 语音识别:手动转录语音是一个乏味且费力的过程,尤其是当您试图捕捉各种方言和口音时。将标记的语音数据与大量未标记的音频相结合将提高模型准确辨别所说内容的能力。
  • 欺诈检测:首先,在一小部分标记交易上训练模型,识别已知的欺诈和合法案例。然后添加更多未标记的交易,使模型暴露于可疑模式和异常情况,从而增强其识别金融系统中新的或不断演变的欺诈活动的能力。
  • 客户细分:半监督学习可以通过使用小型标记数据集根据某些模式和人口统计数据定义初始细分,然后添加更大的未标记数据池来细化和扩展这些类别,从而提高精度。

半监督学习的优点

  • 成本效益:半监督学习减少了对大量标记数据的需求,降低了标记成本和工作量以及人为错误和偏见的影响。
  • 改进的预测:与纯粹的监督学习相比,结合标记和未标记的数据通常会带来更好的预测质量,因为它为模型提供了更多的数据可供学习。
  • 可扩展性:半监督学习非常适合现实世界的应用程序,在这些应用程序中,彻底的标记是不切实际的,例如数十亿潜在的欺诈交易,因为它可以用最少的标记数据处理大型数据集。
  • 灵活性:结合监督学习和无监督学习的优势,使这种方法适用于许多任务和领域。

半监督学习的缺点

  • 复杂性:集成标记和未标记数据通常需要复杂的预处理技术,例如标准化数据范围、估算缺失值和降维。
  • 假设依赖:半监督方法通常依赖于有关数据分布的假设,例如同一簇中的数据点具有相同的标签,但这可能并不总是成立。
  • 潜在的噪音:如果未使用异常值检测和针对标记数据进行验证等技术进行正确处理,则未标记的数据可能会引入噪音和不准确性。
  • 更难评估:如果没有太多标记数据,您将无法从标准监督学习评估方法中获得太多有用的信息。