一、预训练模型
预训练模型:是指在大规模数据集上进行预先训练的模型。这个预先训练的模型是一个通用的模型,即包含了通用的特征和知识。在之后任务中微调这个通用模型(主要为调整参数),实现了将预训练学习到的模型知识迁移到新任务中。
预训练通常分为两个阶段:无监督预训练和有监督微调。
无监督预训练阶段:模型被训练在一个大规模、无标签的数据集上,来学习模型的特征表示
有监督微调阶段:用带有标签的数据集再次输入模型进行微调参数,来适用具体的任务。
二、直接训练模型
直接训练模型:是指在特定任务上使用所需的数据集进行训练,这个直接训练的模型是一个特定的模型,即针对特定任务、特定数据集训练出的模型。
三、预训练与直接训练的区别
区别:(主要区别涉及目标、数据集和后续使用)
- 目标不同
- 预训练目标是训练出(学习出)一个通用的特征表示
- 直接训练目标是直接优化模型在特定任务上的性能
- 数据集不同
- 预训练通常是在大规模未标记的数据集上进行训练
- 直接训练通常是在特定的标记数据集上进行训练
- 后续使用
- 预训练出的模型是一个通用模型,常迁移到后续新任务中
- 直接训练出的模型是一个特定模型,只是针对特定任务,一般不会迁移到后续新任务中,而且也不好迁移
适用场景:
预训练能够提高模型的泛化能力和鲁棒性,适用于数据集较小且任务变化频繁的情况
直接训练通常能获得更好的性能,适用于数据集充足且固定的任务上。