术语表

半监督学习

了解半监督学习如何结合已标记和未标记数据来增强人工智能模型、降低标记成本并提高准确性。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

半监督学习(SSL)是一种介于监督学习无监督学习之间的机器学习(ML)技术。它结合使用少量标注数据和大量未标注数据来训练模型。SSL 背后的主要动机是,数据标注通常成本高、工作量大,尤其是在复杂领域。通过利用现成的非标记数据,SSL 旨在提高模型性能和泛化能力,超越仅使用有限的标记数据所能达到的效果。

半监督学习的工作原理

半监督学习(Semi-Supervised Learning)的核心原理是,未标记的数据尽管没有明确的标签,但却包含了有关数据底层结构和分布的宝贵信息。半监督学习算法试图利用这种结构来加强学习过程。常见的方法通常涉及对数据进行假设,如 "聚类假设"(同一聚类中的点可能具有相同的标签)或 "流形假设"(数据点位于较低维度的流形上)。

SSL 中使用的技术包括伪标签等方法,即使用在初始标签数据上训练的模型来预测未标签数据的标签。高置信度的预测结果会被视为 "伪标签",并添加到训练集中。另一种方法涉及一致性正则化,即鼓励模型对同一未标记输入的扰动版本产生类似的输出,通常通过数据增强等技术来实现。这些方法有助于模型利用大量未标注数据集学习更强大的特征。您可以在 Towards Data Science 上找到很好的SSL 概述

应用与实例

半监督学习在获取标记数据成为瓶颈的情况下尤其有用。一些关键应用领域包括

  • 图像分类训练一个模型来对图像进行分类(例如,使用CIFAR-10 等数据集),在这种情况下,只有一小部分图像是人工标注的,而数百万张未标注的图像可从网络上获取。
  • 医学图像分析通过在少量专家标注的医学扫描图像和大量未标注的扫描图像上进行训练,改进诊断模型。这可以提高肿瘤检测等任务的效率。
  • 网页分类:利用一小部分人工分类的网页和大量从互联网上搜索到的未分类网页对网页进行分类。请参阅早期的网页内容分类研究范例
  • 语音识别利用有限的转录音频数据和大量未转录语音构建系统。
  • 自然语言处理(NLP)通过利用大型非标注文本库和较小的标注数据集,加强情感分析或文本分类等任务。

与相关概念的区别

必须将半监督学习与相关的 ML 范式区分开来:

  • 监督学习完全依赖完全标记的数据进行训练。SSL 同时使用有标签和无标签数据。
  • 无监督学习只使用无标记数据,通常用于聚类或降维等任务,不预测预定义标签。无监督学习使用无标签数据来改进有监督任务。
  • 自我监督学习同样是使用无标签数据,但它会数据本身生成监督信号(例如,预测屏蔽词、为图像着色)。它通常用于预训练模型,然后在标注数据上进行微调,而自监督学习通常在主要训练阶段同时使用两种数据类型。

半监督学习的优势

  • 降低标记成本:大大降低了昂贵而耗时的人工数据标注需求。
  • 提高准确性通过利用未标记数据中的信息,与仅在小型标记数据集上进行训练相比,可提高模型的准确性。
  • 增强泛化能力:通过学习底层数据结构,使用 SSL 训练的模型通常能更好地泛化到新的、未见过的数据中。
  • 利用丰富的数据:有效利用许多实际应用中的大量非标记数据。

半监督学习(Semi-Supervised Learning)为构建有效的人工智能(AI)系统提供了一种实用而强大的方法,尤其是在计算机视觉任务(如物体检测)中,因为在这些任务中存在大量未标记的图像或视频。Ultralytics HUB等平台可帮助管理数据集,这些数据集可能包括用于训练模型的标记数据和非标记数据的混合数据,例如 Ultralytics YOLO.探索 SSL 技术对于面临标签数据可用性限制的项目来说至关重要,Google 人工智能博客中关于 SSL 的文章就强调了这一点。

阅读全部