这次终于能把Transformer弄清楚了!从入门到精通(非常详细)看这一篇就够了!

你将学习到的内容: 本文将深入探讨Transformer架构,这是当今几乎所有尖端大型语言模型架构的核心组成部分。

首先,我们将简要回顾一些与自然语言处理(NLP)相关的基本概念,随后逐步解析Transformer的工作原理。

适用人群: 本文适合对自然语言处理(NLP)感兴趣的任何人阅读。

文章难度: 尽管本文并不复杂,但由于涉及众多概念,可能对新手来说有一定的难度。

先决条件: 为了更好地理解本文内容,大家需要对标准神经网络有基本的工作理解,还需要对嵌入、编码器和解码器有初步认识。

Transformer之前的NLP简史: 在深入探讨Transformer之前,我们简要介绍一些必要的概念和技术背景。

如果你已经熟悉这些内容,可以选择跳过此部分。其中,词向量嵌入是理解自然语言处理的基础,它通过将单个单词转换为向量来代表其含义。

词汇向量嵌入器的职责:将词汇转化为数字,以某种方式捕捉词汇的普遍含义。

虽然具体的实现方法可能因技术而异,但最终生成的成果可以视作一个“词空间”,这个空间遵循着一定的逻辑和关系。

单词本身在数学上难以直接运算,但蕴含单词信息的向量以及它们之间形成的关联,却便于数学操作。

这种将单词转化为向量的过程,我们通常称之为“嵌入”。Word2Vec,作为自然语言处理领域的一篇标志性论文,旨在生成具备特定实用特性的嵌入。

研究者们希望单词之间能够进行代数运算,而Word2Vec正是为了实现这一目标而创建的。

利用Word2Vec,当你嵌入“king”的向量,减去“man”的嵌入向量,再加上“woman”的嵌入向量,你将得到一个与“queen”含义相近的向量。

词汇嵌入的代数运算概念展示:如果将每个点视为从原点出发的向量,当你从“king”(国王)的向量中减去“man”(男人)的向量,并加上“woman”(女人)的向量时,得到的结果向量会接近于“queen”(女王)的向量。实际上,这些嵌入空间的维度要高得多,而“接近度”的度量标准也可能不太直观(如余弦相似度),但基本原理是相同的。

随着技术的不断进步,词嵌入仍然扮演着至关重要的角色,其中GloVe、Word2Vec和FastText都是备受推崇的选择。虽然子词嵌入通常展现出比全词嵌入更强大的性能,但这一话题已超出了本文范围。

以上的AI大模型学习资料,都已上传至CSDN,需要的小伙伴可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

递归神经网络(RNNs)

当我们能够将单词转换为具有特定意义的数字向量时,便可以开始深入分析单词序列。

早期的一种有效策略是利用递归神经网络(RNNs),这种网络能够训练自身在顺序输入上循环运行,从而捕捉序列中的依赖关系。
RNN(循环神经网络)的基本概念:它是一种普通的全连接神经网络,但会将输出反馈到自身。

RNN的示意结构(假设有3个隐藏神经元并用于处理2个输入):图中红色箭头表示递归连接,它连接着来自后续递归层的信息。蓝色箭头表示内部连接,类似于密集层。为了说明起见,我们复制了神经网络,但请记住,网络实际上是反馈到自身的,这意味着第二个(及后续)模块的参数与第一个模块相同。

与传统神经网络不同,递归神经网络(RNNs)通过在循环连接中重用相同的参数,能够处理任意长度的序列。

这意味着,无论是长度为10的序列还是长度为100的序列,RNNs都只需要相同数量的参数。

这种网络结构因其灵活性而被广泛应用于多种建模问题,这些问题通常可以归纳为序列到序列建模、序列到向量建模、向量到序列建模,以及序列到向量再到序列的建模。

不同建模策略中RNN的一些应用概念图:序列到序列模型可能用于预测文本补全中的下一个单词;序列到向量模型可能用于评估客户对评论的满意度;向量到序列模型可能用于将图像压缩为向量,并要求模型将该图像描述为一系列文本;序列到向量到序列模型可能用于文本翻译,需要理解句子,将其压缩为某种表示,然后在另一种语言中构建该压缩表示的翻译。

尽管递归神经网络(RNNs)理论上能够处理无限长度的序列,但这一承诺在实际应用中并不完全实用。

由于RNNs的每一层都共享相同的权重,它们在处理长序列时容易出现“遗忘”输入内容的问题。

因此,RNNs在实际应用中通常只适用于处理非常短的单词序列。

为了克服这一局限性,研究者们曾尝试通过引入“门控”和“泄露”机制来改进RNNs。

其中最著名且有效的改进是长短期记忆网络(LSTM),我们将在下一节中对其进行详细描述。

长短期记忆(LSTMs)

LSTM(长短期记忆网络)的设计初衷是为了增强递归神经网络在保留重要信息方面的能力。

LSTM具备短期和长期记忆功能,能够在序列的任意位置中,选择性地保留或遗忘某些信息到其长期记忆中。

LSTM

LSTM的三个关键子组件

LSTM(长短期记忆网络)的核心概念体现在其三个关键的子组件上:“遗忘门”负责筛选并遗忘部分旧的长期记忆信息,“输入门”则负责将新的信息加入到长期记忆中,而“输出门”则负责控制从长期记忆中提取的信息,并将其作为下一次迭代的短期记忆使用。
LSTM中的参数。这个特定的LSTM期望一个维度为3的输入向量,并持有维度为2的内部状态向量。向量的维度是一个可配置的超参数。此外,请注意每个门控后面的“S”和“T”。它们分别代表sigmoid或tanh激活函数,用于将值压缩到一定的范围内,如0到1或-1到1。这种“压缩”使得网络能够“忘记”并“记忆”某些信息。图片由作者绘制,深受来源启发。

LSTM及其类似架构如GRU,相较于经典的RNN,展现出了显著的改进。

它们将记忆作为一个独立的概念,能够检查和提取关键信息,这使得它们在处理序列数据方面更具优势。

然而,尽管LSTM能够建模更长的序列,但在许多语言建模任务中,它们仍面临记忆遗忘的问题。

此外,由于LSTM和RNN一样,都依赖于前序输入进行逐步计算,因此它们的训练过程难以并行化,导致训练速度相对较慢。

通过对齐实现注意力机制

划时代的论文《通过联合学习对齐和翻译实现神经机器翻译》普及了注意力机制的概念,并为Transformer中的多头自注意力机制奠定了基础。

简单来说,注意力机制允许模型在生成输出时查看所有潜在的输入,并根据需要选择性地关注与当前输出相关的输入。换句话说,它赋予了模型决定哪些输入在特定时刻是重要或不重要的能力。

这种方法在翻译任务中产生了深远的影响。

它使模型能够更准确地捕捉输入中的关键信息,从而在翻译过程中展现出前所未有的性能。

正方形代表词汇向量嵌入,圆圈代表中间向量表示。红色和蓝色的圆圈是循环网络的隐藏状态,而白色的圆圈是通过对齐机制由注意力机制创建的隐藏状态。关键点是,注意力机制可以选择在任何给定步骤中呈现给输出的正确输入。

以上的AI大模型学习资料,都已上传至CSDN,需要的小伙伴可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

Transformer

在前面的章节中,我们了解了一些基础。

接下来,我们将重点转向Transformer,这是一个集结了前人的成功智慧和新颖思想的杰作,它彻底革新了自然语言处理领域。

Transformer

我们将逐步拆解Transformer的每一个组成部分,深入探讨每个模块的工作原理。

虽然涉及的内容相当丰富,但我们会尽量避免复杂的数学推导,确保概念易于理解。

架构

Transformer本质上是一种编码器/解码器风格的模型,与我们之前探讨的序列到向量再到序列的模型类似。

编码器负责接收输入并将其转化为一个能够表达整个输入意义的紧凑表示,而解码器则基于这个嵌入,递归地构建并生成输出。

简述在序列到向量到序列任务中工作的转换器:输入(例如“我是一名经理”)被压缩成某种抽象表示,该表示编码了整个输入的意义。解码器以递归的方式工作,就像我们之前讨论的RNNs一样,以构建输出。

输入嵌入和位置编码

原始图中的输入嵌入

Transformer的输入嵌入策略与我们之前讨论的方法类似,它利用类似于Word2Vec的词空间嵌入器将输入单词全部转换为向量。

这些嵌入向量是与模型一同进行训练的,实际上可以看作是一个随模型学习而不断优化的查找表。

在初始阶段,每个单词都对应一个随机初始化的向量,但随着模型的学习过程,这些向量会根据每个单词在上下文中的表现而逐渐调整和优化。

与递归神经网络(RNNs)逐步处理序列的方式不同,Transformers能够一次性地编码整个输入序列。

然而,由于这种处理方式,Transformer编码器可能会失去有关输入单词之间顺序位置的信息。

为了弥补这一缺陷,Transformer引入了位置编码,以确保模型能够识别序列中单词的顺序。

如何学习大模型 AI ?

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

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

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

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

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

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

在这里插入图片描述

第一阶段(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%免费
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值