AI大模型探索之路-训练篇20:大语言模型预训练-常见微调技术对比

news2024/12/23 12:04:22

系列篇章💥

AI大模型探索之路-训练篇1:大语言模型微调基础认知
AI大模型探索之路-训练篇2:大语言模型预训练基础认知
AI大模型探索之路-训练篇3:大语言模型全景解读
AI大模型探索之路-训练篇4:大语言模型训练数据集概览
AI大模型探索之路-训练篇5:大语言模型预训练数据准备-词元化
AI大模型探索之路-训练篇6:大语言模型预训练数据准备-预处理
AI大模型探索之路-训练篇7:大语言模型Transformer库之HuggingFace介绍
AI大模型探索之路-训练篇8:大语言模型Transformer库-预训练流程编码体验
AI大模型探索之路-训练篇9:大语言模型Transformer库-Pipeline组件实践
AI大模型探索之路-训练篇10:大语言模型Transformer库-Tokenizer组件实践
AI大模型探索之路-训练篇11:大语言模型Transformer库-Model组件实践
AI大模型探索之路-训练篇12:语言模型Transformer库-Datasets组件实践
AI大模型探索之路-训练篇13:大语言模型Transformer库-Evaluate组件实践
AI大模型探索之路-训练篇14:大语言模型Transformer库-Trainer组件实践
AI大模型探索之路-训练篇15:大语言模型预训练之全量参数微调
AI大模型探索之路-训练篇16:大语言模型预训练-微调技术之LoRA
AI大模型探索之路-训练篇17:大语言模型预训练-微调技术之QLoRA
AI大模型探索之路-训练篇18:大语言模型预训练-微调技术之Prompt Tuning
AI大模型探索之路-训练篇19:大语言模型预训练-微调技术之Prefix Tuning


目录

  • 系列篇章💥
  • 前言
  • 一、各大语言模型对比
    • 1、因果语言模型
    • 2、条件生成模型
    • 3、序列分类模型
    • 4、文生图模型
    • 5、图片分类模型
    • 6、图生文模型
  • 二、LoRA技术对比
    • 1)优点
    • 2)缺点
  • 三、P-Tuning V2技术对比
    • 1)优点
    • 2)缺点
  • 总结


前言

随着人工智能的迅猛发展,自然语言处理(NLP)在近年来取得了显著的进展。大型语言模型(LLMs)在多种NLP任务中展现了卓越的性能,这得益于它们在大规模文本数据集上进行的预训练和随后的微调过程。这些模型不仅能够理解和生成自然语言,还能在特定任务上通过微调达到令人印象深刻的精度和鲁棒性。本文将深入探讨几种重要的预训练模型,并细致比较目前广泛使用的两种先进微调技术——LoRA和P-Tuning V2。我们将从专业角度分析各自的优势和局限性,并提供一个全景视角,以助开发人员和实践者在选择适合其特定需求的微调策略时做出明智的决策。

一、各大语言模型对比

开发人员可以通过Github和Hugging Face平台访问和了解各种由PEFT支持的预训练语言模型。

通过Github平台,开发者可以访问到PEFT的源代码,深入了解其内部工作原理,并参与到模型优化和改进的过程中。此外,Hugging
Face提供的用户友好界面,不仅使得获取由PEFT支持的预训练语言模型变得异常简单,还提供了丰富的文档和教程,帮助开发者快速上手并应用这些模型。

在这里插入图片描述

在Hugging Face平台上,开发者可以轻松地浏览各种由PEFT支持的预训练模型,包括它们在不同的自然语言理解任务上的表现。这些模型覆盖了从通用语言理解到特定领域任务的广泛应用,并且通常包含了详细的模型规格、预训练数据来源以及优化策略的描述。

1、因果语言模型

在这里插入图片描述
Causal Language Modeling(因果语言模型)主要的任务是根据当前的上下文预测下一个单词。它是一种生成模型,能够生成类似人类的文本。因果语言模型在处理序列数据时,会考虑前面的上下文信息,但是不会看到未来的信息。

例如,给定一句话的前半部分 "The quick brown fox jumps over ...", 因果语言模型的任务是预测接下来可能出现的词,比如 "the"。这个预测是基于给定上下文的条件概率分布来进行的。

这种模型在很多应用中都非常有用,比如机器翻译、语音识别和文本生成等。

2、条件生成模型

在这里插入图片描述
Conditional Generation(条件生成)的模型,主要是在给定一定条件或上下文的情况下,生成特定的输出。在自然语言处理中,条件生成模型常常用来生成符合特定条件的文本。

以**机器翻译**为例,给定一个源语言(例如英语)的句子,条件生成模型的任务就是生成目标语言(例如中文)的句子。这里的“条件” 就是源语言的句子,而生成的目标就是目标语言的句子。 又如**文本摘要**任务,给定一个长篇文章,条件生成模型的任务就是生成该文章的摘要。这里的“条件”就是原始的长篇文章,生成的目标就是简短的摘要。

条件生成模型的一个关键特性是它能够根据不同的输入条件生成不同的输出,因此它在许多需要个性化输出的场景中有广泛的应用,如推荐系统、个性化新闻生成等。

3、序列分类模型

在这里插入图片描述
Sequence Classification(序列分类)模型的主要任务是对整个序列进行分类。在这个上下文中,序列可以是一系列的单词(文本数据)、声音信号、时间序列数据等。模型的目标是将输入的序列映射到预定义的类别标签上。

一个典型的例子是情感分析任务。在这个任务中,给定一个文本序列(如一句话或一段评论),序列分类模型会判断这段文本的情感倾向,比如将其分类为“正面”、“负面”或“中立”。这里的序列就是文本中的单词序列,而分类的目标是情感倾向的类别。

其他序列分类的例子还包括:
1)垃圾邮件检测:将邮件序列分类为“垃圾邮件”或“非垃圾邮件”。
2)文本主题分类:将新闻文章、科学论文或其他文档分类到预设的主题类别,
如“体育”、“政治”、“科技”等。
3)蛋白质功能分类:将蛋白质序列根据其生物学功能分类到不同的功能类别
中。

4、文生图模型

在这里插入图片描述

文本到图像(Text-to-Image)模型能够将文字描述转化为相应的图像。在这类模型中,一个预训练好的语言模型被用来理解文本内容,并提取关键信息。然后,这些信息被传递至一个图像生成网络,该网络负责根据解析出的文本内容合成图像。这种跨模态的能力使得文生图模型在创意设计、游戏开发、在线教育以及提供视觉障碍人士的辅助技术等领域展现出巨大潜力。

5、图片分类模型

在这里插入图片描述

图像分类(Image Classification)模型负责将图像归入预定的类别。通常,这涉及到一个复杂的卷积神经网络(CNN),它能够从图像中提取特征,并将这些特征映射到一个或多个类别标签上。图像分类技术已广泛应用于面部识别、物体识别、医学影像分析以及自动驾驶车辆中的环境感知等领域。

6、图生文模型

在这里插入图片描述

图像到文本(Image-to-Text)模型旨在描述或解释给定的图像内容。逆向于文生图模型,图生文模型首先通过一个图像识别网络识别和解析图像中的关键元素和场景语境,接着用语言模型生成描述这些元素的文本。这种技术在视觉受损辅助工具、社交媒体图像的自动化标注以及在法律和医疗领域的文档编录中有着至关重要的应用。

二、LoRA技术对比

在这里插入图片描述

1)优点

LoRA(Low-Rank Adaptation)技术以其对大型语言模型进行高效微调的能力而受到关注。以下是LoRA的几个专业层面的优点:

  • 参数化效率:LoRA通过引入低秩分解的矩阵,将原始的密集参数矩阵分解为两个低秩矩阵的乘积。这种方法大幅减少了微调过程中所需优化的参数数量,从而降低了模型的内存占用和训练成本,同时加速了训练过程。这对于硬件资源有限的场景尤其有利。

  • 推理时间优化:LoRA允许在不牺牲推理速度的前提下进行微调。它通过将训练时引入的低秩因子与冻结的原始参数矩阵结合,避免了额外的推理延迟,这对于需要实时响应的应用至关重要。

  • 通用性和兼容性:LoRA的设计使其能够与多种预训练模型以及各类任务兼容,这意味着它可以应用于不同的NLP场景而无需重大改动。此外,LoRA可以与其他微调技术叠加使用,进一步提升模型性能。

2)缺点

尽管LoRA提供了一种高效的微调方法,但它也有一些局限性:

  • 超参数选择:确定最优的矩阵秩是一个挑战,因为它与模型的参数规模、微调数据集的大小和任务类型紧密相关。选择较小的秩可能会限制模型的容量,导致次优的微调效果;而较大的秩可能会增加计算开销并导致过拟合。这通常需要通过实验来平衡和确定。

  • 稳定性与鲁棒性:虽然LoRA可以提高模型的适应性,但在某些情况下,低秩结构可能影响模型的稳定性和泛化能力。因此,在关键任务中采用LoRA时,需要仔细评估其对模型鲁棒性的影响。

  • 调优复杂度:为了获得最佳性能,开发人员可能需要针对特定任务进行多次实验,以找到最佳的低秩分解策略和超参数设置,这可能增加开发和维护的复杂性。

三、P-Tuning V2技术对比

在这里插入图片描述

1)优点

P-Tuning V2是一种先进的微调技术,它在P-Tuning的基础上进行了改进,具有以下优点:

  • 性能提升相比于P-Tuning和Prefix-Tuning,P-Tuning V2通过更精细的Prompt设计和调整,实现了更稳定的性能提升。它通过增加Prompt的可学习参数,使模型能够更好地适应微调任务,从而提高了模型的准确性和鲁棒性。

  • 灵活性:P-Tuning V2的设计允许在不同任务中灵活地调整Prompt的长度和结构,这为各种规模的模型和任务提供了更多的定制选项。

  • 通用性:虽然P-Tuning V2仍然需要考虑不同任务的特点来设计Prompt,但其改进的结构使得它能够适用于更广泛的任务类型,提高了技术的普适性。

2)缺点

尽管P-Tuning V2在多个方面展现了优势,但它仍然面临一些挑战:

  • 任务适配:为了达到最佳效果,P-Tuning V2需要针对每个新任务设计合适的Prompt,这可能涉及大量的实验和调整。这一过程对于某些快速变化或特定的任务来说可能是时间和资源上的负担。

  • 规模调整:对于不同的模型规模和任务类型,需要精心设计Prompt的长度和结构。这不仅增加了微调的复杂性,也可能影响到模型的扩展性和可迁移性。

  • 资源消耗:尽管P-Tuning V2在参数效率上有所提高,但对于大规模模型和数据集,Prompt调整和优化过程仍然可能需要大量的计算资源和时间。

总结

在本文中,我们深入探讨了大型语言模型的预训练和微调技术,特别是LoRA和P-Tuning V2两种先进的参数高效微调方法。通过对比分析,我们发现这些技术在减少计算和存储成本的同时,能够保持或接近全参数微调的性能。此外,我们还提供了实际应用案例,展示了这些技术在具体任务中的应用和效果。

微调技术的选择应基于具体任务的需求、可用资源以及性能目标。LoRA和P-Tuning V2各有优势,适用于不同的场景和需求。随着NLP领域的不断发展,未来可能会出现更多创新的微调技术,为开发者提供更多的选择和可能性。同时,我们也应关注技术的跨领域应用和跨模态学习,以进一步扩展大型语言模型的应用范围和能力。

在这里插入图片描述

🎯🔖更多专栏系列文章:AIGC-AI大模型探索之路

如果文章内容对您有所触动,别忘了点赞、⭐关注,收藏!加入我,让我们携手同行AI的探索之旅,一起开启智能时代的大门!

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

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

相关文章

javaFor循环-打印九九乘法表

虽然所有循环结构都可以用while或者do...while表示,但java提供了另一种循环语句--for循环,使一些循环结构变得简单。for循环语句是支持迭代的一种通用结构,是最有效,最灵活的循环结构。 先写第一列: 运行结果&#xf…

uni-appH5Android混合开发三 || uni-app调用Android原生方法的三种方式

前言: 关于H5的调用Android原生方法的方式有很多,在该片文章中我主要简单介绍三种与Android原生方法交互的方式。 uni-app跨平台框架介绍和快速入门 uni-app跨平台框架介绍和快速入门 一、H5方法调用android原生方法 H5 Android开发规范官方文档&#…

stm32开发三、GPIO

部分引脚可容忍5V,容忍5V的意思是:可以在这个端口输入5V的电压,也认为是高电平 但是对于输出而言,最大就只能输出3.3V,因为供电就只有3.3V 具体哪些端口能容忍5V,可以参考一下STM32的引脚定义 不带FT的,就只…

Java通过百度地图API获取定位-普通IP定位

项目中有一个登录邮箱提醒的功能,需要根据IP地址获取定位信息,从而更好地提示用户账号登录的所在地。为此,花费了一些时间来实现这个功能。 在CSDN搜索了一下,发现关于获取定位的文章说明都不够详细,于是决定自己创作一…

CAP与BASE分布式理论

一、分布式理论 1.CAP理论 CAP理论是说对于分布式数据存储,最多只能同时满足一致性(C,Consistency)、可用性(A, Availability)、分区容忍性(P,Partition Tolerance&…

编程式导航

目录 一、问题引入 二、基本跳转 1.path路径跳转(简易方便) 2.name命名路由跳转(适合path路径长的场景) 三、路由传参 1.path路径跳转传参 (1)query传参 (2)动态路由传参 2.…

揭秘VSCode魔法工具箱:HTML5 CSS3超强插件集合 + Css Reset与Normalize.css的终极对决

个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 ✍HTML5、CSS3常用的vscode插件🍎1 HTML 标签同步重命名– Auto…

每日一题1:从表中创建DataFrame

本文通过一道题来对创建DataFrame知识点进行拓展,方便以后直接调用。下面先对知识点进行介绍: 在Python中,使用pandas库创建DataFrame有多种方法,这里列举几种常见的创建方式: 一、常见创建方式 1. 从二维列表创建 …

Android之给Button上添加按压效果

一、配置stateListAnimator参数实现按压效果 1、按钮控件 <Buttonandroid:id"id/mBtnLogin"android:layout_width"match_parent"android:layout_height"48dp"android:background"drawable/shape_jfrb_login_button"android:state…

融知财经:期货和现货的区别是什么?哪个风险大?

期货和现货在交易对象等方面存在明显的区别。期货交易是一种衍生金融工具&#xff0c;主要用于价格发现、风险管理和投机&#xff0c;而现货交易则是商品和服务的实际买卖。在选择进行期货交易还是现货交易时&#xff0c;投资者需要根据自己的需求和市场情况来决定。 期货和现货…

如何访问远程MySQL数据库服务器?

访问远程MySQL数据库服务器是一项常见的任务&#xff0c;它允许我们在不同的地点通过网络连接到MySQL服务器&#xff0c;并进行数据库管理和数据处理操作。我们将重点介绍一种名为【天联】的组网技术&#xff0c;该技术提供了一系列优势&#xff0c;使远程访问MySQL数据库服务器…

javac编译web项目中的src

对于单个文件的且不引用其他类文件的java源码用javac编译大家都很熟悉即 javac hello.java, 服务器未安装idea&#xff0c;现在在服务器里面直接编译src目录 1 idea项目结构如下 2 web目录为最终部署的代码 WEB-INF下面没有 classes 目录 3 使用javac 编译src javac -encod…

Nachi那智不二越机器人维修技术合集

一、Nachi机械手维护基础知识 1. 定期检查&#xff1a;定期检查机器人的各个部件&#xff0c;如机械手伺服电机、机器人减速器、机械臂传感器等&#xff0c;确保其运行正常。 2. 清洁与润滑&#xff1a;定期清洁Nachi工业机器人表面和内部&#xff0c;并使用合适的润滑油进行润…

在线旅游网站,基于 SpringBoot+Vue+MySQL 开发的前后端分离的在线旅游网站设计实现

目录 一. 前言 二. 功能模块 2.1. 登录界面 2.2. 管理员功能模块 2.3. 用户功能模块 三. 部分代码实现 四. 源码下载 一. 前言 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff0c;旅游网站当然…

OpenHarmony usb打开报错“usb fail error code = -3, error msg = LIBUSB_ERROR_ACCESS”

一、前言&#xff1a;最近公司项目需求&#xff0c;定位要求使用国产系统&#xff0c;国产系统无非就是 统信os &#xff0c;麒麟OS, 还有这两年比较热的 OpenHarmony。于是&#xff0c;老板要求公司产品适配OpenHarmony , 跟上时代步伐。 二、在开发中使用 usb 通讯时&#x…

党务政务服务热线|基于SSM的党务政务服务热线平台(源码+数据库+文档)

目录 基于SprinBootvue的党务政务服务热线平台 一、前言 二、系统设计 三、系统功能设计 1系统功能模块 2后台功能模块 5.2.1管理员功能模块 5.2.2部门功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; …

Ubuntu搭建VsCode C++ 开发环境

Ubuntu搭建VsCode C 开发环境 安装VS Code 使用命令来安装VS Code&#xff1a;他会下载vscode的最新版本。 sudo snap install --classic code如果不使用命令 的方式 在官网下载vscode安装包&#xff08; 后缀为 .deb的包 &#xff09;之后&#xff08;可以选择版本 &#x…

克服 Prometheus 单值数据模型的局限性:GreptimeDB 的新路径

引言 Prometheus 已经成为监控和报警生态系统的基石&#xff0c;在高效、直接地处理实时指标&#xff08;Metric&#xff09;方面有着强大的表现。Prometheus 的核心是一个包含单个值和一系列标签的数据模型。这种设计在提升简单性和适应性的同时&#xff0c;也带来了一些挑战…

HarmonyOS NEXT星河版之美团外卖点餐功能实战(下)

文章目录 一、购物车逻辑1.1 购物车及加减菜1.2 菜品的加减---方案一1.3 菜品的加减---方案二1.4 购物车View完善1.5 清空购物车1.5 购物车数量和价格 二、小结 一、购物车逻辑 1.1 购物车及加减菜 在utils目录下新建CartStore.ets文件&#xff0c;如下&#xff1a; import …

Dubbo2.x迁移3.x过程及原理

Dubbo2.x迁移3.x过程及原理 1.Dubbo2.x迁移3.x1.1 快速升级步骤1.2 Provider 端升级过程详解1.2.1 双注册带来的资源消耗 1.3 Consumer 端升级过程1.3.1 APPLICATION_FIRST策略1.3.2 双订阅带来的资源消耗1.3.3 消费端更细粒度的控制 1.4 迁移状态的收敛1.4.1 不同的升级策略影…