共计 702 个字符,预计需要花费 2 分钟才能阅读完成。
出现这篇文章也是最近回顾transformer ,看到了这两个词,其实道理很简单,只不过自己一直叫法跟这个不同。我一直都是在用后者,无非就是要不要冻住base 模型参数,冻住那就是Feature based,否则是后者。
1. Feature-based(特征提取范式)
- 定义:使用预训练模型提取特征,但不更新其参数。然后用这些固定的特征训练一个新的模型(如分类器)来完成下游任务。
-
过程:
- 输入数据 → 预训练模型 → 得到中间或最终层的向量表示(feature)
-
把这个向量作为输入喂给一个简单的模型(如逻辑回归、SVM、MLP等)
-
优点:
- 快速、计算效率高
-
不需要大量资源,适合小数据集和快速实验
-
缺点:
- 没有针对具体任务优化预训练模型的表达能力,性能可能不如fine-tuning
2. Fine-tuning(微调范式)
- 定义:在预训练模型的基础上,对模型的参数进行进一步训练以适应特定的下游任务。
-
过程:
- 输入数据 → 预训练模型(继续训练,参数可更新) → 任务输出(如分类、翻译等)
- 优点:
- 表达能力强,通常效果比feature-based更好
-
可以更好适应具体任务的需求
-
缺点:
-
需要更多计算资源
-
易过拟合,尤其在数据量较小时
-
示例对比(以BERT为例):
方式 | 操作 | 参数是否可训练 | 使用场景 |
---|---|---|---|
Feature-based | 使用BERT提取文本的CLS向量,输入到逻辑回归模型中 | 否 | 快速构建、资源受限、小数据集 |
Fine-tuning | 在BERT模型上添加任务层(如分类器),联合训练全部参数 | 是 | 追求精度,资源充足,中/大数据集 |
总结
-
Feature-based:像是“用现成的工具处理任务”,不改动工具本身;
-
Fine-tuning:像是“定制和优化工具”,让它更适合你的任务。
正文完
请博主喝杯咖啡吧!
