自监督学习中的无监督前置任务(pretext task)是一种方法,模型通过解决从无标注数据创建的人工任务来学习有用的数据表示。与依赖人工标注标签的监督学习不同,自监督学习通过利用数据固有的结构生成自己的“标签”。前置任务旨在迫使模型捕获数据中的模式或关系,这些模式或关系可以随后迁移到下游任务,例如分类或目标检测。其目标是通过在这些任务上预训练模型,使其学习通用特征,而无需人工标注。
一个常见的前置任务示例是预测图像的旋转角度。假设你有一个无标注的图像数据集,并将每张图像旋转一个随机角度(例如 0°、90°、180°、270°)。然后训练模型预测每张图像应用的旋转角度。为了解决这个问题,模型必须学习诸如对象方向、边缘和空间关系等特征,这些特征对于图像识别等任务非常有价值。另一个例子是掩码语言建模,用于像 BERT 这样的模型中,其中文本序列的部分被隐藏,模型根据上下文预测缺失的词语。这些任务是无监督的,因为“标签”(旋转角度或缺失的词语)直接来源于数据本身。
前置任务之所以有效,是因为它们鼓励模型学习可迁移的表示。例如,在计算机视觉中,训练模型重建图像缺失部分(图像修复)可以教会模型理解纹理和对象形状。在音频处理中,预测两个音频片段在时间上是否相邻有助于模型学习时间依赖性。开发者可以设计适合其数据类型和领域的前置任务——例如,预测视频数据中的未来帧,或识别两个图像块是否属于同一对象。虽然前置任务本身可能无法解决实际问题,但学到的特征可以用少量标注数据进行微调,以用于特定应用,从而减少对大型标注数据集的依赖。