那么,什么是AI大模型?随着人工智能(AI)技术的迅速发展,大型深度学习模型正逐渐成为AI提示工程的核心技术之一。在这篇文章中,我们将了解大模型,特别是大语言模型的一些基础知识,包括模型的概念,模型的演变。
1. 什么是模型?
简单来说,模型其实就是一个函数,y = f(x;θ),其中x是输入,θ是参数。
假设说观察到一个模型是线性递增的,那么这个模型就是
y = f(x) = ax + b
其中,a和b就是模型的参数。
2. 什么是大模型?
大型模型是指参数数量庞大、拥有强大计算能力的深度学习模型。这些模型通常由数百万、甚至数十亿个参数组成,能够从海量数据中学习并提取复杂的特征和模式。近年来,随着计算硬件的不断进步和深度学习算法的不断优化,大型模型在各种AI应用中展现出了强大的性能和潜力。
而大型语言模型是指用于处理和生成自然语言文本的大模型。这些模型通常基于神经网络架构,能够理解、生成和处理人类语言的复杂结构和语义。
t-tasks-can-i-solve-with-nlp-today-1b1823cc8cdf
3. 什么是模型训练?
模型训练是用训练数据集训练,通过观测x输入到模型得到y,来获得合适的参数θ。模型的目标是希望可以泛化到未知的数据。
4. 模型是怎么训练的?
- 从零开始训练(Training From Scratch)
当人们为了解决某个任务,可以从零开始训练一个模型。通过初始化的参数,把训练数据集输入给神经网络,得到一个模型。这样的模型只能处理单一的任务。
2. 微调(Fine-tuning)
渐渐地,人们发现,很多任务是有相似性的。于是人们想到可以使用预训练模型(Pretrained Model)+微调(Fine-tuning)。为了微调,我们通常通过改变网络架构,加一些额外的网络层,少量调整参数。
所以,当经过不同参数和结构的微调,也会产生两个不同的模型,模型A和模型B。经过这两个模型的输出也会不一样。
GPT(Generative Pre-trained Transformer)最初的做法也是类似的。如下图所示,通过一个预训练的任务训练出一个模型,然后在下游根据不同的任务再增加一些层进行fine-tuning。
图中绿色的transformer就是预训练得到的。
现在的趋势是,模型越训练越大。在固定的架构下,训练数据越来越大,性能就会越好,目前也没有出现一个饱和的现象。
下图可以看到,自从transformer模型出来以后,模型的大小呈指数级增长。到GPT-3的时候,模型已经达到175B。随着模型大小的增长,它的能力就越强,它对自然语言的理解也越来越强。所以原来小模型做不到的事情,随着模型变大,性能有了一个阶跃的提升。
-content/uploads/2024/04/HAI_AI-Index-Report-2024.pdf
5. 预训练模型 + 提示(Prompt)
随着模型越来越大,性能越来越强,让一件事情成为了可能,就是足够大的预训练模型,可以用相同的参数,不同的提示,来完成不同的任务,得到不同的结果,这里的提示就是Prompt。
6. Fine-tuning V.S. Prompting
那么,Fine-tuning和Prompting有什么区别?
通过看GPT-3的论文里可以给到我们答案。这里有一个例子可以帮我们更好地理解。
5
如下图所示,任务的要求是把英文翻译成法语。
右边是使用Fine-tuning,模型是通过不同的输入输出,模型根据数据来更新参数,所以每一步模型的参数都会更新。所以,在这种任务中,Fine-tuning的结果会更加精确。
左边是GPT3,通过自然语言描述的任务,来预测答案,没有更新任何参数。也可以通过给定几个例子,让它更好地理解任务。
7. 模型的结构
目前比较常用的模型结构是Left to Right Language Model,这个模型训练用来预测后面一个词。
Left to Right 语言模型按照从左到右的顺序处理文本,每一步更新其内部状态,每个单词在句子中的表示是基于该单词本身和所有前面的单词计算出来的,所以模型就会习得如何预测下一个词。这样的训练任务比较适合自然语言理解的任务,或者训练自然语言向量表示。详细可以参考这个paper:https://arxiv.org/pdf/2107.13586。
6
GPT就是Generative Pre-trained Transformer Language Model,其实就是从左到右进行训练。自然语言模型其实就是概率模型,预测了下一个词。
8. Next Token Prediction
在大模型里,我们是以token作为一个单位,可以理解对应的一个词或者词的部分。所以大语言模型预测的就是下一个token,这就是Next Token Prediction。我们可以这么表示,P表示一个词的概率,那么怎么得到这个词的概率呢?
基于第一个词的概率,来结合第二个词,所以条件递推到下一个概率。
举个例子,有这个一个句子:
The best thing about AI is its ability to
那么下一个词会是什么,从图上看到,最大概率的是learn,或者predict,但一直取最大概率也可能导致生成的内容很枯燥,所以一般也会进行采样,让结果有创新性。感兴趣的话,后面可以详细介绍一下,怎么调参数让这个结果更有意思,或者是更普通。
参考这篇博客:
/2023/02/what-is-chatgpt-doing-and-why-does-it-work/
听上去,这个Next Token Prediction任务很简单:模型好像只是学习了一个任务,只是根据给定的文本,预测下一个词的概率。为什么这么简单的一个任务,能应对这么多丰富的场景?
这里就可以引述到OpenAI首席科学家伊利亚的一句话:
--Ilya Sutskever
预测下一个标记意味着你理解了导致该标记生成背后的现实。这不仅仅是统计学。虽然它是统计学,但统计学是什么呢?为了理解这些统计数据并压缩它们,你需要理解是什么样的世界创造了这组统计数据。
预测下一个token表现上只是拟合了一个概率,但实际上模型学会了对纷繁复杂的世界做一个抽象和压缩。
举个例子,我们要预测一个人下一步的行为是什么,首先基于过去的行为进行观测,对已有的数据进行抽象和压缩,总结这个人的多维度的性格特征。所以大语言模型习得了这个任务,其实也是习得了背后更本质的东西。是不是听上去有点吓人,似乎大模型在理解我们现实。
9. Transformer模型架构
GPT的模型很容易从它的名字推断出来,Generative Pre-trained Transformer。Transformer是非常主流,并被广泛使用到的模型架构。它是谷歌2017年提出来的,后来各界又对此做了各种优化和创新,能看到至今为止它的被引用量是非常大的。
Transformer的架构如下图。对于我们来说,我们不用详细理解每个数学式的表达,只需要理解设计的思想就足够了。
下图能看到左下角有一个input,通过这个模型预测后得到一个output。左边是encoder,能更好地理解输入是什么意思,右侧是decoder,根据encode后的input,综合我们之前讲的概率分布,来生成一个output。
这里面最本质的东西是一个注意力机制。
10. 注意力机制Attention
这里面如果你去阅读这篇文论,这个论文中有很多数学式的解释。为了便于理解,我们可以做一个不是很严格的类比,其本质是一个查询机制。
我们有如下查询表格,对于第一列的距离,油耗数据如第二列所列。通过这个表格,我们查询到,车子在不同距离下的油耗数据。对此我们定义三个参数Q(目标距离),K(查询key距离),V(表格中的油耗值value)。
那我们对于一个目标Q(310KM),想要去查询油耗值,但表格中并没有直接对应的结果。所以就扫描一下表格,更接近的数据赋予它更多的权重,然后跟相应的value值做一个点积,得到最后一个结果值23.1。具体的在论文中有一个表达式,是一个矩阵乘积。
回到文本的例子,比如预测its这个词的时候,会找跟它接近的词Law,application;还有making这个词也会找到其相关的词。其实我们人类理解语言也是一样,会更多注意到一些重要的相关词汇,对一些动宾短语,助词等会忽略。
那么对于GPT来说,其实是Decoder Only。如下图所示。
注意到右下角的positional encoding,作用是告诉词在句子中的位置。
左图是放大的图,最下面就是一个attention机制,里面有不同层神经网络中的表示。
钻石VIP会员


















