自我学习

自我学习(Self-Taught Learning)是迁移学习的一种重要范式,它利用大量无标注数据通过无监督或自监督学习方式预训练模型,然后将学到的特征表示迁移到下游监督任务中。

核心思想

自我学习的核心假设是,即使无标注数据与目标任务的数据来自不同的分布,从无标注数据中学习到的底层特征表示(如边缘、纹理、形状等基本模式)对目标任务仍然具有重要的参考价值。通过在大规模无标注数据上进行预训练,模型可以学习到通用且可迁移的特征表示。

学习框架

自我学习通常包含两个阶段:

第一阶段:无监督预训练

在大规模无标注数据集上训练一个特征提取器,学习数据内在的结构和模式。常用的预训练方法包括:

  • 自编码器(Autoencoder):通过重建输入学习紧凑的隐层表示。编码器将输入压缩为低维表示,解码器从中重建原始输入。
  • 稀疏编码(Sparse Coding):学习一组过完备基函数,使得每个输入可以由少数基函数的线性组合近似表示。
  • 受限玻尔兹曼机(RBM):通过对比散度算法学习输入数据的概率分布。
  • 对比学习(Contrastive Learning):通过最大化正样本对之间的相似度、最小化负样本对之间的相似度来学习判别性表示。

第二阶段:监督微调

将预训练好的特征提取器(或部分层)迁移到目标任务上,结合少量标注数据进行微调。通常的做法是移除预训练模型的输出层,添加一个与目标任务匹配的新输出层,然后对整个网络或部分层进行微调。

与自监督学习的关系

自我学习与近年来流行的自监督学习(Self-Supervised Learning)关系密切。自监督学习是自我学习的一种现代实现方式,通过设计巧妙的预训练任务(如掩码语言建模、图像旋转预测、对比预测编码)从未标注数据中学习丰富的特征表示。

优势

  • 数据利用率高:充分利用海量无标注数据,降低对人工标注的依赖。
  • 特征迁移性强:预训练阶段学到的通用特征可以迁移到各种不同的下游任务。
  • 抗过拟合能力:预训练提供了良好的参数初始化,使得在少量标注数据上训练时不易过拟合。
  • 计算效率:预训练只需进行一次,可以供多个下游任务共享使用。

典型应用

自我学习在深度学习的各个领域都有广泛应用。典型的成功案例包括:

  • BERT:通过掩码语言模型和下一句预测进行预训练,然后微调至各类 NLP 任务。
  • GPT 系列:通过自回归语言建模进行预训练,通过提示工程或微调适配下游任务。
  • SimCLR、MoCo:通过对比学习进行视觉表示预训练,微调至图像分类、目标检测等任务。

链接到