网站建设开发费入什么科目企业如何建公司网站
2026/4/17 4:47:05 网站建设 项目流程
网站建设开发费入什么科目,企业如何建公司网站,天津建设工程信息网网上报名,金州网站建设简介 本文从非AI专业人士视角#xff0c;系统讲解了Transformer模型的前传知识。文章首先介绍处理序列数据的基本问题#xff0c;然后详细阐述了分词(Tokenization)和词嵌入(Word Embedding)的概念与方法#xff0c;分析了RNN在处理序列数据时的局限性#xff0c;最后解释…简介本文从非AI专业人士视角系统讲解了Transformer模型的前传知识。文章首先介绍处理序列数据的基本问题然后详细阐述了分词(Tokenization)和词嵌入(Word Embedding)的概念与方法分析了RNN在处理序列数据时的局限性最后解释了Attention机制的提出背景和基本原理。作者通过层层递进的讲解为理解Transformer架构奠定了基础适合AI初学者收藏学习。一、小白要怎么学习Transfomer对于每一个想要跨领域了解AI的人来说Transfomer是一座不可能绕过的高峰。经常看到AI offer的咨询广告会把Transfomer面试问题提出来说。不管是不是真的也不管有没有用提起这个让ChatGPT一举成名的架构都高低需要说上一两句主要是表现一种态度上的真诚bushi。但是对于一个完全零基础的人来说理解Transformer并不是一件容易的事。这个零基础的人就是我第一次装逼打开《Attention is all you need》然后骂骂咧咧退出去。我想说这篇文章真的不长而且引用文献仅有区区40篇但就是哪儿哪儿都让人觉得“雾草到底是什么”看看我的写写画画版本然后我去查找了一下关于Transformer的讲解资料感谢各路大神的无私奉献终于能够差不多知道Transformer架构是在干什么了。但主要停留在**“硬背”的层面就是记住“设计如此”好像是英语阅读这道题就是自然选C一样。**这很正常因为这篇《Attention is all you need》用了非常精炼的篇幅讲完一个简洁优雅的架构设计重点突出了Attention机制。但是你仔细看就会发现里面整合了很多纯熟的、经典的训练模型的技巧简直是各种技巧的集大成者完全想象不出作者是有着多么深厚的功底才能把这么多的东西糅合得举重若轻。如果一点都不了解前史就会心里充满了疑问这大大削弱了硬背效果。于是我希望找到一个辅助我自己理解问题的角度这个角度就是**Transformer从何而来**是为了解决什么问题而来怎么就能够想到这样“神来一笔”的架构于是有了这篇文章。这是一篇面向非AI专业朋友的Transformer前传从一个需要解决的问题开始一步一步往上叠加解决方案用来展示Transformer是在什么样的基础上形成的。这篇文章会从一个直觉的层面去简单介绍分词Tokenization词嵌入Word EmbeddingRNNAttention机制起源会稍微涉及一点模型我个人是觉得有了这些重要的铺垫对Transformer的理解会更加顺理成章。当然了这只是一种叙事不是真相。就当听了一个故事希望能给大家理解Transformer带来一丝灵感~关于Transformer本身的介绍我会放在下篇文章。不关注前史的朋友可以跳过这篇。二、一个古老而朴素的愿望对不起我要稍微偏题到盘古开天地的时候。有效的用计算机来处理**序列数据一直是学者们的愿望。什么是序列数据就是出场顺序有意义彼此之间非独立的一串数据**比如股市一个月的涨跌点数再比如自然语言。在自然语言领域学者们想要用计算机干很多事情。最自然的莫过于**“完成问答”就是我们如今跟ChatGPT交互的这种方式我们输入一串东西然后AI回答一串东西。还有就是实现机器翻译**我们输入一种语言让机器来翻译成为另外一种语言。把这类问题抽象一下可以统一表达为我们要设计一个系统让这个系统吸收一串序列数据在这里具体指自然语言然后预测跟着这串序列数据后面的是什么。这样问题就变成了要怎么去设计这个系统呢一直在更新更多的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】先不管其他东西我们首先面临的一个问题是——计算机是不懂语言的无法直接处理自然语言。没有被数字化的东西和计算机是有次元壁的。因此第一步是要让自然语言穿越到计算机的领域里面也就是用一串数字来表达自然语言。自然语言本身就是一个十分神奇的存在它是人类思想的一种投影它的表达是无穷的我们无法直接穷举世界上每一种自然语言表达来为其编码。但是好在组成自然语言的元素是有限的。英语现在就固定使用26个字母中文的基本字符要多一些但是普通人常用的词汇也就几千个。那么可行的办法就是把自然语言的基本组成元素用数字来表达。当学者们仔细去分析基本组成元素这个东西的时候一些微妙的情况出现了。拿英语来举例假如就使用26个字母作为基础元素来进行编码。基础元素的个数是控制得比较小但是一串序列表达起来很长这让计算复杂度增加。并且字母并不能表达单独的语义一个孤立的c你不能说明有什么含义这导致**单纯把字母给数字化意义有限**大语言模型要起作用需要进行非常复杂的学习。那么如果直接使用单词来作为基础的组成元素呢当然可以罗列出常用单词形成一个基础词汇表进行编码。但是这会导致词汇表很大可能直接扩充到百万级别。并且一旦有一个词汇没有在这个词汇表中出现过大模型就无法处理了。说白了还是词作为一个基础元素依然级别过高。于是大家想到需要**字母和词汇中间的**一个媒介——subwords子词级别来作为基础元素比如subword可能会被划分为sub和word两个部分。BPE(Byte Pair Encoding)和WordPiece就是两种流行的分词算法擅长从一大堆的语料中把作为语义最小单元的subwords给找出来形成一个大的基础元素表我们把这种基础元素叫做token。我们的数字化就从这里开始。分词算法会把最终找到的token集合和对应的索引返回。你可能会得到这样一个集合512 → “low”893 → “est”2765 → “##ing”现在有了基础元素集合并且每一个token都有数字ID。但是这个数字ID只是一个找到token的索引并不是对于某个token的实质的表达——就像是字典的页码并不能形容出词条真正的含义一样。我们转入了下一个问题要用什么来表达出这些token的语义实质一直在更新更多的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】四、万物皆可向量化embedding我们需要用数字来表达出token的实质一个索引数字是不够的那么多几个数字排列起来呢有一个用一串数字有序排列在一起的东西叫做向量。向量是一个极其简洁又强大的表达。我们用向量来数字化一个东西是一种非常自然的。想象一个东西如果你能够捕捉到它每一个维度的特征那么提起这串描述的时候是不是可以与它们背后的概念一一对应比如有一个实体存在的房子你用经度、纬度、面积、单位售价来描述它那么这个房子的实体投影到数字空间就是一个向量[117391203.2]。当然这个数字空间的投影是有信息损耗的房子肯定不止这4个维度但这是一种非常有用的抽象。你可以想象推到极端情况允许你用无穷多的维度来进行描述那么这个向量就可以无限逼近某个特定存在。甚至让想象再飞远一点如果能够某种方法量化关于你自己的所有维度那么你自己就可以穿越进入数字空间。向量完全是数值的这意味着是计算机可以处理的。向量是有几何意义的一个向量表达可以看成是空间中“点”的坐标。比如一个二维向量34是平面上的一个点一个三维向量是123三维空间中的一个点一个512维的向量是512维空间中的一个点。这让我们可以用这些点来衡量各种空间关系比如平移、远近、旋转。这有助于我们对向量抽象对象之间的关系进行理解。向量是可以运算的这种运算在数值意义和几何意义上都成立。这些特征让我们特别喜欢用向量来作为运算的对象。于是我们的问题就变成了要如何用向量来表达我们已经确认为基础元素的token呢第一步当然是要确认我们要用多少个维度来描述token。这个其实并没有什么确定的结论更多的是一些经验数据——下至128维上至2048维都有学者使用。也有的学者们用控制变量法研究过词嵌入维度对于模型表现的影响看起来过高的维度对模型表现提升有限Britz et al.,2017。下图展示了“词嵌入维度”不同带来的“参数量级”以及“模型表现”的不同。可以看见词嵌入维度更多是学者们依据实验情况和算力约束自行权衡决定的。现在让我们保持跟Transformer论文一样的选择就是512维。对于一个token“sub”我们要用512向量来代表它但是每个维度的数值到底应该是多少呢维度多了之后每一个维度的含义并不是我们人为显式定义的更别说人为去确认具体数值了。这个时候就要用到我们的万能解法——神经网络模型让它自己去学习每一个维度应该是什么数值。首先我们先给基础元素表里每一个token一个初始化的向量直接暴力用随机数填充所有维度就行了。接下来的问题是要怎么学习我们知道监督式学习是需要把正确答案提供给模型的这样模型才能够依据答案修正自己的参数。但是对于“要把token转换为向量”这个问题也就是embedding问题正确答案是什么我们根本不知道毕竟token变成向量之后我们人类就无法解读了。我们只能够从侧面去形容一下什么答案是我们喜欢的比如我们喜欢这个向量能够表达出语义的相似性apple和orange之间的距离比apple和hemmer之间的距离近。我们喜欢这个向量能够表征关系比如经典的king - man woman queen。直接解不行那么更加暴力的解法就是就用这些随机的向量代表tokens扔到一项语言学习任务中去使用给它们加上一层变换也就是乘以一个系数矩阵W。这样模型在学习语义任务的过程中自然就学到了一个参数矩阵W用这个参数W乘以原来的token向量就得到了模型通过学习调整后的向量word2vec就是一系列这样把词汇变成向量的研究提出了两个流行又简单的模型——CBOWContinuous Bag of Words和skip-gram来实现词嵌入。它们都围绕着一个思想那就是“一个词究竟是什么是由经常出现在它周围的词汇一起来定义的”。emmm就像是人是社会关系的总和你的社会关系交织在一起定义了你经常和某个词汇一起出现的上下文定义了这个词汇的含义。CBOW训练的是这样一个语言任务知道上下文预测中间一个词是什么。skip-gram就反过来知道中心词是什么预测固定窗口下的上下文是什么。模型在这两个任务上训练好模型找出来的词嵌入方法就是好方法。作者在发表了论文之后还公开了自己训练的代码和已经训练好的向量后续的语言类任务就可以用这套已经嵌入好的向量作为基础或者是使用相同的方法来训练自己的向量。当然也可以在自己的语言任务中来端到端的训练词嵌入。好了现在已经有了一个自然语言的基础元素表也把这些基础元素用向量表达了出来。回到我们的问题要怎么让模型吸收一串自然语言表达然后预测出下一个token是什么呢五、一种处理上文的办法RNNs对于语言任务或者说对于一系列跟序列数据相关的任务来说上下文是重要的。要透彻地理解一个词的含义就一定要看那个词出现的语境。我们上面讲到的word2vec的办法虽然能够在一定程度上表达出token的语义但它是从一个比较宏观的视角来表达的。就像是在写一本新华词典抽离了非常具体的语境。但我们在做“问答”或者是“翻译”的时候语义是微妙的语境是细分的“good”是在反讽还是夸奖不放在具体的情景里面你根本就分不出来。这就意味word2vec只是处理自然语言任务的一个起点我们需要更加巧妙的办法把上文信息进行编码才能更好地进行预测。“上文信息不要丢掉一直通过编码进行传递到直到最后得出一个向量”这件事RNN就开始做了。简单来说最最最朴素的想法就是在输入第一个token之后把这个信息进行处理然后存下来等到下一个输入来了**把存下来的信息想办法跟新的信息融合在一起**再进行处理。这种设计导致RNN处理序列是一个串行的操作对于一个拥有1000个token的序列来说RNN要一个一个一个进行计算计算时间很长。更加致命的是RNN会把第一个token的信息通过一个共享的参数矩阵依次传递下去这产生了参数矩阵的累乘在训练中容易导致梯度爆炸或者梯度消失。简言之要么就是训练收敛不了要么就是直接遗忘早期的信息。但它们始终是在RNN的框架下并没有把串行处理的问题解决掉并且LSTM也会在长序列上产生遗忘。六、Attention机制的提出Attention机制并不是由Transformer那篇论文首次提出的而是来自2015年的一篇文章——《NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE》。曾经流行的翻译类任务处理的结构是这样的设计一个encoder一个decoder。这个encoder多半有RNN/CNN结构用来把一串序列信息全部编码进入最后一个固定长度的向量里面。这个decoder就负责把这个压缩了完整序列信息的向量解码出来跟自己的历史预测融合在一起给出当前这一步的回答。学者们Bahdanau et al., 2015猜测这个用“固定长度向量压缩序列所有信息”的方式成为了提升模型表现的瓶颈。从直觉上也感觉到不合理就好像一个内存固定的硬盘你不可能往里面塞入任意多的信息它的储存空间是有限的。在“信息传递的窗口”始终是有限的这个前提下怎么处理超长序列一个比较自然的想法是在翻译一个token的时候找到跟这个token**“最有关的信息”**传递下去而不是无脑把全部信息抛给下游——这就叫做“Attention”~也就是说如果我们有一种衡量方式使得我们能够判断**“输入”的所有词语对于“当前这一步预测”的重要性**我们就可以“按照重要性”来把输入词语进行“加权平均”这会让模型的decoder更加专注于那些“权重大”的输入。输入词语相对于输出词语之间的“重要性权重”是模型在完成**“翻译”任务中学习出来的**而不是人为指定的。为了理解Attention在干什么我还是会简单介绍论文里面的模型如果看起来感觉有点困难的话强烈建议先看一下上面提到的讲解简单RNN的文章。如果不想看也没有关系记住刚刚提到的Attention机制是为了“把最相关的信息找出来加权平均”就可以了之后可以直接跳转到讲解Transformer的文章。论文使用了双向RNN和前面提到的encoder和decoder架构。长这个样子假设输入的序列是[x_1, x_2, x_3…x_T]encoder是一个双向RNN也就是把数据按照“正序”依次输入模型生成一系列隐藏状态然后再把数据按照“逆序”输入模型生成一系列的隐藏状态这样对于任意一个时间步tencoder都能够看到双向的信息也就是有下面这个拼接向量带来的信息对于任意一个时间步t模型输出的其实是一个条件概率分布。也就是把已知信息作为“条件”然后输出一串0-1之间的数字这串数字对应着具体的token——表示当前这个时间步对应token出现的概率。最后大模型会选择“概率高”的token成为真实的输出。要怎么样估计条件概率使用下面这样一个函数先不管这个g函数长什么样子让我们来分别介绍一下条件概率的决定因素y_(i-1)、s_i和c_i。y_(i-1)很好理解就是模型上一步的真实预测。s_i是一个难理解一点的概念注意看模型的这个结构图s_i是由模型真实历史预测经过处理形成的RNN隐藏状态。它的计算方式见下方公式保留了经典RNN隐藏状态的结构由**“上一个”隐藏状态s_(i-1)**、上一个真实预测y_(i-1)和一个由论文提出来的新变量c_i共同决定。这个神秘的c_i被论文称为上下文向量context vector就是Attetion机制的核心。我终于讲到这里了bushi这个c_i计算方式如下就是一连串h_j加权平均得到的记得这个h_j吗是encoder双向RNN形成的隐藏状态对于任意一个h_j加权系数alpha_ij的算法是其中加权系数其实就是把e_ij带入了一个Softmax函数这样带入是为了把计算出来的e_ij转化成0-1之间并且“和”也为1的形式让它能够代表权重。真正重要的是这个e_ij。e_ij表达的就是**“输出i”用s_(i-1)来传递信息与“输入j”用h_j来传递信息**之间的相关性。这个函数a在实现上是一个“学会找相关性”的前馈神经网络现在还不知道长什么样是在训练过程中一起训出来的。象征相关性的alpha_ij与h_j的乘积表示“输入j”对于“输出i”的贡献。看到了吗绕了这么一大圈就是想要在输出y_i的时候考虑一下输入序列[x_1,x_2…,x_T]中哪些信息与y_i相关然后调整对应权重。作者把这个方法称为一种“自动软搜索automatically soft-search”。最后作者提出的这种模型在翻译数据集上的BULES得分要高于传统的RNN架构模型。把刚刚提到的相关性分数alpha_ij给打印出来会发现它展示了“被翻译句子”和“翻译结果”之间的一种对应关系。在上图中顶端是被翻译的句子左侧是翻译结果格子的颜色越白代表相关性越高。可以看见模型正确地将短语 [European Economic Area] 翻译成了 [zone économique européen]。**注意在这个短语里面英语和法语词汇的顺序是不一致的。**但是这个拥有了Attention机制的模型能够正确对齐 [zone] 和 [Area]跳过了两个单词[European] 和 [Economic]然后每次回看一个单词最终完成了整个短语 [zone économique européen] 的翻译。与显式地划分单词的对应关系相比这种方式的灵活性大大提高。到这里Attention机制出现了让模型能够自动化搜索然后专注于“最相关”的信息来做任务。但是我们可以看见这个模型还是在使用RNN结构上面我们提到的RNN结构串行计算慢梯度爆炸、梯度消失的问题并没有被解决。那么下次伟大的Transformer就要来大展宏图了。七、如何系统的学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线互联网企业工作十余年里指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限很多互联网行业朋友无法获得正确的资料得到学习提升故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。一直在更新更多的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】01.大模型风口已至月薪30K的AI岗正在批量诞生2025年大模型应用呈现爆发式增长根据工信部最新数据国内大模型相关岗位缺口达47万初级工程师平均薪资28K数据来源BOSS直聘报告70%企业存在能用模型不会调优的痛点真实案例某二本机械专业学员通过4个月系统学习成功拿到某AI医疗公司大模型优化岗offer薪资直接翻3倍02.大模型 AI 学习和面试资料1️⃣ 提示词工程把ChatGPT从玩具变成生产工具2️⃣ RAG系统让大模型精准输出行业知识3️⃣ 智能体开发用AutoGPT打造24小时数字员工熬了三个大夜整理的《AI进化工具包》送你✔️ 大厂内部LLM落地手册含58个真实案例✔️ 提示词设计模板库覆盖12大应用场景✔️ 私藏学习路径图0基础到项目实战仅需90天第一阶段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%免费】

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询