大模型面试之LoRA

news2024/12/23 3:09:44

LoRA的解释:一种高效微调预训练神经网络的方法

LoRA 解决的问题:

🔸 2021年初,微软与OpenAI合作探索GPT-3的商业可行性。

🔸 发现仅仅通过提示(prompting)不足以完成生产任务,例如将自然语言转换为代码生成任务。

🔸 微调是必要的,但由于模型检查点的规模庞大,成本过高。

工作原理:

🔸 LoRA通过提出两个问题来推广全量微调(更新每个参数):

- 是否需要微调所有参数?

- 对于我们要微调的权重矩阵,更新在矩阵秩方面应该有多大的表达能力?

🔸 这两个问题定义了一个二维平面,在这个平面上,全量微调位于一个角(满秩且更新所有参数),而原点代表原始模型。

🔸 平面中的任意一点都是一个有效的LoRA配置。

🔸 更新矩阵的选定秩控制了微调过程的表达能力。

🔸 一个d×d的矩阵可以表示d维向量空间中的任何线性变换。

🔸 通过首先将输入转换到一个较低维度的空间,然后再转回原始空间,我们可以限制可以表示的线性变换类型。

🔸 这样可以减少需要存储的参数数量,从(dxd)减少到(dxr + dxr),其中r << d。

🔸 接近原点的点通常表现得与全量微调一样好——因为通常神经网络过度参数化,因此权重矩阵中充满了线性相关的元素。

🔸 这表明我们可以从低秩配置开始,并根据需要逐渐增加秩。

使用LoRA的常见做法:

🔸 如何选择更新矩阵的秩R:从低秩开始,并根据需要增加。

🔸 何时使用全量微调?:当在数据集上进行微调,这些数据集完全不同于基础模型预训练的数据集时(例如,如果你正在用火星语数据对英语模型进行微调,则可能需要全量微调)。

🔸 LoRA是否适用于任何模型架构?:只要模型使用矩阵乘法,就可以应用LoRA。因此,几乎所有的模型架构都可以使用LoRA!

LoRA的好处:

🔸 减少检查点大小:在GPT-3上,检查点大小从1TB减少到了25MB。

🔸 没有额外的推理延迟:LoRA更新可以在推理过程中与原始参数合并。W_new = W_old + AxB

🔸 快速切换任务的能力:LoRA模块可以高效地加载和卸载。(A_frenchxB_french)、(A_germanxB_german)、(A_spanishxB_spanish)

LoRA带来的一些有趣的想法:

🔸 在RAM中缓存LoRA模块以实现更快的模型切换和在不同的微调之间进行路由。

🔸 在训练集的不同批次上并行训练多个LoRA模块。

🔸 创建一个自适应模型树,其中每个节点是一个LoRA模块。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1963329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++:标准模板库(STL)介绍

1.STL基本概念 从C到C&#xff0c;C语言的核心优势之一就是便于软件的重用。前面我们提到过C程序的面向对象思想&#xff0c;即继承和多态、标准类库等可以实现重用。除此之外&#xff0c;通过泛型程序设计(generic programming)的思想&#xff0c;即模板机制以及标准模板库ST…

微软:警惕利用VMware ESXi进行身份验证绕过攻击

微软于7月29日发布警告&#xff0c;称勒索软件团伙正在积极利用 VMware ESXi 身份验证绕过漏洞进行攻击。 该漏洞被追踪为 CVE-2024-37085&#xff0c;由微软安全研究人员 Edan Zwick、Danielle Kuznets Nohi 和 Meitar Pinto 发现&#xff0c;并在 6 月 25 日发布的 ESXi 8.0 …

Vatee万腾平台:助力企业数字化转型的坚实伙伴

在数字化浪潮席卷全球的今天&#xff0c;企业数字化转型已成为不可逆转的趋势。面对这一挑战与机遇并存的时代&#xff0c;Vatee万腾平台凭借其深厚的行业洞察、先进的技术实力和丰富的实践经验&#xff0c;成为了众多企业数字化转型道路上的坚实伙伴。 一、定制化解决方案&…

锐捷RCNA | ARP协议原理与应用与DHCP协议原理及应用

一、ARP协议原理与应用 OSI参考模型将网络划分为7层&#xff0c;IP地址工作在第三层网络层中&#xff0c;MAC地址工作在第二层数据链路层。 在以太网发送IP数据包时&#xff0c;先封装网络层的包头再封装数据链路层的包头&#xff0c;由于在发送时只知道目标IP地址而不知道MA…

神经网络实现数字识别(机器学习)

我们有很多0到9的图片集&#xff0c;我们要训练一个网络来自动识别数字&#xff0c;我们有20*20的图像5000个。 把图片展平&#xff0c;这样每个记录就有400个特征&#xff0c;最后一列是标签值&#xff0c;1-9表示数字1-9&#xff1b;10表示数字0。数据集&#xff1a;ex_2/ex…

【设计模式:单例模式】

单例模式的特点&#xff1a; 单例类只允许一个实例单例类必须自己创造自己的唯一实例单例类必须给所有其他对象提供这一实例 单例模式底层如何实现&#xff1a; 私有化构造函数&#xff0c;类外部无法创造类对象&#xff0c;实现了单例类只允许有一个实例对象的特点类定义中含有…

vue3+g2plot之瀑布图

基础瀑布图 - 每月收支情况 效果预览: 核心代码: import {Waterfall } from @antv/g2plot;const data = [{type: 日用品, money: 120 },{type: 伙食费, money: 900 },{type: 交通费, money: 200 },{type: 水电费, money: 300 },{type: 房租, money: 1200 },{type: 商场消…

MyBatis批量更新:报错The error occurred while setting parameters

使用mybatis批量更新时&#xff0c;报以下错误。反复检查过mysql语句没有任何问题。而且本地可以正常执行&#xff0c;生产环境却报错。起初怀疑是数据表&#xff0c;把生产环境表导入本地测试后依然没有问题。数据表没问题就定位到数据库&#xff0c;先检查本地数据库链接与生…

家庭教育系列—剑桥通用英语五级考试介绍

文章目录 1. 背景介绍2. 详细介绍2.1 **KET&#xff08;Key English Test&#xff09;&#xff1a;基础英语考试**2.2 **PET&#xff08;Preliminary English Test&#xff09;&#xff1a;初级英语考试**2.3 **FCE&#xff08;First Certificate in English&#xff09;&#…

自定义类加载器 1.继承ClassLoader 2.findClass 3.defineClass

一、自定义类加载器 1.自定义 2.使用 总结&#xff1a;这种情况&#xff0c;由于loadClass会采用双亲委派机制&#xff0c;如果类已经被加载&#xff0c;那么就不会重复加载。 二、热部署的实现原理 使用loadClass&#xff0c;发现加载是同一个类 使用findClass实现&#xf…

【arxiv 2024】Latte: Latent Diffusion Transformer for Video Generation

【arxiv 2024】Latte: Latent Diffusion Transformer for Video Generation 一、前言Abstract1 Introduction2 Related Work3 Methodology3.1 Preliminary of Latent Diffusion Models3.2 The model variants of Latte3.3 The empirical analysis of Latte3.3.1 Latent video c…

测试环境领域到测试环境产品

作者&#xff1a;攻心 去年之前&#xff0c;阿里巴巴的淘天集团测试环境是以领域方式运作&#xff1a;不局限测试环境治理本身&#xff0c;从测试模式方法论及用好测试环境思路引领集团测试环境治理。领域运作最难的是“统一思想”。业务进一步细分调整后&#xff0c;测试环境治…

Xilinx FPGA:vivado SPI实现FLASH通信

一、实验要求 要求使用SPI协议实现对flash芯片的页编程、读操作、页擦除等功能。 二、模块划分 大概的时序图&#xff1a; 三、程序设计 &#xff08;1&#xff09;接收端模块 timescale 1ns / 1ps module uart_rx(input sys_clk ,input …

Mongodb新增文档、查询文档、更新文档、删除文档

文章目录 1、新增文档1.1、进入容器1.2、向集合插入一个新文档1.3、查询文档1.4、向集合插入一个或者多个文档 2、查询文档2.1、查询年龄等于202.2、查询年龄是20的男性2.3、查询年龄是20或者性别是男2.4、查询年龄小于232.5、查询年龄小于等于232.6、查询大于等于232.7、查询年…

新型蜜罐有哪些?未来方向如何?

前言&#xff1a;技术发展为时代带来变革&#xff0c;同时技术创新性对蜜罐产生推动力。 一、新型蜜罐的诞生 技术发展为时代带来变革&#xff0c;同时技术创新性对蜜罐产生推动力&#xff0c;通过借鉴不同技术思想、方法&#xff0c;与其它技术结合形成优势互补&#xff0c;…

Docker 搭建 Minio 容器

Docker 搭建 Minio 容器 (完整详细版) 简介&#xff1a; Minio 是一个基于Apache License v2.0开源协议的对象存储服务&#xff0c;虽然轻量&#xff0c;却拥有着不错的性能。它兼容亚马逊S3云存储服务接口&#xff0c;非常适合于存储大容量非结构化的数据。 例如图片、视频、日…

CentOS通过rsync实现文件同步(daemon方式)

rsync介绍 rsync是Liunx下的远程数据同步工具&#xff0c;可快速同步多台服务器间的文件和目录&#xff0c;并可实现增量同步以减少数据的传输。 rsync有两种常用的认证方式&#xff0c;一种是rsync-daemon方式&#xff0c;另外一种是ssh方式。 daemon 方式与 ssh 方式相比有…

Nginx代理路径被吃

Nginx代理路径被吃的情况 日常工作中经常使用nginx反向代理一些资源&#xff0c;有时正常代理&#xff0c;发现代理不过去。 验证被吃调location情况 通过浏览器访问&#xff1a; https://zhao138969.com/LinuxPackage/Python/SelectDocker location /LinuxPackage { proxy…

深度学习Day-27:生成对抗网络(GAN)入门

&#x1f368; 本文为&#xff1a;[&#x1f517;365天深度学习训练营] 中的学习记录博客 &#x1f356; 原作者&#xff1a;[K同学啊 | 接辅导、项目定制] 要求&#xff1a; 了解什么是生成对抗网络生成对抗网络结构是怎么样的学习本文代码&#xff0c;并跑通代码调用训练好…

【MeterSphere】3.X备份与还原

目录 一、手动备份数据库 二、备份 minio 目录 三、自动备份 3.1 设置备份服务器 3.2 创建文件夹 msdb_bak 3.3 设置备份脚本 3.4 创建用于定时任务脚本文件 3.5 为msdb_bak赋权 3.6 执行 install_ms_backup.sh 3.7 查看定时任务是否成功 四、还原数据 4.1 还原 s…