微调是机器学习过程中的一个关键步骤,可以让预先训练好的模型适应新的特定任务,并提高效率和准确性。微调是指将已在大型数据集上训练过的模型,利用较小的特定任务数据集对其参数进行微调。这种方法不仅能加快训练过程,还能利用现有的学习特征来提高模型的性能。
在从头开始训练模型的计算成本较高或标注数据有限的情况下,微调显得尤为重要。从预先训练好的模型(如Ultralytics YOLOv8 中可见的模型)开始,学习过程的重点是针对目标任务的具体细微差别完善模型,而不是重新学习一切。
这一过程首先要选择一个预先训练好的模型,该模型已在 ImageNet 这样的海量数据集上训练过。模型的初始层通常捕捉边缘或纹理等通用特征,而后层则侧重于更抽象的概念。微调通常包括冻结初始层,只在新数据上训练后面的层,让模型在不丢失之前学习到的泛化功能的情况下进行调整。
微调被广泛应用于图像分类任务中。例如,调整在一般动物图像上训练的模型,以准确区分特定的狗品种。通过使用标有狗品种图像的较小数据集,模型可以调整其参数,以提高在这一重点领域的准确性。在Ultralytics'物体检测模型中也可以看到这种方法,预先训练好的模型在新任务中能迅速达到很高的性能。
在自然语言处理(NLP)领域,微调技术可使 BERT 等模型适用于特定任务,如情感分析或金融或医疗保健等领域的问题解答。通过在相关数据集上进行微调,这些模型可以出色地生成针对具体任务的上下文见解。GPT-4 等模型进一步推动了这一技术的发展,从而在各种应用中实现了细致入微的类人文本生成。
迁移学习:虽然微调和迁移学习都涉及重复使用预先训练好的模型,但迁移学习是一个更广泛的概念。微调是迁移学习中的一种特定应用,侧重于调整模型参数,而迁移学习可能还包括对模型架构的更改。
零点学习:零点学习不同于微调学习,因为它的目的是在不对特定任务数据进行任何训练的情况下,利用语义关系来理解任务。
少量学习:少量学习包括针对新任务使用数量非常有限的示例来训练模型,而微调通常针对特定任务使用数量更多的数据集。
微调仍是人工智能工具包中的一种强大方法,可在特定领域的模型训练和部署中提高效率并降低成本。无论是增强利基类别的图像识别能力,还是调整语言模型以适应独特的方言,微调都体现了现代机器学习解决方案的多功能性和适应性。为了进一步探索,Ultralytics HUB 等工具简化了微调过程,确保了与各种应用的精简集成。