首页 > 其他分享 >QLoRa 低秩分解+权重量化的微调

QLoRa 低秩分解+权重量化的微调

时间:2024-02-27 09:33:54浏览次数:46  
标签:存储 降低 权重 QLoRa 复杂度 微调 量化 模型

QLoRa的核心思想是首先使用低秩分解技术降低参数的数量,然后对这些低秩表示的参数应用量化技术,进一步减少所需的存储空间和计算量。

低秩分解

低秩分解(Low-Rank Factorization):通过将模型中的权重矩阵分解为更小的矩阵乘积,减少模型中的参数数量。

参看:LoRA 微调和低秩矩阵

这种方法特别适用于减少全连接层和卷积层的参数,因为这些层通常包含大量的参数。

权重量化

权重量化(Weight Quantization):在进行低秩分解之后,QLoRa对得到的低秩矩阵进行量化,将浮点数权重转换为低比特宽度的表示形式。

这进一步减少了模型的存储需求和计算复杂度,使模型更适合部署在资源受限的设备上。

下面是一些常见的权重量化方法及其对计算和存储复杂度的影响的比较:

量化方法 比特宽度 存储复杂度降低 计算复杂度降低 备注
FP32(未量化) 32 - - 原始浮点数格式
FP16 16 2倍 取决于硬件 半精度浮点数,常用于GPU加速
INT8 8 4倍 显著降低 整数量化,广泛应用于边缘设备
INT4 4 8倍 显著降低,更高 低比特量化,对模型精度影响较大
INT2 2 16倍 显著降低,最高 极端量化,需要特殊技术保持性能
INT1(二值化) 1 32倍 极大降低 最极端的量化方法,计算可用简单逻辑实现
  • 存储复杂度降低:这指的是模型权重存储空间的减少。例如,使用8位整数(INT8)量化时,存储需求是原始32位浮点数(FP32)的1/4,因此存储复杂度降低了4倍。

  • 计算复杂度降低:这主要指的是运行模型所需的计算资源减少。计算复杂度的降低程度取决于特定硬件对不同数据类型操作的支持程度。一般来说,使用低比特宽度进行量化可以显著加速计算,尤其是在支持特定量化操作的硬件上。

需要注意的是,量化的比特宽度越低,对模型精度的潜在影响越大。因此,在选择量化策略时,需要在模型大小、计算效率与模型性能之间做出权衡。此外,实际的存储和计算复杂度降低也取决于特定的模型架构、硬件平台以及量化后的优化程度。

标签:存储,降低,权重,QLoRa,复杂度,微调,量化,模型
From: https://www.cnblogs.com/ghj1976/p/18036181/qlora

相关文章

  • 像闪电般击碎天空吧——快速轻量化模型之 SDXL-Lightning
    SDXL-Lightning是一个由ByteDance(字节跳动)开发的文本到图像的生成模型,其主要贡献在于其高速的生成能力和轻量化的设计。模型的特点快速生成:SDXL-Lightning能够在几步之内生成高质量的1024px图像,这使得它在生成速度上具有优势。这种快速生成的能力使得SDXL-Lightning可以......
  • LoRA 微调和低秩矩阵
    LoRA(Low-RankAdaptation)是一种技术,旨在有效调整大型语言模型,以适应特定任务,而无需重新训练整个模型。在论文《LORA:LOW-RANKADAPTATIONOFLARGELANGUAGEMODELS》(https://arxiv.org/abs/2106.09685)中给出了具体方法:通过对模型中的参数进行低秩更新,来实现对大型预训练语言模......
  • 通达信量化资金流向指标公式源码副图
    {股票指标}X_1:=1231212;X_2:=IF(DATE<x_1,1,drawnull);X_3:=(2*CLOSE+HIGH+LOW)/4*X_2;X_4:=LLV(LOW,34)*X_2;X_5:=HHV(HIGH,34)*X_2;X_6:=Ema((X_3-X_4)/(X_5-X_4)*100,9)*X_2;X_7:=EMA(0.667*REF(X_6,1)+0.333*X_6,2)*X_2;多头:EMA((X_3-X_4)/(X_5-X_4)*100,30)*X_......
  • 通达信量化侦察兵指标公式源码副图
    {股票指标}X_1:=1231212;X_2:=IF(DATE<x_1,1,drawnull);主力持仓:Ema(100*(CLOSE-LLV(LOW,34))/(HHV(HIGH,34)-LLV(LOW,34)),3)*X_2,COLORMAGENTA,LINETHICK2;警戒线:80*X_2,COLORYELLOW;X_3:=REF((LOW+OPEN+CLOSE+HIGH)/4,1)*X_2;X_4:=SMA(Abs(LOW-X_3),13,1)/SMA(MAX(L......
  • 使用 Hugging Face 微调 Gemma 模型
    我们最近宣布了,来自GoogleDeepmind开放权重的语言模型Gemma现已通过HuggingFace面向更广泛的开源社区开放。该模型提供了两个规模的版本:20亿和70亿参数,包括预训练版本和经过指令调优的版本。它在HuggingFace平台上提供支持,可在VertexModelGarden和GoogleKubern......
  • 【深度学习】Logistic回归算法和向量化编程。全md文档笔记(代码文档已分享)
    本系列文章md笔记(已分享)主要讨论深度学习相关知识。可以让大家熟练掌握机器学习基础,如分类、回归(含代码),熟练掌握numpy,pandas,sklearn等框架使用。在算法上,掌握神经网络的数学原理,手动实现简单的神经网络结构,在应用上熟练掌握TensorFlow框架使用,掌握神经网络图像相关案例。具体......
  • LSTM 策略应用在量化交易领域的一点猜想
      LSTM(LongShortTermMemory),对于NLP(自然语言处理)和连续拍照的处理时,有额外的优势.在交易领域,最多的是应用于预判未来走势.  在自然语言处理时,将语句分为一个个单词,并预判下一个词汇.   同理:在K线图中,最简单的模式是以OHLCV,即一个Bar被当作一......
  • 新版VSC++安装QuantLib量化工具包安装及其使用
    1.下载安装boosthttps://boostorg.jfrog.io/artifactory/main/release/建议安装与当前电脑VS版本年份差不多的boost自行设置安装路径2.去Github下载开源代码QuantLibhttps://github.com/lballabio/QuantLib/releases下载解压3.安装VS安装C++window桌面开发环境!4.打......
  • Python量化金融风险分析
    金融市场是一个复杂且多变的生态圈,涉及从经济数据到政治动态的各种影响因素。无论你身处何种角色——小投资者、企业财务,还是大型金融机构的资产经理,你都必须面对各种不确定性,例如股价波动、利率变动或突发事件如政治危机和自然灾害。因此,量化风险评估不仅是一种科学需求,更是一种......
  • 4张图片就可以微调扩散模型
    稳定扩散模型因其从文本描述生成高质量、多样化图像的能力而获得了极大的关注。但是这些预训练模型在生成高度定制或个性化主题的图像时可能会有所不足。这时就需要我们进行手动的微调。微调可以根据相对较小的图像集向模型教授新的、独特的主题。我们今天使用DreamBooth在不影响......