神经网络中的微调是指采用预训练模型(已经在大型数据集上训练过的模型),并使其适应执行新的、特定的任务。 与从头开始训练模型(需要大量数据和计算资源)不同,微调利用模型已经学习的知识,并针对相关但不同的用例进行调整。 例如,可以将训练来识别图像中日常物体(如汽车或动物)的模型进行微调,以检测特定类型的医疗扫描,使用较小的标记医疗图像数据集。
该过程通常涉及两个关键步骤。 首先,略微修改预训练模型的架构以适应新任务。 例如,如果原始模型设计用于对 1,000 个类别进行分类,则可以替换最后一层,取而代之的是输出与新问题相关的较少类别预测的新层。 其次,在新数据集上训练模型,但要仔细调整以避免覆盖最初学习到的有用特征。 这通常通过在训练期间使用较低的学习率来完成,这允许模型对其参数进行较小的更新。 例如,在针对情感分析微调 BERT(一种语言模型)时,开发人员可能会冻结早期层(处理基本的语言模式),并且仅在情感数据集上训练后面的层。
在标记数据稀缺或收集成本高昂的情况下,微调尤其有价值。 一个常见的用例是将通用模型调整为特定领域的任务。 例如,从事法律咨询聊天机器人的开发人员可能会从 GPT 等预训练语言模型开始,并在法律文件和客户互动中对其进行微调,以提高其对术语和上下文的理解。 另一个例子是重新训练 ResNet 模型,该模型最初在 ImageNet 上训练,以使用一小部分工厂图像来识别制造中的缺陷零件。 微调的效率来自于重用强大的特征检测器(例如图像中的边缘或纹理或文本中的语法模式),同时将训练精力集中在特定于任务的调整上。 这种平衡减少了训练时间和计算成本,同时保持了强大的性能。