赞
踩
解释这些概念
机器学习下就有很多分支了,例如监督学习、无监督学习、强化学习
深度学习具有这三类学习的一些特点,也有自己的模式,属于都有点但都不是的状态
关于深度学习的核心就是两个词,连接、深度
连接的意思是说,采用了类似于神经元的模式,互相连接;而深度则是指一层一层的神经元来进行映射。
深度学习有一个很经典的应用就是识别手写的数字,通过输入,进行一层一层的运算,让计算机逐渐掌握这些数字更深层次的特征,从而输出正确的结果。
关于深度学习的过程一般有如下几个步骤
数据准备、模型构建、损失函数定义、优化器选择、模型训练、模型评估与调优、模型应用与部署
这些步骤里面最最重要的其实是模型训练这一步
这里有一些基本步骤的概念:
那么生成式AI其实就是深度学习的一种应用,而大语言模型并不都是生成式AI,生成式AI也不都是大语言模型,例如文生图、文生视频,还有谷歌的Bert模型都是特例。
大语言模型又称为LLM(large language model)是一种利用自然语言的深度学习的模型
简单说就是给一些输入,就会返回一定的输出,在这个过程中仿佛就有了理解,记忆的能力
他能完成的任务就很多了,可以是续写,翻译,总结,对话等。
它的“大”一是体现在训练的数据量巨大,用这些数据进行无监督学习;
二是体现在参数量巨大,这些参数实际上就类似于方程的系数,用于刻画一定的现象,概念等。
这里就有一个Scaling Law,称之为规模定律,当模型大小,数据集大小和用于训练的计算浮点数的增加,模型的性能会提高,为了获得最佳性能,三个因素必须同时放大,当达到一定规模时,就会发生智能涌现的现象。
大模型也被称为通用大模型,一方面随着模型和参数的增加,一个模型对于更多的情景都能产生不同的相应的成果,不需要像分别对词频统计,主题提取等各类方面分别计算推导,只需要一个模型足矣。
Transformer
在2017年6月Transformer模型发布之后,大语言模型就开始发展了
在Transformer之前,主流的神经网络是RNN(循环式神经网络),而RNN训练是需要等待上一个步骤完成之后才能开始进行下一步的计算,无法并行计算,训练慢。除此之外RNN难以训练长文本,非常容易以往,文本距离越远,前面对后面的影响就越弱
为了解决RNN的两个问题,他的改良版本LSTM(长短期记忆网络)就出现了 ,但是也没有办法完全解决上述问题,而在处理极长的序列时,仍然受到限制
Transformer有两个优势,一个是自注意力机制,另一个是位置编码
它的自注意力机制体现在即使两个词的位置隔得很远,他依然可以捕捉到他们的相关性,依赖关系,而这不仅仅是两个词之间的关系,而是所有词之间的关系
它的位置编码优势主要是因为首先在语言里,字的位置是非常重要的,他对于每个词赋予位置编码之后,那么就不需要再按照顺序进行输入,因为相当于词是自带位置的,那么此时就可以一次性输入大量的词,每一次都可以独立的计算,不需要等待其他位置的结果,也就是说可以进行并行训练
大语言模型输出的本质其实很简单,就是预测出下一个出现概率最高的词,例如搜索栏中预测的自动补全,那么在Transformer内部究竟发生了什么,他是如何进行预测的呢
这三步预处理之后,我们就把长文本转化成了包含语法语义和位置信息的向量
编码器的主要作用就是把上面的输入转化成一种更抽象的表示形式,这种表示形式也是向量,最主要的就是要捕捉向量之间的关键特征了
能进行这样的操作,主要就是依靠这里的自注意力机制了
这样我们就把一开始的向量加入权重得到新的向量
而这样的编码器,自注意力机制在这个过程中有很多个,称之为多头自注意力模块,他们可以从不同角度出发,互不影响,独立运算,关注文本中的不同方面或特征,类似于我们每个人对于同一件事情的看法是不同的。
这里解码器有两个输入来源,一是由编码器的输出,二是由之前上一轮文本的输出作为新的输入
解码器的过程与编码器类似,不同之处是解码器会关注输入序列里所有其他词,在解码器中,自注意力只会关注这个词和他前面的所有词,确保生成过程的顺序性和正确性
最终就可以得到包含输入序列的全局信息、关于当前位置信息和已生成的序列信息的新向量
最后阶段实际上就是输出的步骤
最终会将最高概率的token输出
仅编码器模型(自编码器模型)
这类编码器只使用Transformer的编码器部分,Bert是这种模型的代表,他通过遮蔽部分输入并预测这些遮蔽的词来训练模型,从而学习文本的上下文表示,这类模型适用于理解语言的任务,如文本分类、情感分析、问答等。
仅解码器模型(自回归模型)
这类模型只使用Transformer的解码器部分,并且通常通过自回归方式生成文本,GPT系列是这种模型的代表,他们通过预测序列中的下一个此来生成文本,这种模型适用于文本生成任务,文章协作,摘要生成。
编码器-解码器模型(序列到序列模型)
这类模型同时保留了两部分,T5、Bart等模型是这种结构的例子,通常适用于一个序列转换为另一个序列的任务,如机器翻译,文本摘要等。
1、数据准备与预处理:海量文本作为原料,使用分词器(tokenizer)将这些文本数据转化为token序列。如GPT3,训练数据的整体规模是3,000亿的token;
2、任务构建:采用无监督学习的方式训练模型,常见的万法定掩码语言建模(Masked Language Modeling,MLIM)T还础筱n精换)们随机选择输入序列中的一些token进行掩码(即用特殊符号替换)﹐然后要求模型根据上下文预测这些被掩码的token
3、模型训练:将预处理后的token序列输到Transformer模型中,经过Transformer得到每个可能token的预测概率。将预测的概率分布与真实值(即被掩码的token)进行比较,计算交叉嫡损失。
通过反向传播算法,计算损失函数对模型参数的梯度,并使用优化算法(如梯度下降)更新模型的权重。这个过程迭代进行,直到模型在验证集上达到满意的性能。
当模型生成一个行为或回答时,奖励函数会计算一个奖励值,这个奖励值会被优化算法用来计算损失函数,并进一步用来更新大模型的权重,在这个过程中我们不断朝着增加这些行为或回答发生概率的方向进行调整。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。