机器学习基础-大语言模型

目录

大语言模型的基本概念 “大”体现在什么地方?

预训练+微调两阶段的基本流程和作用

第一阶段:利用语言模型进行无监督预训练

第二阶段:通过监督微调的模式解决下游任务

BERT模型中MLM和NSP机制基本概念

MLM

NSP

Prompt学习的基本概念

提示学习的基本概念

流程

思维链提示(Chain-of-Thought Prompting)的基本概念

模型蒸馏的基本概念

多模态的基本概念

多模态表示学习


大语言模型的基本概念 “大”体现在什么地方?

大语言模型(Large Language Model, LLM)是指那些具有非常大的参数量、训练数据集规模和计算资源需求的深度学习模型,它们通常基于神经网络架构,并通过大量文本数据进行训练。这些模型能够生成人类语言的文本,执行各种自然语言处理任务,如翻译、问答、摘要等。

大语言模型的“三大”特点: 大数据(训练数据巨大)、大模型(参数数量大)、大算力

预训练+微调两阶段的基本流程和作用

第一阶段:利用语言模型进行无监督预训练

通过设计好一个网络结构来作语言模型任务,然后用海量无标注自然语言文本作为原料,用无监督学习的方式训练模型。

第二阶段:通过监督微调的模式解决下游任务

流程:①准备特定任务数据集:为特定的下游任务收集带有标签小规模数据集。② 调整模型结构:根据需要添加新的层或者修改现有层来适应具体任务的要求③ 设置微调参数 ④训练模型

是在已有的模型上进行进一步训练,改变模型内部参数,让模型更适应特定任务,属于监督微调SFT: Supervised Fine-Tuning)

BERT模型中MLM和NSP机制基本概念

BERT(Bidirectional Encoder Representation from Transformer),是基于Transformer 的自然语言表示框架。

  • Transformer 编码器:BERT与GPT一样,都是基于Transformer的二阶段训练模型,都在Pre-Training阶段无监督地训练出一个可通用的Transformer模型,然后在Fine-Tuning阶段对这个模型中的参数进行微调,使之能够适应不同的下游任务。
  • 双向性:与以前的单向模型(如 GPT)不同,BERT采用的是双向的Transformer,也就是不用进行Mask操作,同时考虑一个词左右两边的信息来推断该词的意义。这种特性使得 BERT 能够更准确地理解词汇的上下文。

为了使模型获得对语言结构的广泛理解,BERT 有了两个预训练方法创新MLM和NSP

MLM

  • 掩码语言建模 (Masked Language Modeling, MLM)随机遮盖输入序列中的一部分词(通常是15%),然后让模型预测这些被遮盖掉的词。这个任务帮助模型学习到词语之间的相互关系和上下文信息。

理解:在Transformer中,我们即想要知道上文的信息,又想要知道下文的信息,但同时要保证整个模型不知道要预测词的信息,那么就干脆不要告诉模型这个词的信息就可以了。也就是说,BERT在输入的句子中,挖掉一些需要预测的词,然后通过上下文来分析句子,最终使用其相应位置的输出来预测被挖掉的词。这其实就像是在做完形填空一样。
但是,直接将大量的词替换为<MASK>标签可能会造成一些问题,模型可能会认为只需要预测<MASK>相应的输出就行,其他位置的输出就无所谓。同时Fine-Tuning阶段的输入数据中并没有<MASK>标签,也有数据分布不同的问题。为了减轻这样训练带来的影响,BERT采用了如下的方式:
1.输入数据中随机选择15%的词用于预测,这15%的词中,
2.80%的词向量输入时被替换为<MASK>
3.10%的词的词向量在输入时被替换为其他词的词向量
4.另外10%保持不动
这样一来就相当于告诉模型,我可能给你答案,也可能不给你答案,也可能给你错误的答案,有<MASK>的地方我会检查你的答案,没<MASK>的地方我也可能检查你的答案,所以<MASK>标签对你来说没有什么特殊意义,所以无论如何,你都要好好预测所有位置的输出。

NSP

  • 下一句预测 (Next Sentence Prediction, NSP)给定两个句子 A 和 B,模型需要判断 B 是否是 A 的下一个句子。这个任务有助于提高模型对于句子间连贯性的理解,在问答、文本蕴含等任务中有重要作用。

BERT还提出了另外一种预训练方式NSP,与MLM同时进行,组成多任务预训练。这种预训练的方式就是往Transformer中输入连续的两个句子,左边的句子前面加上一个<CLS>标签,它的输出被用来判断两个句子之间是否是连续上下文关系。采用负采样的方法,正负样本(是否有连续上下文关系)各占50%。
输入表示:BERT 的输入是由三个向量相加组成的,以确保模型可以区分不同的部分并捕捉到句子的位置和顺序信息。

  • 词向量(Token Embeddings):每个 token(包括特殊符号如 [CLS] 和 [SEP])都有一个对应的词嵌入,这代表了词汇表中的位置。

  • 位置向量(Positional Embeddings):虽然 Transformer 架构本身并不具备处理序列顺序的能力,但通过加入位置编码,BERT 能够了解 token 在序列中的绝对或相对位置。

  • 段向量(Segment Embeddings):也称为句子 A/B 嵌入,用于标识哪个 token 属于句子 A 或句子 B。这对于二元分类任务尤其重要,例如 NSP,其中需要明确知道哪些部分构成了第一个句子,哪些构成了第二个句子。

Prompt学习的基本概念

提示学习(Prompt-based Learning)是一种利用预训练语言模型(如BERT、GPT等)进行特定任务的方法,它通过构造一个或多个提示(prompt)来引导模型生成预期的输出。这种方法允许用户以自然语言的方式与模型交互,并且可以在不改变模型权重的情况下实现多种应用。

提示学习的基本概念

  • 提示(Prompt):提示是指一段文本,通常包含一些上下文信息和一个空白处,用于指导模型生成特定类型的输出。例如,在问答任务中,提示可以是“问题: [问题内容] 答案:”,然后让模型填充答案部分。

  • 零样本学习(Zero-shot learning):在没有针对特定任务进行任何微调的情况下,直接使用预训练好的大语言模型完成新任务。提示学习特别适合这种场景,因为它依赖于模型已经学到的语言知识。

  • 少样本学习(Few-shot learning):提供少量的例子作为示范,帮助模型理解如何应对新的任务。这些例子被嵌入到提示中,形成所谓的“in-context learning”。

流程

  1. 提示添加
  2. 答案搜索
  3. 答案映射

思维链提示(Chain-of-Thought Prompting)的基本概念

随着语言模型规模的不断扩大,其也具备了丰富的知识和强大的语境学习能力。然而,仅仅通过扩大语言模型的规模,并不能显著提升推理(Reasoning)能力, 如常识推理、逻辑推理、数学推理等。通过示例(Demonstrations)或者明确指导模型在面对问题时如何逐步思考,促使模型在得出最终答案之前生成中间的推理步骤,可以显著提升其在推理任务上的表现。这种方法被称为思维链提示 (Chain-of-Thought Prompting)。

理解:语言模型在推理能力方面的表现一直未能令人满意,一些研究人员认为这可能是因 为此前的模式是直接让模型输出结果,而忽略了其中的思考过程。人类在解决包括 数学应用题在内的、涉及多步推理的问题时,通常会逐步书写整个解题过程的中间 步骤,最终得出答案。如果明确告知模型先输出中间的推理步骤,再根据生成的步 骤得出答案,是否能够提升其推理表现呢? 针对这个问题,Google Brain 的研究人员提出了思维链(Chain-of-Thought, CoT)提示方式[171],除了将问题输入模型,还将类似题目的解题思路和步骤输 入模型,使得模型不仅输出最终结果,还输出中间步骤,从而提升模型的推理能力。 研究人员甚至提出了零样本思维链(Zero-shot Chain-of-Thought,Zeroshot CoT)提示方式,只需要简单地告知模型“让我们一步一步思考(Let’s thinkstep by step)”,模型就能够自动输出中间步骤。

模型蒸馏的基本概念

采用的方法:迁移学习
主要思想:通过预先训练好的复杂模型(Teacher model)的最后输出结果来作为先验知识,结合One-Hot label数据,共同指导个简单的网络(Student model)学习,最终使学生模型大导或媲美老师模型的准确度。
目标:让student学习到teacher的泛化能力

多模态的基本概念

每一种信息的来源或者形式,都可以称为一种模态。例如,人有触觉,听觉,视觉等;信息的媒介,有语音、视频、文字等。以上的每一种都可以称为一种模态。多模态机器学习旨在通过机器 学习的方法实现处理和理解多源模态信息的能力。目前比较热门 的研究方向是图像、视频、音频、语义之间的多模态学习。

多模态表示学习

  • 定义:利用多模态之间的互补性,剔除模态间的冗余性,从而学习到更好的特征表示。
  • 两大研究方向
    • 联合表示(Joint Representations):将多个模态的信息一起映射到一个统一的多模态向量空间。
    • 协同表示(Coordinated Representations):将多模态中的每个模态分别映射到各自的表示空间,但映射后的向量之间满足一定的相关性约束。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

给Kkfileview加请求头鉴权接入

所有接入前端token放localStorage, 或者后端cookie中获取鉴权 本案例以放localStorage为例 一、创建global.js $(document).ready(function() {// 设置全局的 AJAX 请求头$.ajaxSetup({headers: {Authentication: localStorage.getItem(Authentication) }}); }); 二。全部模…

flutter 专题二十四 Flutter性能优化在携程酒店的实践

Flutter性能优化在携程酒店的实践 一 、前言 携程酒店业务使用Flutter技术开发的时间快接近两年&#xff0c;这期间有列表页、详情页、相册页等页面使用了Flutter技术栈进行了跨平台整合&#xff0c;大大提高了研发效率。在开发过程中&#xff0c;也遇到了一些性能相关问题和…

源代码编译安装X11及相关库、vim,配置vim(2)

一、编译安装vim 编译时的cofigure选项如下.只有上一步的X11的包安装全了&#xff08;具体哪些是必须的&#xff0c;哪些是多余的没验证&#xff09;&#xff0c;configure才能认为X的库文件和头文件是可以用的。打开多个编程语言的支持特性。 ./configure --prefixpwd/mybui…

爬虫学习记录

1.概念 通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程 通用爬虫:抓取的是一整张页面数据聚焦爬虫:抓取的是页面中的特定局部内容增量式爬虫:监测网站中数据更新的情况,只会抓取网站中最新更新出来的数据 robots.txt协议: 君子协议,网站后面添加robotx.txt…

大语言模型训练所需的最低显存,联邦大语言模型训练的传输优化技术

联邦大语言模型训练的传输优化技术 目录 联邦大语言模型训练的传输优化技术大语言模型训练所需的最低显存大语言模型训练所需的最低显存 基于模型微调、压缩和分布式并行处理的方法,介绍了相关开源模型及技术应用 核心创新点 多维度优化策略:综合运用基于模型微调、模型压缩和…

主机A与主机B建立TCP连接的三次握手过程

&#xff08; 1 &#xff09;主机 A 的 TCP 向主机 B 发出连接请求 SYN 报文段&#xff08;第一次握手&#xff09;。&#xff08; 1 分&#xff09; &#xff08; 2 &#xff09;一旦包含 SYN 报文段的 IP 数据报到达主机 B &#xff0c; SYN 报文段被从数据报…

SpringCloud系列教程:微服务的未来(六)docker教程快速入门、常用命令

对于开发人员和运维工程师而言&#xff0c;掌握 Docker 的基本概念和常用命令是必不可少的。本篇文章将带你快速入门 Docker&#xff0c;并介绍一些最常用的命令&#xff0c;帮助你更高效地进行开发、测试和部署。 目录 前言 快速入门 docker安装 配置镜像加速 部署Mysql …

Express 加 sqlite3 写一个简单博客

例图&#xff1a; 搭建 命令&#xff1a; 前提已装好node.js 开始创建项目结构 npm init -y package.json:{"name": "ex01","version": "1.0.0","main": "index.js","scripts": {"test": &q…

C++:字符数组

一、字符数组介绍 数组的元素如果是字符类型&#xff0c;这种数组就是字符数组&#xff0c;字符数组可以是一维数组&#xff0c;可以是二维数组 &#xff08;多维数组&#xff09;。我们接下来主要讨论的是一维的字符数组。 char arr1[5]; //⼀维字符数组 char arr2[3][5];//⼆…

基于SpringBoot实现的保障性住房管理系统

&#x1f942;(❁◡❁)您的点赞&#x1f44d;➕评论&#x1f4dd;➕收藏⭐是作者创作的最大动力&#x1f91e; &#x1f496;&#x1f4d5;&#x1f389;&#x1f525; 支持我&#xff1a;点赞&#x1f44d;收藏⭐️留言&#x1f4dd;欢迎留言讨论 &#x1f525;&#x1f525;&…

分享3个国内使用正版GPT的网站【亲测有效!2025最新】

1. molica 传送入口&#xff1a;https://ai-to.cn/url/?umolica 2. 多帮AI 传送入口&#xff1a;https://aigc.openaicloud.cn?inVitecodeMYAAGGKXVK 3. 厉害猫 传送入口&#xff1a;https://ai-to.cn/url/?ulihaimao

LabVIEW瞬变电磁接收系统

利用LabVIEW软件与USB4432采集卡开发瞬变电磁接收系统。系统通过改进硬件配置与软件编程&#xff0c;解决了传统仪器在信噪比低和抗干扰能力差的问题&#xff0c;实现了高精度的数据采集和处理&#xff0c;特别适用于地质勘探等领域。 ​ 项目背景&#xff1a; 瞬变电磁法是探…

CM3/4启动流程

CM3/4启动流程 1. 启动模式2. 启动流程 1. 启动模式 复位方式有三种&#xff1a;上电复位&#xff0c;硬件复位和软件复位。 当产生复位&#xff0c;并且离开复位状态后&#xff0c;CM3/4 内核做的第一件事就是读取下列两个 32 位整数的值&#xff1a; 从地址 0x0000 0000 处取…

快手短剧播放器uniapp如何引入与对接?

uniApp前端微短剧项目开源分享 开源地址&#xff1a;git开源下载地址 文章目录 快手短剧播放器uniapp如何引入与对接&#xff1f;1.引入短剧播放器2.创建文件kscomponents组件3.local-stream.js文件说明4.用户行为事件4.local-stream.ksml文件参考如下 快手短剧播放器uniapp如何…

.NET AI 开发人员库 --AI Dev Gallery简单示例--问答机器人

资源及介绍接上篇 nuget引用以下组件 效果展示&#xff1a; 内存和cpu占有&#xff1a; 代码如下&#xff1a;路径换成自己的模型路径 模型请从上篇文尾下载 internal class Program{private static CancellationTokenSource? cts;private static IChatClient? model;privat…

如何构建多层决策树

构建一颗多层的决策树时&#xff0c;通过递归选择最佳划分特征&#xff08;依据 信息增益 或 基尼系数&#xff09;对数据集进行划分&#xff0c;直到满足停止条件&#xff08;例如叶节点纯度达到要求或树的深度限制&#xff09;。以下是基于 信息增益 和 基尼系数 的递推公式和…

VSCode 使用鼠标滚轮控制字体

一、 文件 | 首选项 | 设置 二、单击在 settings.json中编辑 "editor.mouseWheelZoom": true 注注注意&#xff1a;保存哦&#xff01;ctrlS 三、测试 按住ctrl鼠标滚轮&#xff0c;控制字体大小

十年后LabVIEW编程知识是否会过时?

在考虑LabVIEW编程知识在未来十年内的有效性时&#xff0c;我们可以从几个角度进行分析&#xff1a; ​ 1. 技术发展与软件更新 随着技术的快速发展&#xff0c;许多编程工具和平台不断更新和改进&#xff0c;LabVIEW也不例外。十年后&#xff0c;可能会有新的编程语言或平台…

注册中心如何选型?Eureka、Zookeeper、Nacos怎么选

这是小卷对分布式系统架构学习的第9篇文章&#xff0c;第8篇时只回答了注册中心的工作原理的内容&#xff0c;面试官的第二个问题还没回答&#xff0c;今天再来讲讲各个注册中心的原理&#xff0c;以及区别&#xff0c;最后如何进行选型 上一篇文章&#xff1a;如何设计一个注册…

C++ 复习总结记录三

C 复习总结记录三 主要内容 1、类的六个默认成员函数 2、构造函数 3、析构函数 4、拷贝构造函数 5、赋值运算符重载 6、const 成员函数 7、取地址及 const 取地址操作符重载 一 类的六个默认成员函数 如果一个类中什么成员都没有&#xff0c;简称为空类。空类中并不是…