微调
概念
微调是机器学习中的一种技术,主要用于在特定任务上优化预训练模型的性能。常见的微调方法包括:
- 监督微调:通过使用标注数据对模型进行训练,以提高在特定任务上的准确性。
- 前缀微调:在生成任务中应用,通过学习少量参数实现与传统微调相当的性能。
- LoRA 微调:一种低秩适应方法,适用于大模型的微调。
微调技术的不断发展为解决各种现实世界问题提供了强有力的工具。
通常而言,标注一个数据集价格昂贵(区别于单目标标注、多目标标注、文本标注(情感分析、实体标注、文本分类)、语义分割)

网络架构
一个神经网络一般可以分成两块
- 特征抽取将原始像素变成容易线性分割的特征
- 线性分类器来做分类(Softmax 回归)

微调过程
常用做法:在源数据集上训练好的模型,仅改变输出层(输出标号),保留中间层(特征提取)

微调过程中的权重初始化:

训练
是一个目标数据集上的正常训练任务,使用更强的正则化
使用更小的学习率
使用更少的数据迭代
源数据集远复杂于目标数据,通常微调效果更好
重用分类器权重
- 源数据集可能也有目标数据中的部分标号
- 可以使用预训练好模型分类器中对应标号对应的向量来做初始化
例如,构建一个车辆的识别模型,IMAGENET里原来就包括车辆类型的识别:

固定一些层
- 神经网络通常学习有层次的特征表示
- 低层次的特征更加通用
- 高层次的特征则更跟数据集相关
- 可以固定底部一些层的参数,不参与更新
- 更强的正则
总结
- 微调通过使用在大数据上得到的预训练好的模型,用来初始化模型权重以提升精度
- 预训练模型质量很重要
- 微调通常速度更快、精度更高
