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

使用Lora微调LLM——笔记

Lora没有真正地“调”预训练的参数,而是增加了一个低秩矩阵。

思路:
LLM的预训练模型的权重很可能是满秩的,这代表几乎全部的权重都是有意义的。
Lora的目的就是用更少的权重(低秩的表达),来近似的代替原始的预训练满秩参数。(类似于PCA)

实现方案;


代码实现:
 

input_dim = 768 # 例如,预训练模型的隐藏大小
output_dim = 768 # 例如,层的输出大小
rank = 8 # 低秩适应的等级'r'
W = ... # 来自预训练网络的权重,形状为 input_dim x output_dim
W_A = nn.Parameter(torch.empty(input_dim, rank)) # LoRA权重A
W_B = nn.Parameter(torch.empty(rank, output_dim)) # LoRA权重B初始化LoRA权重
nn.init.kaiming_uniform_(W_A, a=math.sqrt(5))
nn.init.zeros_(W_B)def regular_forward_matmul(x, W):h = x @ Wreturn hdef lora_forward_matmul(x, W, W_A, W_B):h = x @ W # 常规矩阵乘法h += x @ (W_A @ W_B) * alpha # 使用缩放的LoRA权重return h

Reference:
 

一文读懂:LoRA实现大模型LLM微调_lora llm-CSDN博客

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • okhttp异步请求连接阻塞问题排查
  • cenos 7 安装 golang
  • vue3 自定义hooks(组合式函数)
  • PHP语言有哪些优势和特点?
  • C——四种排序方法
  • 84、 k8s的pod基础+https-harbor
  • 行级安全的艺术:SQL中的精细化数据保护策略
  • C++中类的相关学习
  • Golang 教程2
  • NoSql数据库 Redis集群详解
  • 如何使用 Pytest 进行测试
  • 【AI绘画】Midjourney前置指令/describe、/shorten详解
  • 给自己复盘用的tjxt笔记day12第一部分
  • Android 事件分发:为什么有时候会出现事件冲突?事件的顺序是如何的?出现事件冲突如何解决呢?比如为什么左右可以滑动,而上下却不行?
  • 中信银行与中国国家地理携手致敬中国极地考察40周年
  • 「面试题」如何实现一个圣杯布局?
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • Computed property XXX was assigned to but it has no setter
  • Java反射-动态类加载和重新加载
  • js 实现textarea输入字数提示
  • Mithril.js 入门介绍
  • PHP 小技巧
  • Promise面试题2实现异步串行执行
  • Redis在Web项目中的应用与实践
  • Shell编程
  • Spring Boot MyBatis配置多种数据库
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 从零开始的无人驾驶 1
  • 多线程事务回滚
  • 基于MaxCompute打造轻盈的人人车移动端数据平台
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 基于游标的分页接口实现
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 批量截取pdf文件
  • 人脸识别最新开发经验demo
  • 算法-图和图算法
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 我与Jetbrains的这些年
  • 一文看透浏览器架构
  • 原生Ajax
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • 第二十章:异步和文件I/O.(二十三)
  • 如何在招聘中考核.NET架构师
  • ​2021半年盘点,不想你错过的重磅新书
  • ​一些不规范的GTID使用场景
  • #QT(一种朴素的计算器实现方法)
  • (2)(2.10) LTM telemetry
  • (3)llvm ir转换过程
  • (python)数据结构---字典
  • (二)springcloud实战之config配置中心
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (附源码)springboot家庭财务分析系统 毕业设计641323