【科普小白】LLM大语言模型的基本原理

一、要了解LLM大模型的基本原理就要先来了解一下自然语言处理(NLP)。

NLP 是 AI 的一个子领域,专注于使计算机能够处理、解释和生成人类语言,主要任务包括:文本分类、自动翻译、问题回答、生成文本等。到底是NLP促生了LLM还是LLM激活了NLP,这个大家可以自行深度思考一下!!!

 

在 LLM 诞生之前,NLP 一直在匍匐前进,异常的艰难,直到 LLM 的出现,才彻底的改变了 NLP 的现状。

但是没有NLP也不会有LLM的爆发,在定义上,NLP和LLM虽各有侧重,但它们的关系密不可分。NLP是目的,LLM是手段;NLP是问题的提出者,LLM是解决方案的一部分。随着LLM的进化,NLP的边界也在不断拓展,二者形成了一种共生关系

二、什么是 LLM?

大语言模型:LLM(Large Language Models),是试图完成文本生成任务的一类 ML(Machine Learning,机器学习)模型。

LLM 使计算机能够处理、解释和生成人类语言,从而提高人机交互效率。为了做到这一点,LLM 会分析大量文本数据或基于这些数据进行训练,从而学习句子中各词之间的模式和关系。

这个学习过程可以使用各种数据源,包括维基百科、Reddit、成千上万本书,甚至互联网本身。

在给定输入文本的情况下,这个学习过程使得 LLM 能够预测最有可能出现的后续单词,从而生成对输入文本有意义的回应。

在过去的 2 年中,市场上发布的一些现代语言模型非常庞大(如 GPT 系列模型、文心一言、通义千问、Kimi、豆包等等),并且已经在大量文本上进行了训练,因此它们可以直接执行大多数 NLP 任务,如文本分类、自动翻译、问题回答、生成文本等。

三、LLM 的发展历程

LLM 的发展可以追溯到几年前。它始于简单的语言模型,如 n-gram 模型、LSTM 网络等等,直到 Transformer 模型的出现,才彻底的催生了 LLM。

1、N-gram 模型

n-gram 模型通过使用词频来根据前面的词预测句子中的下一个词,其预测结果是在训练文本中紧随前面的词出现的频率最高的词。虽然这种方法提供了不错的着手点,但是 n-gram 模型在理解上下文和语法方面仍需改进,因为它有时会生成不连贯的文本。

2、LSTM 网络

为了提高 n-gram 模型的性能,人们引入了更先进的学习算法,包括循环神经网络 ( recurrent neural network,RNN ) 和长短期记忆 ( long short-termmemory,LSTM ) 网络。与 n-gram 模型相比,这些模型能够学习更长的序列,并且能够更好地分析上下文,但它们在处理大量数据时的效率仍然欠佳。尽管如此,在很长的一段时间里,这些模型算是最高效的,因此在自动翻译等任务中被广泛使用。

3、Transformer 模型

Transformer 架构彻底改变了 NLP 领域,这主要是因为它能够有效地解决之前的 NLP 模型存在的一个关键问题:很难处理长文本序列并记住其上下文。(也就是臭名昭著的“灾难性遗忘问题”),Transformer 则具备高效处理和编码上下文的能力。

这场革命的核心支柱是注意力机制,这是一个简单而又强大的机制。模型不再将文本序列中的所有词视为同等重要,而是在任务的每个步骤中关注最相关的词。

交叉注意力和自注意力是基于注意力机制的两个架构模块,它们经常出现在 LLM 中。Transformer 架构广泛使用了交叉注意力模块和自注意力模块。

交叉注意力机制

交叉注意力有助于模型确定输入文本的不同部分与输出文本中下一个词的相关性。它就像一盏聚光灯,照亮输入文本中的词或短语,并突出显示预测下一个词所需的相关信息,同时忽略不重要的细节。

为了说明这一点,让我们以一个简单的句子翻译任务为例。

假设输入文本是这样一个英语句子:Alice enjoyed the sunny weather in Brussels(Alice 很享受布鲁塞尔阳光明媚的天气)。

如果目标语言是法语,那么输出文本应该是:Alice a profit é du temps ensoleill é à Bruxelles。

在这个例子中,让我们专注于生成法语单词 ensoleill é,它对应原句中的 sunny。

对于这个预测任务,交叉注意力模块会更关注英语单词 sunny 和 weather,因为它们都与 ensoleill é 相关。通过关注这两个单词,交叉注意力模块有助于模型为句子的这一部分生成准确的翻译结果。

自注意力机制

自注意力机制是指模型能够关注其输入文本的不同部分。具体到 NLP 领域,自注意力机制使模型能够评估句子中的每个词相比于其他词的重要性。这使得模型能够更好地理解各词之间的关系,并根据输入文本中的多个词构建新概念。

来看一个更具体的例子。

考虑以下句子:Alice received praise from her  colleagues(Alice 受到同事的赞扬)。

假设模型试图理解 her 这个单词的意思。自注意力机制给句子中的每个单词分配不同的权重,突出在这个上下文中与 her 相关的单词。

在本例中,自注意力机制会更关注 Alice 和 colleagues 这两个单词。如前所述,自注意力机制帮助模型根据这些单词构建新概念。在本例中,可能出现的一个新概念是 Alice ’ s colleagues。

Transformer 架构的并行优势

Transformer 架构具有易于并行化的优势。这意味着 Transformer 架构可以同时处理输入文本的多个部分,而无须顺序处理。这样做可以提高计算速度和训练速度,因为模型的不同部分可以并行工作,而无须等待前一步骤完成。

基于 Transformer 架构的模型所具备的并行处理能力与图形处理单元 ( graphics processing unit,GPU ) 的架构完美契合,后者专用于同时处理多个计算任务。由于高度的并行性和强大的计算能力,GPU 非常适合用于训练和运行基于 Transformer 架构的模型。硬件上的这一进展使数据科学家能够在大型数据集上训练模型,从而为开发 LLM 铺平了道路。

编码器和解码器模型

Transformer 架构由来自谷歌公司的 Ashish Vaswani 等人在 2017 年的论文“ Attention Is All You Need ”中提出,最初用于序列到序列的任务,如机器翻译任务。

标准的 Transformer 架构有两个主要组件:编码器和解码器,两者都十分依赖注意力机制。

编码器的任务是处理输入文本,识别有价值的特征,并生成有意义的文本表示,称为嵌入 ( embedding ) 。

解码器使用这个嵌入来生成一个输出,比如翻译结果或摘要文本。这个输出有效地解释了编码信息。

生成式预训练 Transformer

生成式预训练 Transformer ( Generative Pre-trained Transformer,GPT ) 是一类基于 Transformer 架构的模型,专门利用原始架构中的解码器部分。

在 GPT 中,不存在编码器,因此无须通过交叉注意力机制来整合编码器产生的嵌入。也就是说,GPT 仅依赖解码器内部的自注意力机制来生成上下文感知的表示和预测结果。

GPT 模型的标记和预测实现

GPT 模型接收一段提示词作为输入,然后生成一段文本作为输出。这个过程被称为文本补全。

当 GPT 模型收到一段提示词之后,它首先将输入拆分成标记 ( token ) 。这些标记代表单词、单词的一部分、空格或标点符号。

因为有了注意力机制和 Transformer 架构,LLM 能够轻松处理标记并解释它们之间的关系及提示词的整体含义。Transformer 架构使模型能够高效地识别文本中的关键信息和上下文。

为了生成新的句子,LLM 根据提示词的上下文预测最有可能出现的下一个标记。与之前的循环模型不同,带有注意力机制的 Transformer 架构使得 LLM 能够将上下文作为一个整体来考虑。基于这个上下文,模型为每个潜在的后续标记分配一个概率分数,然后选择概率最高的标记作为序列中的下一个标记。从而实现文本的预测。

以上便是 LLM 的基本实现原理。

下面这个图可以仔细研究下,通过流程实现更能理解一篇文档和提示词prompt在给到LLM之前的实现流程,能够帮助理解LLM的运行和输出结果。

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

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

相关文章

初识网络编程TCP/IP

目录 前言相关名词解释应用层协议——HTTP传输层协议socketTCP帧头格式三次握手、四次挥手 UDPTCP的socket实现 参考博文 前言 刚碰到网络编程,会出现一堆协议、概念、这层次那技术的,头都大了,还是得总结总结…… 相关名词解释 ✨✨网络…

整合本地市场机会 同城小程序打造社区商圈

同城市场中,商家与消费者之间的互动和交易模式正在发生深刻变化,同城小程序成为了企业、商户和消费者之间连接的桥梁,成为打造社区商圈、整合本地市场机会的重要工具。今天小编分享,同城小程序怎么一个软件整合以前十几个APP做的事…

安当ASP系统:适合中小企业的轻量级Radius认证服务器

安当ASP(Authentication Service Platform)身份认证系统是一款功能强大的身份认证服务平台,特别适用于中小企业。其中,简约型Radius认证服务器是安当ASP系统中的一个重要组成部分。以下是对该系统的详细介绍: 一、主要…

(一)<江科大STM32>——软件环境搭建+新建工程步骤

一、软件环境搭建 (1)安装 Keil5 MDK 文件路径:江科大stm32入门教程资料/Keil5 MDK/MDK524a.EXE,安装即可,路径不能有中文。 (2)安装器件支持包 文件路径:江科大stm32入门教程资料…

面试经典 150 题:121,125

121. 买卖股票的最佳时机 【参考代码】 动态规划解决 class Solution { public:int maxProfit(vector<int>& prices) {int size prices.size();int min_price 99999, max_profit 0;for(int i0; i<size; i){if(prices[i] < min_price){min_price prices[i…

Spring boot 读模块项目升级为spring cloud 项目步骤以及问题

1.结构说明 bean 模块 &#xff0c;public 模块&#xff0c; client 模块&#xff0c; erp模块&#xff0c;system 主模块。 2.环境说明以及pom 原本环境 新环境 mysql 5.7 -------------- mysql 8.0 maven 3.9.6 jdk 8 -----------…

Linux系统-初始化

作者介绍&#xff1a;简历上没有一个精通的运维工程师。希望大家多多关注作者&#xff0c;下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 这是Linux进阶部分的最后一大章。讲完这一章以后&#xff0c;我们Linux进阶部分讲完以后&#xff0c;我们的Linux操作部分就…

element-plus的Tree 树形控件添加图标

该文章为本菜鸡学习记录&#xff0c;如有错误还请大佬指教 本人刚开始接触vue框架&#xff0c;在使用element-plus组件想实现树形控件&#xff0c;发现官网的组件示例没有图标区分显示 实现效果 代码 <temple 部分 <el-tree :data"data" node-click"hand…

【详细 工程向】基于Smart3D的五镜头相机三维重建

数据部分&#xff1a; 数据要求 &#xff08;1&#xff09;每条行带至少从 3 个不同的视角进行拍摄。 &#xff08;2&#xff09;相邻相片之间的重叠度通常要求大于三分之二。 &#xff08;3&#xff09;不同拍摄视角之间夹角应该少于 15 度。 &#xff08;4&#xff09;通…

pdf转excel;pdf中表格提取

一、问题描述 在工作中或多或少会遇到&#xff1a;需要将某份pdf中的表格数据提取出来&#xff0c;以便能够“修改使用”数据 可将pdf中的表格提取出来&#xff0c;解决办法还有点复杂 尤其涉及“pdf中表格不是标准的单元格”的时候&#xff0c;提取数据到excel不太容易 比…

mean_x2 = (x**2).mean(dim=dims, keepdims=True)

这行代码的作用是计算输入张量 x 在指定维度上的平方均值&#xff0c;并保持原始维度的形状。具体来说&#xff1a; mean_x2 (x**2).mean(dimdims, keepdimsTrue) # [b,1,1] 参数解释 x**2&#xff1a;对输入张量 x 的每个元素进行平方运算。.mean(dimdims, keepdimsTrue)…

Enscape 4.2 安装教程(支持资源库)

软件介绍 Enscape 是专门为建筑、规划、景观及室内设计师打造的渲染产品&#xff0c;无需导入导出文件&#xff0c;在常用的软件内部即可看到逼真的渲染效果。 你无需了解记忆各种参数的用法&#xff0c;一切都是傻瓜式的一键渲染&#xff0c;你可以把精力更多地投入到设计中…

DBeaver工具连接Hive

DBeaver工具连接Hive 首先解压安装包dbeaver-ce-latest-x86_64-setup.zip,并安装dbeaver-ce-latest-x86_64-setup.exe; 安装Kerberos客户端4.1-amd64.msi; 查看集群节点/etc/hosts文件内容,并追加到C:\Windows\System32\drivers\etc\hosts; 下载集群用户keytab文件,并解压…

4.4 软件设计:UML顺序图

UML顺序图 1、 UML2、 UML顺序图2.1 顺序图组成对象生命线消息 2.2 顺序图和用例登录用例 2.3 顺序图建模顺序图建模参考策略建立顺序图的步骤建立顺序图的示例 3、面对对象的设计原则3.1 特点3.2 层次3.3 注意点类设计需要强内聚&#xff0c;弱耦合可重用性框架 1、 UML 统一…

云计算:定义、类型及对企业的影响

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 云计算&#xff1a;定义、类型及对企业的影响 云计算&#xff1a;定义、类型及对企业的影响 云计算&#xff1a;定义、类型及对企…

【FPGA开发】AXI-Lite总线协议解读、Verilog逻辑开发与仿真、Alex Forencich代码解读

目录 AXI是什么AXI是如何工作的AXI-Lite定义AXI-Lite的关键特性AXI-Lite信号列表AXI-Lite信号时序时钟和复位握手机制写请求通道&#xff08;AW&#xff09;写数据通道&#xff08;W&#xff09;写响应通道&#xff08;B&#xff09;读请求通道&#xff08;AR&#xff09;读数据…

场地预约系统(源码+文档+部署+讲解)

本文将深入解析“场地预约系统”的项目&#xff0c;探究其架构、功能以及技术栈&#xff0c;并分享获取完整源码的途径。 系统概述 本项目名称为场地预约系统&#xff0c;是一款方便用户进行场地预约的系统。该系统主要包括用户管理、分类管理、活动管理、场地管理、提现管理…

MYSQL——事务管理

什么是事务 在数据库使用者角度&#xff0c;事务就是完成一个事件。例如一个员工信息数据库&#xff0c;要完成员工离职的事件&#xff0c;可能需要很多操作&#xff0c;比如删除员工基本信息以及员工在公司的表现&#xff0c;薪资水平等。而这一系列的操作就是为了完成员工离…

计算机网络基本概念总结

IP地址 概念 使网络中的设备都有唯一的地址标识&#xff0c;用于表示其在网络中的位置。 格式 IP地址是一个32位的二进制数&#xff0c;通常被分割为4个8位二进制数&#xff08;也就是4个字节&#xff09;&#xff0c;如&#xff1a;01100100.00001000.00001010.00000110。通常…

MySQL系列之如何在Linux只安装客户端

导览 前言Q&#xff1a;如何安装一个Linux环境下的MySQL客户端一、准备文件1. 确认Server版本2. 选择Client安装文件 二、下载并安装1. 下载1.1 寻找文件1.2 文件说明 2. 安装2.1 上传至Linux服务器2.2 执行安装 三、连接验证1. 确认远程授权2. 建立远程连接 结语精彩回放 前言…