当前位置: 首页 > article >正文

人工智能-大语言模型-微调技术-LoRA及背后原理简介

1. 《LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS》

LORA: 大型语言模型的低秩适应

摘要:
随着大规模预训练模型的发展,全参数微调变得越来越不可行。本文提出了一种名为LoRA(低秩适应)的方法,通过在Transformer架构的每一层注入可训练的低秩分解矩阵,大幅减少了下游任务的可训练参数数量。与使用Adam微调GPT-3 175B相比,LoRA可以将可训练参数数量减少10000倍,GPU内存需求减少3倍。
在这里插入图片描述

创新点:

  • 提出了LoRA方法,通过在预训练模型中注入低秩矩阵来适应下游任务。
  • 与全参数微调相比,LoRA在保持模型质量的同时,大幅减少了参数数量和计算资源需求。

算法模型:

  • 在预训练的权重矩阵中注入低秩分解矩阵,通过优化这些低秩矩阵来适应新任务。
  • 保持预训练权重不变,只训练注入的低秩矩阵。

数学模型 :
h = W 0 x + Δ W x = W 0 x + B A x h = W_{0}x + \Delta W x = W_{0}x + BAx h=W0x+ΔWx=W0x+BAx

这里 W 0 , Δ W W_{0}, \Delta W W0,ΔW是同纬度的超大矩阵,通常10B以上的模型参数量,但是 B , A B, A B,A都是低秩,维度远远小于原始模型参数矩阵。

实验效果:

  • 在RoBERTa、DeBERTa、GPT-2和GPT-3等模型上进行实验,LoRA在参数数量大幅减少的情况下,性能与全参数微调相当或更好。
  • 在GPT-3 175B上,LoRA在WikiSQL、MNLI和SAMSum等任务上的表现优于或接近全参数微调。

推荐阅读指数
★★★★★

推荐理由:
这篇文章提出了一种高效的大型语言模型适应方法,对于需要在资源有限的情况下部署大型模型的应用场景具有重要意义。LoRA方法的提出,为大型模型的实用化和优化提供了新的思路和工具。

2. 《MEASURING THE INTRINSIC DIMENSION OF OBJECTIVE LANDSCAPES》

测量目标景观的内在维度

摘要
本文探讨了神经网络参数数量与问题难度之间的关系。作者通过在随机子空间中训练网络,逐渐增加子空间的维度,来测量目标景观的内在维度。研究表明,许多问题的内在维度比预期的要小,且对于给定数据集,不同模型尺寸的内在维度变化不大。这表明一旦参数空间足够大以解决问题,额外的参数直接增加了解的流形的维度。此外,文章还提出了一种简单的技术来获得解决方案的最小描述长度的上界,并提供了一种压缩网络的方法。

创新点

  • 提出了内在维度的概念,用于量化问题难度。
  • 开发了一种在随机子空间中训练网络的方法来测量内在维度。
  • 展示了即使是大型网络,也只需相对较少的参数即可达到接近最优的性能。

算法模型

  • 网络不是在其原始参数空间中训练,而是在一个较小的、随机定向的子空间中训练。
  • 通过逐渐增加子空间的维度,记录解决方案首次出现的维度,定义为目标景观的内在维度。

实验效果

  • 在MNIST、CIFAR-10、ImageNet等数据集上的实验表明,许多问题的内在维度远小于参数总数。
  • 例如,在MNIST数据集上,即使是一个全连接网络,也只需要大约750个参数即可达到接近最优模型90%的性能。

推荐阅读指数
★★★★☆

推荐理由
这篇文章为理解神经网络的优化问题提供了新的视角,特别是在参数数量与模型性能之间的关系方面。它的方法论和实验结果对于神经网络的设计和训练具有重要的指导意义。

3.《INTRINSIC DIMENSIONALITY EXPLAINS THE EFFECTIVENESS OF LANGUAGE MODEL FINE-TUNING》

内在维度性解释了语言模型微调的有效性

摘要
尽管预训练的语言模型可以通过微调来达到各种语言理解任务的最新结果,但这一过程的动态,特别是在数据量较少的情况下,尚不清楚。本文通过内在维度的视角分析微调过程,提供了理论和实证直觉来解释这一现象。研究表明,常见的预训练模型具有非常低的内在维度,即存在一个低维重参数化,其微调效果与完整参数空间一样有效。

创新点

  • 将内在维度的概念应用于语言模型的微调过程。
  • 通过实证研究,展示了预训练模型在微调时所需的参数数量远少于模型总参数数。

算法模型

  • 使用随机投影将模型参数映射到低维空间,并在该空间中进行优化。
  • 通过调整低维空间中的参数,间接优化高维空间中的模型参数。

实验效果

  • 在MRPC数据集上,仅通过优化200个可训练参数,即可使RoBERTa模型达到接近完整参数性能的90%。
  • 预训练过程隐式地降低了后续微调任务的内在维度。
    在这里插入图片描述
    在这里插入图片描述

推荐阅读指数
★★★★☆

推荐理由
这篇文章为理解大型预训练语言模型的微调过程提供了新的理论支持,特别是在参数效率和模型泛化能力方面。其研究结果对于优化语言模型的训练和应用具有重要的实际意义。


http://www.kler.cn/a/320788.html

相关文章:

  • 解决idea中无法拖动tab标签页的问题
  • AI的主流数据库介绍及其功能对比
  • rk3568 , buildroot , qt ,使用sqlite, 动态库, 静态库
  • MySQL 视图 存储过程与存储函数
  • 自动驾驶控制与规划——Project 6: A* Route Planning
  • spring mvc源码学习笔记之九
  • HarmonyOS鸿蒙开发实战(5.0)自定义安全键盘场景实践
  • C++面向对象基础
  • 学习CubeIDE——外设中断开发
  • C++中的typeid使用方法
  • Mac优化清理工具CleanMyMac X 4.15.6 for mac中文版
  • c++:set和map
  • 脉冲式投币器与售货机主板RS232连接WF-700B适配器介绍
  • 程序编译的四个阶段
  • python 异步读取文件,速度变快了吗
  • Linux Centos7达梦8数据库安装说明(附安装包,超详细图文!)收藏这一篇就够了!
  • 基于quill2.0的富文本编辑器,Fluent Editor,支持表格,图片,表情等
  • 中间添加一条可以拖拽的分界线,来动态调整两个模块的宽度
  • 如何在调试状态下部署局域网网站
  • Qt C++设计模式->外观模式
  • 牛骨髓油茶,美味不可错过
  • 华为机考练习(golang)
  • 算法.图论-并查集
  • C++:string类写时拷贝|引用计数
  • git使用方法详解(适合新手)
  • 找免费正版高清图片,就上这8个网站。