笔记:一些关于LLM的概念
本人在学习大模型过程中留下的一些笔记,希望对你有入门LLM有帮助。
简介:本人在学习大模型过程中留下的一些笔记,希望对你有入门LLM有帮助,但是在学习大模型之前我建议您先系统性地学习人工智能与机器学习的课程。笔记会持续更新,又纰漏或觉得写得不好的地方请指出。
1.召回率:模型在正样本中的准确率,召回率高的时候说明模型可能倾向于”宁错勿漏“
2.鲁棒性:表示模型对“噪音”抗干扰能力
3.超参数:学习率、迭代次数、正则化参数等于模型训练相关的参数
4.分词器(tokenizer)的作用是将“广州大学是世界上最好的大学”分解为“广州大学,是,世界上,最好的,大学”,使得一句话变成可以计算的向量
5.过拟合:模型在训练样本上表现良好但是在测试样本上表现不佳,说明这个模型可能因为训练时间过久而出现了过拟合了
6.F1分数(f1 score):精确率和召回率的调和平均数,是用来评价一个模型性能的重要参数
7.微调(Finetune):是指在一个预训练好的模型上使用一些数据集进行加强训练,使其能够完成特定的任务
8.损失值/损失函数(Training loss):是指预测的结果与实际结果的差值,用来调整模型训练的方向
9.训练批次(batch size):是指批训练使用的数据量,数量越多收敛越快,模型也越粗糙,对设备的负担越小,反之。
10.有监督学习:使用一批带有标签的数据来训练模型,然后使用模型去分析一批未知的数据。
11.无监督学习:让模型去分析一批未知的数据,并尝试将数据划分为几类。
12.半监督学习:将有标签的数据与无标签的数据混合起来进行训练。
13.归一化(又称标准化):将数据整合到一个固定的范围内(就和ps中的图形拉伸一样)比较常见的最小最大归一化公式是y=(x-min)/(max-min),将数据归一到了零一之间
14.分词中的BEMS标记:
B: Begin of words,即词的起始字。
M: Middle of words,即词的非起始字和结束字的其它字。
E: End of words,即词的结束字。
S: Single words,即单字。
15.正则化技术(L1/L2/Dropout):增加一项对参数的惩罚操作,以防止过拟合
16.卷积神经网络(CNN)和循环神经网络(RNN):CNN的作用类似于人的眼睛,常用于图像识别与图像分类的与计算机视觉相关的任务,RNN的作用类似于人的耳朵与嘴,常用于文本分类或音频识别等NLP任务中。二者的神经网络结构也大不相同。
17.卷积核经常选择n*n而不是n*m,是因为方形卷积核在许多情形下都具有简介且高效的作用,但是在图像水平/垂直特征特别明显是,我们也会采用矩形卷积核。
18.池化(Pooling):在神经网络中用来提取特征,与卷积操作类似但是主要作用是特征提取,常见的为最大池化。池化通常会改变图像的大小,不改变通道数量。
19.嵌入(Embedding):是指将离散变量、特别是高维的分类数据转换为连续的低维向量表示。作用是以较小的空间表示大量的类别数据,同时保持原始数据的一些特性,如相似性。将复杂的数据结构转化为计算机可以更好理解和处理的形式,从而提高机器学习算法的性能。
20.模型蒸馏(Model Distillation):也被称为知识蒸馏,是一种在人工智能领域中广泛应用的模型压缩技术。其核心思想是将一个大型且复杂的模型(通常称为“教师”模型)中的知识迁移到一个更小、更简单的模型(称为“学生”模型)中。具体实现方法为子模型直接使用原数据+父模型训练的输出作为训练输入。
21.流式输出(streaming output):在API请求中,通常意味着数据不是一次性全部返回,而是以流的形式逐步返回给客户端。这对于处理大量数据或实时数据非常有用,因为它可以减少内存使用并提高响应速度。
22.嵌入通常在分词之后执行。
23.粒度:分词过程中将句子分词短语的长度,粗粒度表示短语较长(如“广州大学 | 非常好”),细粒度则较短(“广州 | 大学 | 非常 | 好”)。
24.位置编码:为每个分词后的token添加一个”序列|位置 标记“以记录它在句子中的结构关系。当句子中同一个词语出现多次时,需要设计不一样的位置编码。位置编码将于嵌入后的高维向量一起输入给前馈网络。
25.梯度/梯度爆炸/梯度消失:梯度即导数,代表变化的速度。在神经网络中依赖梯度更新参数,因此梯度应该尽量稳定。梯度爆炸则代表变化过快,会使网络不稳定,难以收敛。梯度消失则代表参数更新缓慢甚至不再更新,网络固化。
26.ReLU激活函数(Rectified Linear Unit):f(x) = max (0, x) , 又称斜坡函数。
27.反卷积:是卷积的反向操作,即使用卷积核扩大本身层。但是只能恢复规模,不能恢复数值,因此反卷积和卷积不是完全对等的逆向操作。主要应用于GAN和上采样操作中。
28.上采样(Upsampling):是信号处理和图像处理中的一种技术,主要用于增加信号的采样率或图像的分辨率。上采样在图像处理中有多种应用,如图像放大、图像超分辨率重建、图像分割后的精细化等。
29.增量学习(Incremental Learning):是指一个学习系统能够不断地从新样本中学习新的知识,并能保存大部分以前已经学习到的知识。它允许模型通过对新数据进行持续学习而不是重头训练整个模型,从而实现对知识的渐进式更新。(如果模型在训练新任务时能够获取到旧任务的数据库,那么可以使用联合训练——同时使用所有的数据集训练,此时模型的性能可以理解为增量学习性能的上限)
30.多模态模型:是一种能够处理和理解多种数据类型(如文本、图像、音频、视频等)的机器学习模型。其核心在于利用不同模态之间的互补性,通过融合不同模态的信息来提升任务的性能,增强模型的鲁棒性和准确性。
31.数据标注任务:对数据进行“打标签”工作,比如说给出一张图片,就圈出图片中的猫,给出一段文本,就标记出文本代表的情绪,或者识别出文本中的主谓宾。
32.灾难性遗忘”指神经网络的在连续学习过程中,模型模型会像人类一样遗忘早期的知识,致使模型在旧任务的性能显著下降。
33.增量学习与微调的区别:增量学习旨在让模型具有长期学习的能力,实现在数据流不断变化的情况下的增强模型在原有任务的性能。而微调几乎不关心原有的任务,而是使用一批新的数据集,增强模型在某一特定方面的能力。
34.自蒸馏(Self-Distillation):子模型使用父模型,即第一阶段的训练输出作为第二阶段的训练输入。
.注意力机制:
1.起源:2017年6月,谷歌团队发表论文《Attention is all you need》,这篇论文提出了一个全新的神经网络模型——Transformer。摒弃了传统的循环神经网络(RNN)和卷积神经网络(CNN)结构。对后面大模型的发展有着重要影响。
2.目的:Transformer目标是:是通过预测出现概率最高的下一个词,来实现文本生成的,这种效果有点像搜索引擎的自动补全。每当我们输入一个新的字或词,输入框就开始预测后面的文本,概率越高的排在越上面。
3.自注意力机制:需要用给定文本自身来表达自己,也就是说你需要从给定文本中抽取关键词来表述它,相当于对文本自身的一次特征提取。Transformer在处理输入每个词的时候,不仅会注意这个词本身以及它附近的词,还会去注意输入序列里所有其他的词,每个词有着不一样的注意力权重。权重是模型在训练过程中通过大量文本逐渐学习到(可以理解为经验值)。如“I like apple because it is sweet”中的“it”在多次训练后最终得到“apple”的权重|关联性最高。
4.多头注意力机制:对于”我于哪个同事最近“,第一个头负责按”关系最近“分配数据的注意力权重,第二个头负责”工位距离最近“的注意力权重,以此类推。最终会将每个头的输出拼接并进行线性变换,以整合结果。
5.编码器:每个编码器层包含两个子层:多头自注意力机制(Multi-Head Self-Attention)和前馈网络(Feedforward Network)。进行特征提取于位置编码
6.解码器:每个解码器层包含三个子层:多头自注意力机制、多头注意力机制(Multi-Head Attention)和前馈网络。头自注意力机制在解码器中的作用与编码器类似,但只关注当前时刻之前的位置,对于生成位置后的数据用”掩码“覆盖, 以确保生成的句子符合逻辑顺序。最后,解码器的输出会通过一个线性层和Softmax函数,以生成输出序列中下一个元素的预测概率分布。
7.概率计算:缩放的点积注意力机制(Scaled Dot-Product Attention),其基本思想是通过计算查询(Query)向量与一组键(Key)向量之间的点积相似度,并通过softmax激活函数转换为概率分布 (*softmax激活函数:逻辑斯特回归的变种,用于多分类问题的归一化,使输出在0 1之间),最终加权求和输出。由于不断进行矩阵点积(求和),会使输入值不断变大,导致softmax激活函数梯度消失,因此要将点积结果除以sqrt(d),d代表矩阵维度,来避免梯度消失。多头注意力机制中的每个头都独立地进行缩放的点积注意力运算。
8.重要概念:Query(查询)、Key(键)和Value(值)是三个核心概念。 最原始的注意力公式运用到这三个概念。
Query代表问题,决定了输出内容。
Key代表了输入元素的“可被检索的特征”。与 Query 进行匹配以计算关联性。
Value是模型最终需要提取的内容,经过加权后输出。
8.参考:https://blog.csdn.net/nocml/article/details/103082600 ; https://blog.csdn.net/Peter_Changyb/article/details/137537844 ; https://zhuanlan.zhihu.com/p/20744784945
."看图写话":
生成对抗网络(Generative adversarial network, GAN):主要应用于无监督训练,主要有生成模型(Generative Model)于判别模型(Discriminative Model)构成。在训练过程中,生成网络G的目标就是尽量生成真实的图片去欺骗判别网终D。而D的目标就是尽量把G生成的图片和真实的图片分别开来。这样,G和D构成了一个动态的“博弈过程”,也因此成为对抗网络。
生成模型:常见的网络结构依旧是CNN或者RNN,但是在图像处理中一般用反卷积网络。
判别模型:就是普通的神经网络判别模型,做二分类或者多分类的那种。
训练过程:随机初始化两个网络的参数,此时两个网络的性能都很差,随着训练不断更新两个网络的参数,使二者性能不断增强。最终判别网络无法再区分生成网络生成的伪造图像时,网络趋向收敛。
模式崩溃:现在我们假设判别模型一开始的性能就非常强大,然而生成模型的性能非常弱小,那么在训练过程中,就会出现生成模型生产的伪造图像中只有一小部分能通过生成网络的检查,那么为了迎合判别网络,生成网络就会 在接下来的训练中大量生成这种能够“蒙混过关”的伪造图片,从而使生成网络失去了多样性,这就是模式崩溃。可以通过增加噪声,正则化等算法避免模式崩溃。
*损失函数的设计对GAN至关重要
更多推荐
所有评论(0)