术语表

LoRA(低等级适应)

了解 LoRA 如何对YOLO 等大型人工智能模型进行高效微调,从而降低成本,并以最少的资源实现边缘部署。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

LoRA,即低级适应(Low-Rank Adaptation),是一种参数高效微调技术,尤其适用于大型语言模型领域,进而也适用于其他大型人工智能模型,包括计算机视觉中使用的模型。从本质上讲,LoRA 可以使预先训练好的模型高效地适应特定的任务或数据集,而无需重新训练整个模型,因为重新训练模型的计算成本很高,而且耗时。

什么是 LoRA?

LoRA 专注于这样一种理念,即使预先训练好的模型适应新任务所需的变化往往位于低维子空间中。LoRA 不更新大型模型的所有参数,而是冻结预先训练好的模型权重,并向 Transformer 架构的每一层注入数量较少的新参数,即所谓的 "低阶 "矩阵。在微调过程中,只训练这些新添加的低阶矩阵,从而大大减少了可训练参数的数量。这种方法大大降低了计算成本和内存需求,同时实现了与完全微调相当的性能。

在处理大型语言模型(LLM)等模型,甚至是大型视觉模型(如Ultralytics YOLO 模型)时,这种方法尤其有益,因为在这种情况下,由于模型规模庞大,完全微调可能是不切实际的。通过使用 LoRA,研究人员和从业人员可以利用有限的资源为特定应用有效地定制这些功能强大的模型。

LoRA 的相关性和应用

LoRA 的主要意义在于其效率。它可以在消费级 GPU 甚至边缘设备上对大规模预训练模型进行微调,使高级人工智能更容易获得。这对各种应用具有广泛的影响:

  • 个性化模型:LoRA 可根据个人用户的偏好或特定需求创建个性化人工智能模型。例如,在个性化推荐系统或定制内容生成中,LoRA 可以根据个人用户数据有效调整通用模型。这在使用人工智能驱动的虚拟助手增强用户体验或在创意领域创建定制内容等应用中尤为有用。

  • 高效的领域适应性:在需要将预先训练好的模型调整到非常特殊的领域(如医学图像分析或专业工业应用)的情况下,LoRA 可用于有效地微调模型,而无需大量的重新训练。例如,利用 LoRA 可以加快调整Ultralytics YOLO 物体检测模型,以适应非常具体的制造缺陷检测任务。这种效率对于专业领域的快速部署和迭代至关重要。

  • 边缘部署:与完全微调模型相比,LoRA 适配模型的尺寸更小,因此更适合部署在计算资源有限的边缘计算设备上,如智能手机或嵌入式系统。这有利于实时推理和设备上的人工智能处理,为资源受限硬件上的实时物体检测或高效移动应用等应用提供了可能性。

LoRA 与全面微调

传统的微调包括更新预训练模型的所有参数。虽然这种方法能产生出色的结果,但计算成本高昂,而且每个微调模型都需要大量存储空间。LoRA 通过以下方式提供了一种令人信服的替代方案:

  • 降低计算成本:通过只训练低秩矩阵,计算量大大减少。这使得微调速度更快,资源消耗更少。
  • 内存占用更少:LoRA 创建的微调模型小得多,因为只添加和训练低秩矩阵,而不是整个原始模型。这有利于存储和部署,尤其是在内存受限的环境中。
  • 更快的实验:LoRA 的高效性允许对不同的任务和数据集进行更快的实验,从而加快人工智能应用的开发和部署周期。

虽然在某些情况下,全面微调可能仍是实现绝对最高精度的首选,但 LoRA 提供了一种强大而实用的高效适配方法,在性能和资源利用率之间取得了平衡,并使先进的人工智能技术更容易获得。Ultralytics HUB 等工具可以进一步简化管理和部署 LoRA 适配模型的流程,为利用这种高效的微调技术提供一个用户友好型平台。

阅读全部