一文彻底搞懂大模型 - 语言模型的发展历程

news2024/9/28 19:23:02

语言模型的发展历程

语言模型(LM,Language Model)的发展历程可以清晰地划分为三个主要阶段:统计语言模型、神经网络语言模型以及基于Transformer的大语言模型。每个阶段的模型都在前一个阶段的基础上进行了改进和优化,使得语言模型的性能得到了显著提升。

语言模型的发展历程

一、统计语言模型

什么是统计语言模型?统计语言模型是早期自然语言处理(NLP)中的重要工具,它们主要通过分析词序列的出现频率来预测下一个词**。****这种方法基于统计学的原理,**利用大规模语料库中的词频信息来建模语言的概率分布。

代表模型:N-gram模型、隐马尔可夫模型(HMM)

  1. N-gram模型:这是最常见的统计语言模型之一,它基于马尔可夫假设,认为一个词出现的概率仅与其前面的n-1个词有关。N-gram模型简单易用,但存在数据稀疏和无法捕捉长距离依赖关系的问题。

  2. 隐马尔可夫模型(HMM):另一种重要的统计语言模型,通过引入隐藏状态来捕捉序列数据中的潜在结构。

统计语言模型

N-gram模型:N-gram模型是一种基于统计语言模型的文本分析算法,它用于预测文本中下一个词出现的概率,基于前面出现的n-1个词的序列。这里的n代表序列中元素的数量,因此称为N-gram。

  • Unigram:N=1,每个单词的出现概率独立计算,不考虑上下文。

  • Bigram:N=2,基于前一个单词预测当前单词的联合概率模型。

  • Trigram:N=3,考虑前两个单词来预测当前单词的联合概率模型,更复杂但可能更准确。

N-gram

N-gram模型的工作原理:N-gram模型通过统计语料库中n-gram序列的频率,估计给定前n-1个元素后下一个元素出现的概率,从而实现文本预测。

  1. 语料库准备:首先,需要有一个大型的文本语料库,用于训练N-gram模型。

  2. 计算频率:然后,计算语料库中所有可能的n-gram序列的频率。

  3. 概率估计:根据这些频率,可以估计出给定n-1个词后,下一个词出现的概率。

  4. 预测:在预测阶段,给定一个词序列的前n-1个词,模型可以输出下一个词的概率分布,从而可以选择最可能的词作为预测结果。

N-gram

二、神经网络语言模型

什么是神经网络语言模型?随着深度学习技术的发展,神经网络开始被应用于语言建模任务中。神经网络语言模型通过引入神经网络结构来捕捉词与词之间的复杂关系,从而提高了语言模型的性能。

代表模型:**NNLM、RNN、LSTM、GRU

  1. 神经网络语言模型(NNLM):由Bengio等人提出,通过嵌入层将单词映射到连续的向量空间中,并通过多个隐藏层来学习语言的内部结构。NNLM能够捕捉词与词之间的语义关系,提高了语言模型的预测能力。

  2. 循环神经网络(RNN)及其变体(LSTM、GRU):RNN通过引入循环连接来处理序列数据中的长期依赖关系。LSTM和GRU是RNN的改进版本,通过引入门控机制来解决梯度消失或梯度爆炸问题。

神经网络语言模型

NNLM:一种基于神经网络的方法来建模自然语言中的词语序列。与传统的统计语言模型(如n-gram模型)相比,NNLM能够捕捉更复杂的语言结构和语义信息,因为它利用了神经网络强大的非线性建模能力。

  • **原理:**利用神经网络来预测文本序列中下一个词或字符出现的概率的模型。

  • 目的:通过建模词汇之间的概率关系,实现自然语言文本的生成或理解。

NNLM


NNLM******的工作原理:******通过嵌入层将输入的固定长度前文单词序列转换为连续向量表示,然后利用一个或多个隐藏层学习这些向量的语言结构,最后由输出层输出下一个单词的概率分布,以最大化给定前文条件下的单词预测准确性。

  • 输入:NNLM的输入是一个固定长度的前文单词序列,用于预测下一个单词。每个单词通常由其词嵌入(word embedding)表示,即将单词映射到连续的向量空间中。

  • 结构:NNLM通常包含一个嵌入层(embedding layer),用于将输入的单词转换为连续向量表示;一个或多个隐藏层(hidden layers),用于学习输入序列的语言结构;以及一个输出层(output layer),输出下一个单词的概率分布。

  • 训练目标:最大化给定训练数据中序列的联合概率,即最大化给定前文单词的条件下,下一个单词出现的概率。这通常通过最小化负对数似然(negative log-likelihood)来实现。

NNLM


三、基于Transformer的大语言模型

什么是基于Transformer的大语言模型?基于Transformer的大语言模型在预训练阶段利用大规模语料库进行训练,然后在特定任务上进行微调,取得了惊人的效果。

代表模型:BERT、GPT系列

  1. BERT:由Google提出的一种基于Transformer的双向编码器表示模型。BERT在预训练阶段采用了遮蔽语言模型(Masked Language Model)和下一句预测(Next Sentence Prediction)两个任务来训练模型,提高了模型的语言表示能力。

  2. GPT系列:由OpenAI开发的基于Transformer的生成式预训练模型。GPT系列模型在预训练阶段采用了自回归语言建模任务来训练模型,能够生成连贯、自然的文本。随着模型规模的增大(如GPT-3、GPT-4等),GPT系列模型在多个NLP任务上取得了优异的表现。

基于Transformer的大语言模型

Transformer模型:Transformer模型由Vaswani等人在2017年提出,是一种基于自注意力机制的深度学习模型。它彻底摒弃了传统的循环神经网络结构,通过自注意力机制和位置编码来处理序列数据中的长期依赖关系和位置信息。

Transformer

  1. Encoder-Decoder Architecture(编码器-解码器架构)

  • Transformer模型通常包含编码器和解码器两部分。

  • 编码器负责将输入序列转化为上下文向量(或称为隐藏状态),这些向量包含了输入序列的语义信息。

  • 解码器则利用这些上下文向量生成输出序列。在生成过程中,解码器会逐步产生输出序列的每个token,并在每一步都考虑之前的输出和编码器的上下文向量。

  1. Embedding(向量化)
  • 在自然语言处理(NLP)中,输入的文本内容(如句子、段落或整个文档)首先被拆分成更小的片段或元素,这些片段通常被称为词元(tokens)。

  • Embedding层负责将这些tokens转换为固定大小的实数向量,以捕捉这些tokens的语义信息。这个过程是通过查找一个预训练的嵌入矩阵来实现的,其中每一行代表一个token的向量表示。

  1. Attention(注意力机制)
  • 注意力机制的核心是计算查询向量(Q)、键向量(K)和值向量(V)之间的相互作用。对于每个token,它有一个对应的查询向量,而整个输入序列的tokens则共享一套键向量和值向量。

  • 通过计算查询向量与每个键向量的相似度(通常使用缩放点积注意力),得到一组注意力权重。这些权重表示了在生成当前token的表示时,应该给予其他token多大的关注。

  • 最后,将注意力权重应用于值向量,并进行加权求和,得到当前token的自注意力输出表示。

  1. Position Encoding(位置编码)
  • 由于Transformer模型本身无法识别序列中token的位置顺序,因此需要引入位置编码来补充这一信息。

  • 位置编码可以是预定义的(如正弦和余弦函数)或可学习的参数。这些编码被添加到每个token的嵌入向量中,以帮助模型区分不同位置的token。

  1. Multi-Head Attention(多头注意力机制)
  • 多头注意力机制是自注意力机制的扩展,它允许模型在不同的表示空间中同时关注信息的多个方面。

  • 通过将输入序列的嵌入向量分割成多个头(即多个子空间),并在每个头中独立计算自注意力,然后将这些头的输出拼接在一起,最后通过一个线性变换得到最终的输出表示。

  • 多头注意力机制能够捕获更复杂的语义关系,增强模型的表达能力。

  1. Feed-Forward Network(前馈网络)
  • Transformer中的编码器和解码器都包含前馈网络(也称为全连接层)。

  • 前馈网络用于进一步处理和转换注意力机制提取的特征,提取和整合更多有用的信息,以生成最终的输出表示。

  1. Residual Connection and Layer Normalization(残差连接和层归一化)
  • 在Transformer的每个子层(如多头注意力层、前馈网络层)之后,都会添加残差连接和层归一化操作。

  • 残差连接有助于缓解深层网络中的梯度消失问题,而层归一化则有助于加速训练过程并提高模型的稳定性。

Transformer

如何学习大模型 AI ?

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

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

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

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

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

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

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

👉1.大模型入门学习思维导图👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)
在这里插入图片描述

👉2.AGI大模型配套视频👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。

在这里插入图片描述
在这里插入图片描述

👉3.大模型实际应用报告合集👈

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)

在这里插入图片描述

👉4.大模型落地应用案例PPT👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程文末领取哈)

在这里插入图片描述

👉5.大模型经典学习电子书👈

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

在这里插入图片描述

👉6.大模型面试题&答案👈

截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。

在这里插入图片描述

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

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

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

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

相关文章

[000-01-008].第02节:Consul在实际中应用

我的后端学习大纲 SpringCloud学习大纲 1.使用Consul后&#xff0c;服务架构设计&#xff1a; 2.实现把支付服务provider8001注册到consul中 2.1.改POM&#xff1a; <!--SpringCloud consul discovery --> <dependency><groupId>org.springframework.cloud&…

超详细超实用!!!java开发之接口开发链接数据库(五)

云风网 云风笔记 云风知识库 日常项目接口开发&#xff0c;基本都是通过数据库获取存储数据通过接口反馈给前端&#xff0c;所以我们需要给项目连接上数据库 一、项目安装依赖 1、MySQL数据库 MySQL是一个关系型数据库管理系统&#xff0c;一般优势就是免费开源、易用、稳定性…

Spring 事务 数据库连接获取和释放原理

##调试demo Service public class CrmUserService {Autowiredprivate CrmUserDao crmUserDao;Autowiredprivate CrmLoginLogDao crmLoginLogDao;Transactionalpublic void getUser() {System.out.println("Service::"Thread.currentThread().getName());System.out.…

趣味算法------单一背包问题(01背包问题)贪心算法解决

目录 ​编辑 前言 例题 题目描述 输入输出格式 解题思路 具体代码 C语言代码 python代码 总结 前言 单一背包问题&#xff08;0-1 Knapsack Problem&#xff09;是组合优化中的一个经典问题&#xff0c;它可以形式化为&#xff1a;给定一组物品&#xff0c;每个物品都…

微信小程序SSL证书

微信小程序开发投入项目使用就需要用到SSL证书&#xff0c;主要原因SSL证书是让服务器的数据采取加密协议传输&#xff0c;避免来自中间人劫持或数据泄漏&#xff0c;所以在小程序交互数据过程中起到了关键性的作用。 为考虑到多个手机版本的兼容性&#xff0c;所以微信小程序…

Linux提升篇-Linux虚拟网络介绍

一、Linux虚拟网络-网桥 和tap/tun、veth-pair 一样&#xff0c;Bridge 也是一种虚拟网络设备&#xff0c;所以具备虚拟网络设备的所有特性&#xff0c;比如可以配置 IP、MAC 等。 除此之外&#xff0c;Bridge 还是一个交换机&#xff0c;具有交换机所有的功能。 对于普通的网…

移远通信精彩亮相IOTE 2024:探究技术融合,展望智慧未来

8月28-30日&#xff0c;IOTE 2024 第二十二届国际物联网展在深圳正式拉开帷幕&#xff0c;此次活动汇聚全球800家参展企业、10万来自工业、物流、基础建设、智慧城市、智慧零售领域的集成商、终端用户参观展会。 延续着2023年的辉煌成果&#xff0c;在2024 IOTE展上&#xff0c…

Mamba介绍,和Transformer对比

本文根据“一文看懂Mamba&#xff0c;Transformer最强竞争者”&#xff08;机器之心 编辑&#xff1a;Panda&#xff09;一文修改&#xff0c;并补充了一些新的观点。 在深度学习领域的广阔天地中&#xff0c;随着技术的不断进步&#xff0c;对更高效、更强大模型架构的探索从未…

Anaconda和Pycharm超详细安装教程(2024版本)!pycharm配置anaconda运行环境!

目录 一、anaconda下载安装 二、pycharm配置anaconda环境 工欲善其事&#xff0c;必先利其器。 安装包、激活码&#xff08;pycharm、anaconda、python&#xff09;点击领取 一、anaconda下载安装 1. Anaconda介绍 Anaconda 是一个基于 Python 的数据处理和科学计算平台&…

Dell 服务器 PowerEdge T440 驱动器故障

目录 1.故障&#xff1a;Dell 服务器 PowerEdge T440 驱动器指示灯闪烁 2.解决方案 1.故障&#xff1a;Dell 服务器 PowerEdge T440 驱动器指示灯闪烁 2024年8月30日 Dell PowerEdgeT440 驱动器指示灯琥珀色闪烁 查看 RAID5 磁盘组属性 显示 Virtual Disk 0:RAID5 降级 De…

Yolov10(yolov8代码里兼容版本)推理代码解析,抛去nms,大道至简

一、模型的输出头 下载官方的yolov8代码库https://github.com/ultralytics/ultralytics 打开ultralytics/nn/modules/head.py&#xff0c;主要需要看一下模型的输出头是如何做训练和预测推理。 v10检测头继承与常规的检测头Detect&#xff0c;初始化里重构了一下分类的输出头…

pacs图像打不开怎么办 --日常工作总结

先强调一下,我不是专门做图像入库和图像归档,我负责的是临床这边的影像,下面是占在我的业务日常分析总结的哈,(不太专业,勿喷) 我们经常会遇到在打开某个检查的时候,出现黑框,日志定位wado服务取不到图 这种情况一般分为 (1) 工作站,工作组,路由,存储卷配置缺失 ---对应的wad…

【C语言从不挂科到高绩点】05-流程控制语句-switch语句

Hello&#xff01;彦祖们&#xff0c;俺又回来了&#xff01;&#xff01;&#xff01;&#xff0c;继续给大家分享 《C语言从不挂科到高绩点》课程 本套课程将会从0基础讲解C语言核心技术&#xff0c;适合人群&#xff1a; 大学中开设了C语言课程的同学想要专升本或者考研的…

Linux上启动redis

1.默认启动方式:在系统的任意位置执行 redis-server即可启动 ps:这是前端界面启动&#xff0c;无法直接连接redis&#xff0c;想要连接的话只能另外启动一个窗口&#xff0c;因此下面我们介绍后台启动redis 2.指定配置启动&#xff1a; redis的配置文件位置&#xff1a…

二叉树的基本知识

&#xff08;写给未来遗忘的自己&#xff09; 1.二叉树的种类 1. 满二叉树&#xff1a;所有分支都有数&#xff08;都填满&#xff09; 2. 完全二叉树&#xff1a;除了最底层没填满外其他的都满了&#xff0c;而且最底层从左到右是存在数的位置是连续的 3.二叉搜索树&#xf…

大学开学必备好物清单有哪些?开学必备清单大全,超详细版!

即将踏入大学校园的新生们&#xff0c;是否已经准备好迎接全新的挑战与机遇呢&#xff1f;在开学之前&#xff0c;将必备物品筹备妥当是极为重要的事情&#xff0c;因为这能够助力大家更为良好地适应大学生活。接下来&#xff0c;为大家提供一份实用的大学生开学必备物品清单&a…

性能测试面试题总结

最近这一年&#xff0c;对性能测试有了更多的认知。 压力、强度测试&#xff1a;在一定软硬件环境下&#xff0c;通过高负载的手段来使服务器资源&#xff08;强调服务器资源&#xff0c;硬件资源&#xff09;处于极限状态&#xff0c;测试系统在极限状态下长时间运行是否稳定…

大模型微调---qwen实战

一、Qwen大模型的介绍 Qwen是阿里云开发的大语言模型&#xff0c;整个qwen系列的模型&#xff0c;由base模型、rm模型、chat模型、code模型、math模型等等。 qwen采用chatml样式的格式来进行模型训练&#xff0c;chatml格式可以时模型有效区分各类信息&#xff0c;可以增强模…

blender插件库

插件安装教程&#xff1a;blender4.2中安装插件的方式-CSDN博客 blender官网插件库地址&#xff1a;Add-ons — Blender Extensions 1&#xff0c;ExtraObjects&#xff1a;提供更多网格形状&#xff0c; 链接:https://caiyun.139.com/m/i?2gov6Lw5RAib8 提取码:0ayj 复制内…

有向图的转置:算法分析与实现

有向图的转置:算法分析与实现 前言1. 邻接链表表示法2. 邻接矩阵表示法结论前言 在计算机科学中,图是一种非常重要的数据结构,用于表示对象之间的复杂关系。有向图(Directed Graph)是一种图,其边具有方向性。有向图的转置(Transpose)是一种基本操作,它将图中所有边的…