AI大语言模型入门学习

这是先前整理的内部培训用的AI学习材料,主旨不在学会大模型,而是理清大模型之间的关系,对深度学习框架及AI大模型有个基础的概念

什么是通用语言模型(GLM)?

通用语言模型(General Language Model,GLM)是一种能够处理自然语言的深度学习模型,它被广泛应用于自然语言处理(NLP)任务。GLM是一种基于神经网络的模型,它通过学习大量的语言数据来提高对自然语言的理解和生成能力。

在NLP中,GLM通常被用来进行下游任务,例如文本分类、情感分析、机器翻译、问答系统等。通常,GLM是通过预处理一个大型文本语料库来训练的,例如维基百科、新闻文章语料库等。在训练过程中,模型会学习到词汇的分布、句法结构、语义关系等信息,从而能够为各种NLP任务提供有用的特征。

最近,随着深度学习技术的发展,一些强大的GLM模型被提出,例如OpenAI的GPT-3和Google的BERT模型。这些模型已经在NLP领域取得了显著的进展,能够实现更加复杂和高级的自然语言处理任务。

通用语言模型(GLM)是怎么训练出来的?

通用语言模型(GLM)的训练通常包括以下步骤:

数据预处理:首先需要准备大量的文本数据作为训练集。这些数据可以来自于各种来源,例如维基百科、新闻文章、社交媒体等。在预处理阶段,需要对文本进行分词、标记、去除停用词等操作,以便于后续的模型训练。

模型架构设计:GLM的模型架构通常基于神经网络,例如循环神经网络(RNN)、长短时记忆网络(LSTM)、卷积神经网络(CNN)等。在设计模型时,需要考虑到模型的深度、宽度、激活函数、正则化等因素。

模型训练:使用训练数据集训练模型。这里的训练过程通常采用反向传播算法(backpropagation),通过最小化训练数据集上的损失函数来优化模型的参数。通常使用梯度下降等优化算法来更新模型的参数,以使得模型能够更好地拟合训练数据集。

模型评估:使用验证集或测试集来评估模型的性能。常用的评估指标包括准确率、召回率、F1值等。如果模型的性能达到了预期目标,就可以将其用于下游任务,例如文本分类、情感分析、机器翻译等。

模型优化:如果模型的性能不够理想,可以考虑进行模型优化。常见的优化手段包括调整模型架构、调整学习率、增加正则化等。

需要注意的是,由于GLM模型的训练需要大量的计算资源和时间,因此通常需要使用GPU或者分布式计算来加速训练过程。同时,需要选择合适的训练数据集和模型架构,以获得更好的训练效果。

GPT-3是具有1750亿个参数的自回归语言模型, 参数是什么?
在机器学习领域中,参数通常是指模型中需要学习的变量或权重。在GPT-3中,这1750亿个参数指的是模型需要学习的权重数量,这些权重用于自回归生成文本。具体来说,这些参数是神经网络中的权重和偏置,通过训练使得模型能够预测下一个单词或字符

在深度学习中,参数通常指的是神经网络中的可训练参数,也称为权重或模型参数。这些参数是在模型训练过程中通过反向传播算法进行优化,以使模型能够更好地拟合训练数据,并在未见过的数据上具有较好的泛化能力。

GPT-3是一种自回归语言模型,其基于Transformer架构,由多个Transformer模块组成。在GPT-3中,1750亿个参数指的是这些Transformer模块中所包含的可训练参数的总数。具体地,每个Transformer模块包含多个层,每层中包含多个子层,子层中包含多个注意力头(即多头注意力机制),每个注意力头中又包含多组权重矩阵,这些权重矩阵都是可训练的参数。因此,GPT-3的参数数量是非常庞大的,达到了1750亿个。

这些参数的作用是对输入的文本数据进行处理和建模,以生成符合语法和语义规则的自然语言文本。在模型训练过程中,这些参数会不断调整和优化,以使模型能够更好地拟合训练数据,并提高模型的泛化能力。在模型推理过程中,这些参数会被固定,并用于对新的文本数据进行处理和生成。

总的来说,GPT-3的1750亿个参数是其能够实现自然语言生成和理解的关键所在,也是其成为当前最先进的自然语言处理模型之一的重要原因。

神经网络架构Transformer架构
Transformer是一种基于自注意力机制(self-attention)的神经网络架构,最初由Google在2017年提出,用于处理自然语言处理(NLP)任务。Transformer架构的设计独具特色,其在序列建模和语言生成方面取得了极大的成功,在机器翻译、文本分类、问答系统等NLP任务中取得了领先的表现。

Transformer架构由编码器和解码器两部分组成,其中编码器和解码器都是由多个相同的层组成。在编码器中,每个层都有两个子层,分别为自注意力机制和全连接前馈网络;在解码器中,每个层都有三个子层,分别为自注意力机制、编码器-解码器注意力机制和全连接前馈网络。在下面,我们详细介绍一下Transformer架构中的自注意力机制。

自注意力机制是Transformer架构的核心组成部分,它是一种能够关注序列中不同位置的机制。在自注意力机制中,每个序列元素都被看作是查询(query)、键(key)和值(value)三个向量的线性变换。具体来说,给定一个输入序列 X = ( x 1 , x 2 , . . . , x n ) X=(x_1, x_2, ..., x_n) X=(x1,x2,...,xn),其中每个元素 x i x_i xi都是一个 d d d维向量,我们可以通过以下方式计算自注意力机制的输出:

首先,我们将输入序列 X X X通过三个线性变换分别映射到查询向量 Q Q Q、键向量 K K K和值向量 V V V,即:

Q = X W Q Q = XW^Q Q=XWQ

K = X W K K = XW^K K=XWK

V = X W V V = XW^V V=XWV

其中 W Q W^Q WQ W K W^K WK W V W^V WV都是 d × d d \times d d×d的权重矩阵。

接下来,我们计算查询向量 Q Q Q和键向量 K K K的点积,并对每个点积进行缩放,以避免梯度消失或爆炸的问题。具体来说,我们计算注意力权重 A A A,其大小为 n × n n \times n n×n矩阵,其中 A i , j A_{i,j} Ai,j表示第 i i i个元素和第 j j j个元素之间的注意力权重,定义为:

A i , j = Q i K j T d A_{i,j} = \frac{Q_iK_j^T}{\sqrt{d}} Ai,j=d QiKjT

其中 d d d为向量维度。

然后,我们将注意力权重 A A A与值向量 V V V相乘,得到加权和向量 C C C,即:

C i = ∑ j = 1 n A i , j V j C_i = \sum_{j=1}^n A_{i,j}V_j Ci=j=1nAi,jVj

其中 C i C_i Ci为第 i i i个元素的加权和向量。

最后,我们将加权和向量 C C C通过一个线性变换映射回原始向量空间,即:

Y = C W O Y = CW^O Y=CWO

其中 W O W^O WO d × d d \times d d×d的权重矩阵, Y Y Y为最终的自注意力机制输出。

自注意力机制可以同时考虑输入序列中的所有元素,并且可以学习到每个元素与其他元素之间的关系。在Transformer架构中,自注意力机制被广泛应用于编码器和解码器中,从而实现了对序列的建模和语言生成。在编码器中,自注意力机制可以帮助模型学习输入序列的表示,从而为后续的NLP任务提供更好的输入;在解码器中,自注意力机制可以帮助模型理解上下文信息,并生成符合语言规则的文本。

总的来说,Transformer架构的设计独具特色,其自注意力机制的引入为序列建模和语言生成提供了新的思路和方法,成为NLP领域的一个重要突破。Transformer架构不仅在学术界引起了广泛的关注和研究,也在工业界得到了广泛的应用,成为了当前NLP领域的主流技术之一。

流行的神经网络架构有哪些?
随着深度学习技术的发展,出现了许多流行的神经网络架构。以下是一些常见的神经网络架构:

卷积神经网络(Convolutional Neural Network,CNN):CNN是一种广泛应用于计算机视觉领域的神经网络架构,其具有局部感知和权值共享等特点,可以有效地提取图像中的特征。CNN在图像分类、物体检测、人脸识别等任务中取得了很好的表现。

循环神经网络(Recurrent Neural Network,RNN):RNN是一种能够处理序列数据的神经网络,其具有循环结构,可以利用上下文信息进行预测和生成。RNN在自然语言处理、语音识别、时间序列分析等任务中取得了良好的表现。

长短时记忆网络(Long Short-Term Memory,LSTM):LSTM是一种RNN的变体,其能够更好地处理长序列数据,并且可以避免梯度消失的问题。LSTM通过门控机制来控制信息的流动,其中包括输入门、遗忘门和输出门等,可以有效地捕捉序列中的长期依赖关系。LSTM在语音识别、情感分析、机器翻译等任务中取得了很好的表现。

注意力机制(Attention Mechanism):注意力机制是一种机制,其可以自动地学习到不同输入之间的相关性,并根据相关性来调整模型的注意力。注意力机制在自然语言处理、计算机视觉等任务中广泛应用,例如机器翻译、视觉问答等。

生成对抗网络(Generative Adversarial Network,GAN):GAN是一种由生成器和判别器组成的对抗性网络,其通过竞争训练来生成逼真的样本。GAN在图像生成、文本生成、音频生成等任务中取得了很好的表现。

自编码器(Autoencoder,AE):AE是一种无监督学习的神经网络,其通过编码和解码的方式来学习输入数据的表示。自编码器在图像压缩、降噪、特征提取等任务中取得了很好的表现。

转移网络(Transformers):Transformers是一种基于自注意力机制的神经网络架构,其在序列建模和语言生成方面取得了极大的成功,在机器翻译、文本分类、问答系统等NLP任务中取得了领先的表现。

稠密连接网络(DenseNet):DenseNet是一种密集连接的卷积神经网络,其通过在每个层中将输入和输出连接起来,使得网络中的信息能够更加充分地传递和利用。DenseNet在图像分类、目标检测等任务中取得了很好的表现。

总的来说,以上这些神经网络架构都是当前深度学习领域的研究热点和应用重点,它们在不同的领域和任务中都有广泛的应用和取得了很好的表现。此外,还有一些新的神经网络架构在不断涌现,例如超分辨率网络、生成流网络、因果卷积网络等,这些架构也在不同的领域和任务中取得了不错的表现,并成为当前深度学习领域的研究热点。

GLM模型的应用例子?

当下,通用语言模型(GLM)的应用非常广泛,可以用于各种自然语言处理(NLP)任务。以下是一些GLM模型的应用例子:

文本分类:GLM模型可以用于文本分类任务,例如将新闻文章分类为体育、政治、娱乐等类别。通过训练大量的语料库,GLM模型可以学习到文本的语义和句法特征,从而能够对文本进行准确的分类。

机器翻译:GLM模型可以用于机器翻译任务,例如将英文翻译成中文。通过训练大量的双语语料库,GLM模型可以学习到不同语言之间的映射关系,从而能够实现准确的翻译。

情感分析:GLM模型可以用于情感分析任务,例如将一段文本判断为正面或负面情感。通过训练大量的情感标注语料库,GLM模型可以学习到文本中的情感特征,从而能够对文本进行情感分类。

问答系统:GLM模型可以用于问答系统任务,例如回答用户提出的自然语言问题。通过训练大量的问答语料库,GLM模型可以学习到问题和答案之间的匹配关系,从而能够回答用户提出的问题。

文本生成:GLM模型可以用于文本生成任务,例如生成自然语言描述、新闻文章等。通过训练大量的语料库,GLM模型可以学习到文本的生成规律和语言规则,从而能够生成具有一定语义和逻辑结构的文本。

这些应用只是GLM模型在NLP领域中的一小部分示例,随着技术的不断发展,GLM模型在自然语言处理、语音识别、机器翻译等领域中的应用也在不断增加。

大语言模型openAi GPT-3

GPT-3(Generative Pre-trained Transformer 3)是目前最先进的通用语言模型之一,其架构基于Transformer,并包含1750亿个参数。GPT-3在多项自然语言处理任务上取得了令人印象深刻的表现,例如语言生成、文本分类、机器翻译、问答系统等。GPT-3还可以生成高质量的自然语言文本,例如文章、故事、甚至代码等。GPT-3的成功表明,大型语言模型在自然语言处理领域有着巨大的应用潜力。

大语言模型Google BERT模型

Google BERT模型是由Google在2018年提出的一种预训练语言模型,其全称为Bidirectional Encoder Representations from Transformers。BERT模型的目标是通过预训练的方式提高自然语言处理任务的性能,它基于Transformer架构,并使用了双向编码器来学习文本中的语义和句法特征。

BERT模型通过在大量未标注的文本数据上预训练,学习到了一种通用的语言表示方式。在具体的NLP任务中,BERT模型可以通过微调的方式,将预训练的模型参数应用到特定任务上,从而提高任务的性能。BERT模型在多项NLP任务中都取得了领先的表现,例如问答系统、文本分类、命名实体识别等。

BERT模型的一个重要特点是它使用了双向编码器,即模型可以同时考虑文本的左右上下文,从而能够更好地捕捉文本中的语义和句法特征。此外,BERT模型还引入了一种新的预训练任务,即Masked Language Model(MLM)和Next Sentence Prediction(NSP)。在MLM任务中,模型需要预测文本中被掩盖的词语,从而促进了模型对上下文的理解;在NSP任务中,模型需要判断两个句子是否是连续的,从而促进了模型对句子之间关系的理解。

BERT模型的成功表明,预训练语言模型在NLP领域具有重要的应用价值。目前,BERT模型已经成为了NLP领域的一个重要标杆,其相关技术被广泛应用于各种任务中。此外,基于BERT模型的改进和扩展版本也在不断涌现,例如RoBERTa、ALBERT、T5等,这些模型在不同的NLP任务中取得了更好的表现。

GLM-130B:开放的中英双语预训练模型
GLM-130B是一个开放的双语(中文与英文)双向语言模型,含1300亿个参数。截至2022年7月,它已经训练了超过4000亿个文本标记。它的底层架构基于通用语言模型(GLM),在语言理解和语言生成任务上均展示出强大的性能。

GLM-130B将BERT和GPT的目标进行了统一,并与最近提出的一些技术进行结合以提升语言模型的性能表现。

GLM-130B 是一个开源开放的双语(中文和英文)双向稠密模型,基于 GLM 架构,拥有 1300 亿参数。它旨在支持在一台 A100(40G * 8) 或 V100(32G * 8)服务器上对千亿规模参数的模型进行推理。

ChatGLM 参考了 ChatGPT 的设计思路,在千亿基座模型 GLM-130B1 中注入了代码预训练,通过有监督微调(Supervised Fine-Tuning)等技术实现人类意图对齐。ChatGLM 当前版本模型的能力提升主要来源于独特的千亿基座模型 GLM-130B。它是不同于 BERT、GPT-3 以及 T5 的架构,是一个包含多目标函数的自回归预训练模型。2022年8月,我们向研究界和工业界开放了拥有1300亿参数的中英双语稠密模型 GLM-130B1,该模型有一些独特的优势:
双语: 同时支持中文和英文。
高精度(英文): 在公开的英文自然语言榜单 LAMBADA、MMLU 和 Big-bench-lite 上优于 GPT-3 175B(API: davinci,基座模型)、OPT-175B 和 BLOOM-176B。
高精度(中文): 在7个零样本 CLUE 数据集和5个零样本 FewCLUE 数据集上明显优于 ERNIE TITAN 3.0 260B 和 YUAN 1.0-245B。
快速推理: 首个实现 INT4 量化的千亿模型,支持用一台 4 卡 3090 或 8 卡 2080Ti 服务器进行快速且基本无损推理。
可复现性: 所有结果(超过 30 个任务)均可通过我们的开源代码和模型参数复现。
跨平台: 支持在国产的海光 DCU、华为昇腾 910 和申威处理器及美国的英伟达芯片上进行训练与推理。

  • https://models.aminer.cn/glm-130b/
  • https://github.com/THUDM/GLM-130B/blob/main/README_zh.md

ChatGLM

ChatGLM-6B 是一个具有62亿参数的中英双语语言模型。通过使用与 ChatGLM(chatglm.cn)相同的技术,ChatGLM-6B 初具中文问答和对话功能,并支持在单张 2080Ti 上进行推理使用。具体来说,ChatGLM-6B 有如下特点:
充分的中英双语预训练: ChatGLM-6B 在 1:1 比例的中英语料上训练了 1T 的 token 量,兼具双语能力。
优化的模型架构和大小: 吸取 GLM-130B 训练经验,修正了二维 RoPE 位置编码实现,使用传统FFN结构。6B(62亿)的参数大小,也使得研究者和个人开发者自己微调和部署 ChatGLM-6B 成为可能。
较低的部署门槛: FP16 半精度下,ChatGLM-6B 需要至少 13GB 的显存进行推理,结合模型量化技术,这一需求可以进一步降低到 10GB(INT8) 和 6GB(INT4), 使得 ChatGLM-6B 可以部署在消费级显卡上。
更长的序列长度: 相比 GLM-10B(序列长度1024),ChatGLM-6B 序列长度达 2048,支持更长对话和应用。
人类意图对齐训练: 使用了监督微调(Supervised Fine-Tuning)、反馈自助(Feedback Bootstrap)、人类反馈强化学习(Reinforcement Learning from Human Feedback) 等方式,使模型初具理解人类指令意图的能力。输出格式为 markdown,方便展示。
因此,ChatGLM-6B 具备了一定条件下较好的对话与问答能力。当然,ChatGLM-6B 也有相当多已知的局限和不足:
模型容量较小: 6B 的小容量,决定了其相对较弱的模型记忆和语言能力。在面对许多事实性知识任务时,ChatGLM-6B 可能会生成不正确的信息;她也不擅长逻辑类问题(如数学、编程)的解答。
可能会产生有害说明或有偏见的内容:ChatGLM-6B 只是一个初步与人类意图对齐的语言模型,可能会生成有害、有偏见的内容。
较弱的多轮对话能力:ChatGLM-6B 的上下文理解能力还不够充分,在面对长答案生成,以及多轮对话的场景时,可能会出现上下文丢失和理解错误的情况。
英文能力不足:训练时使用的指示大部分都是中文的,只有一小部分指示是英文的。因此在使用英文指示时,回复的质量可能不如中文指示的回复,甚至与中文指示下的回复矛盾。
易被误导:ChatGLM-6B 的“自我认知”可能存在问题,很容易被误导并产生错误的言论。例如当前版本模型在被误导的情况下,会在自我认知上发生偏差。即使该模型经过了1万亿标识符(token)左右的双语预训练,并且进行了指令微调和人类反馈强化学习(RLHF),但是因为模型容量较小,所以在某些指示下可能会产生有误导性的内容。

  • https://github.com/THUDM/ChatGLM-6B
  • https://chatglm.cn/blog

ChatGPT、PyTorch和Transformer它们之间的关系
ChatGPT、PyTorch和Transformer都是与深度学习和自然语言处理相关的技术或工具。

ChatGPT:ChatGPT是基于GPT(Generative Pre-trained Transformer)模型的聊天机器人,是由OpenAI开发的一种自然语言处理应用。GPT模型是一种基于Transformer架构的预训练语言模型,可以生成文本、回答问题等任务。ChatGPT则是在GPT模型的基础上进行微调,以实现聊天机器人的功能。

PyTorch:PyTorch是深度学习框架之一,由Facebook开发。PyTorch提供了丰富的API和工具,可以用于构建各种类型的深度学习模型,包括Transformer模型。PyTorch的优点在于其灵活性和易用性,可以方便地进行模型构建、调试和训练。

Transformer:Transformer是一种基于自注意力机制的神经网络模型,其主要应用于序列建模和自然语言处理。Transformer在处理长序列数据时具有较好的表现,且可以并行化计算,因此在机器翻译、文本摘要、问答系统等任务中得到了广泛应用。Transformer模型可以通过PyTorch等深度学习框架进行实现和训练,而ChatGPT则是基于PyTorch实现的一种聊天机器人应用,其基础模型也是Transformer模型。因此,ChatGPT、PyTorch和Transformer之间存在一定的联系和关系,它们相互支持和补充,共同推动了深度学习和自然语言处理领域的发展。

references

  1. GLM-130B:开放的中英双语预训练模型
  2. ChatGLM-6b
  3. 基于transformers的自然语言处理(NLP)入门
  4. AI大语言模型的原理、演进及算力测算
  5. 一文看懂:全球AI巨头的大模型进化史
  6. https://gitee.com/oschina/awesome-llm
  • 20
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值