最近和几个搞技术的朋友聊天,说起现在玩AI模型训练,大家的第一反应都是:烧钱,烧显卡,烧时间,动不动就要几十张A100,数据量以TB计,训练周期按周甚至按月算,对于我们这种小团队、个人开发者,或者只是想自己捣鼓点有趣应用的人来说,这门槛简直高得吓人,感觉就像想学开车,结果面前只有F1赛车,别说开了,连门都摸不着。
情况其实正在悄悄改变,如果你还在为训练成本发愁,或者觉得微调一个大模型(比如那种动辄上百亿参数的大家伙)是天方夜谭,那你可能错过了一个挺重要的技术——LoRA,这名字听起来有点玄乎,但原理其实挺“接地气”的。
你可以把它想象成给一个已经学识渊博的大学教授(预训练好的大模型)快速开设一门全新的选修课,我们不需要把教授回炉重造,让他重新学习所有基础知识(那太耗时耗力了),而是只需要给他一些针对新领域的、精心准备的讲义和资料(这就是LoRA要训练的少量参数),他就能很快掌握这门新课的精髓,并在相关问题上给出专业回答,LoRA干的就是这个“准备讲义”的活,而且这份“讲义”非常轻薄。
它的全称是Low-Rank Adaptation,中文大概叫“低秩自适应”,秩(Rank)是个数学概念,你可以粗糙地理解为矩阵里“真正有用信息”的密集程度,LoRA的核心思想是:当我们要让一个大模型适应某个新任务(比如从通用对话变成专门写法律文书)时,模型权重那些巨大的变化矩阵,其实并不需要“全盘皆动”,真正关键的变化可能只存在于一个低维度的“子空间”里。
这就好比你要调整一幅巨型油画的光影,不需要把整面墙的颜料都刮掉重画,只需要用细笔在关键部位点上几笔高光或阴影,整体效果就能焕然一新,LoRA就是找到了那支“细笔”和需要点画的“关键部位”。
.jpg)
具体怎么做呢?它不动原始大模型那庞大的参数(这些参数被“冻结”了,原样保留),在模型原有的某些层(通常是注意力机制那块)旁边,插入一些额外的、非常“瘦小”的适配层,这些适配层由两个小小的矩阵构成,一个负责把数据降维,一个负责再升维回去,训练的时候,我们只更新这两个小矩阵的参数,原始大模型的参数就像磐石一样一动不动。
这么做的效果有多夸张?举个例子,一个拥有1750亿参数的模型(比如GPT-3的规模),用LoRA技术,需要训练的参数可能只有几百万到几千万个,仅仅是原始模型规模的万分之几甚至更少,带来的直接好处简直是“梦幻三连”:
LoRA也不是万能的“银弹”,它最适合的场景是在一个强大的通用底座模型上,进行特定领域、特定风格、特定任务的微调,让一个通用聊天AI变成你的专属编程助手;让一个文本生成模型学会模仿某位作家的文风;或者为图像生成模型定制一个专属的角色形象或画风,它是在“巨人的肩膀”上做精巧的雕刻,而不是从头造一个巨人。
在AI绘画领域(比如Stable Diffusion),LoRA已经火得一塌糊涂,各种画风、人物、概念的微调模型满天飞,极大地丰富了创作可能性,在自然语言处理领域,它也成为了高效微调大语言模型(LLM)的标配技术之一。
如果你之前被大模型训练的硬件要求吓退了,或者苦于没有足够的资源去定制自己的AI,不妨多了解一下LoRA以及类似的高效微调技术(还有像QLoRA这种进一步量化压缩的“黑科技”),它们正在 democratize AI( democratize 这个词儿最近挺热,大概就是“让AI民主化、平民化”的意思),把曾经高高在上的大模型训练,变得更像是一场我们普通技术爱好者也能参与其中的“乐高积木”游戏。
技术的意义不就在于不断降低门槛,释放更多人的创造力吗?LoRA正是这样一把好用的钥匙,也许用不了多久,训练和定制一个满足自己独特需求的AI模型,会变得像今天在手机上装个APP一样简单,那个未来,想想还挺让人期待的。
(免费申请加入)AI工具导航网

相关标签: # ai训练模型lora
评论列表 (0条)