微信扫码
与创始人交个朋友
我要投稿
我们生活在一个机器学习模型处于巅峰的时代。与几十年前相比,大多数人永远不会听说过 ChatGPT 或人工智能。然而,这些都是人们一直在谈论的话题。为什么?因为与付出的努力相比,给出的价值是如此重要。
近年来人工智能的突破可以归因于很多因素,其中之一就是大语言模型(Large Language Models,LLM)。人们使用的许多文本生成人工智能都是由大语言模型模型提供支持的;例如,ChatGPT 使用他们的 GPT 模型。由于大语言模型是一个重要的主题,我们应该了解它。
本文将讨论 3 个难度级别的大语言模型,但我们只会涉及大语言模型的某些方面。我只是让每个读者都能理解大语言模型是什么。
入门级
在第一级中,我们假设读者不了解大语言模型,并且可能对数据科学/机器学习领域有所了解。因此,在攻读大语言模型之前,我会简要介绍一下人工智能和机器学习。
人工智能是开发智能计算机程序的科学。它的目的是让程序执行人类可以完成的智能任务,但不会限制人类的生物需求。机器学习是人工智能的一个领域,专注于使用统计算法进行数据泛化研究。在某种程度上,机器学习试图通过数据研究来实现人工智能,使程序无需指令即可执行智能任务。
历史上,计算机科学和语言学的交叉领域被称为自然语言处理(Natural Language Processing,NLP)领域。该领域主要涉及机器处理人类文本的任何活动,例如文本文档。以前,这个领域仅限于基于规则的系统,但随着先进的半监督和无监督算法的引入,该领域变得更加广泛,这些算法允许模型在没有任何方向的情况下学习。执行此操作的高级模型之一是语言模型。
语言模型是一种概率 NLP 模型,用于执行许多人类任务,例如翻译、语法纠正和文本生成。旧形式的语言模型使用纯统计方法,例如 N-gram 方法,其中假设下一个单词的概率仅取决于前一个单词的固定大小数据。
然而,神经网络的引入取代了以前的方法。人工神经网络(Artificial Neural Networks,ANNs)是模仿人脑神经元结构的计算机程序。神经网络方法很好用,因为它可以处理文本数据中的复杂模式识别并处理文本等顺序数据。这就是为什么当前的语言模型通常基于神经网络。
大语言模型是一种机器学习模型,可以从大量数据文档中学习以执行通用语言生成。它们仍然是一个语言模型,但神经网络学习的大量参数使得它们被认为很大。用外行人的话来说,该模型可以通过很好地根据给定的输入单词预测下一个单词来执行人类的书写方式。
大语言模型任务的示例包括语言翻译、机器聊天机器人、问答等等。从任何数据输入序列中,该模型都可以识别单词之间的关系,并根据指令生成合适的输出。
几乎所有使用文本生成的生成式人工智能产品都是由大语言模型提供支持的。ChatGPT、Google 的 Bard 等大型产品都使用大语言模型作为其产品的基础。
中级
读者拥有了数据科学知识,但需要更多地了解该级别的大语言模型。至少,读者可以理解数据字段中使用的术语。在这个级别,我们将更深入地研究基础架构。
如前所述,大语言模型是一种基于大量文本数据训练的神经网络模型。为了进一步理解这个概念,了解神经网络和深度学习的工作原理将是有益的。
在上一级别中,我们解释了神经元是模仿人脑神经结构的模型。神经网络的主要元素是神经元,通常称为节点。为了更好地解释这个概念,请参见下图中的典型神经网络架构。
正如我们在上图中看到的,神经网络由三层组成:
输入层接收信息并将其传输到下一层的其他节点。
所有计算发生的隐藏节点层。
计算输出所在的输出节点层。
当我们训练具有两个或更多隐藏层的神经网络模型时,这称为深度学习。之所以称为深度,是因为它之间使用了许多层。深度学习模型的优势在于它们能够自动从数据中学习并提取特征,这是传统机器学习模型无法做到的。
在大语言模型中,深度学习非常重要,因为该模型是建立在深度神经网络架构之上的。那么,为什么叫大语言模型呢?这是因为数十亿层是根据大量文本数据进行训练的。这些层将产生模型参数,帮助模型学习语言中的复杂模式,包括语法、写作风格等等。
模型训练的简化流程如下图所示。
该过程表明,模型可以根据输入数据的每个单词或句子的可能性生成相关文本。在大语言模型中,高级方法使用自监督学习和半监督学习来实现通用能力。
自监督学习是一种没有标签的技术,而是由训练数据本身提供训练反馈。它用于大语言模型训练过程,因为数据通常缺乏标签。在大语言模型中,人们可以使用周围的上下文作为线索来预测下一个单词。相比之下,半监督学习将监督和无监督学习概念与少量标记数据相结合,为大量未标记数据生成新标签。半监督学习通常用于具有特定背景或领域需求的大语言模型。
高级
在第三级中,我们将更深入地讨论大语言模型,特别是研究大语言模型的结构以及它如何实现类人的生成能力。
我们已经讨论过大语言模型是基于具有深度学习技术的神经网络模型。近年来,大语言模型通常是基于基于 Transformers 架构构建的,Transformers 基于 Vaswani 等人引入的多头注意力机制。并已在许多大语言模型中使用。
Transformers 是一种模型架构,试图解决之前在 RNN 和 LSTM 中遇到的顺序任务。语言模型的旧方法是使用 RNN 和 LSTM 顺序处理数据,模型将使用每个单词输出并将它们循环回来,这样模型就不会忘记。然而,一旦引入 Transformers,它们就会遇到长序列数据的问题。
在我们深入研究 Transformers 之前,我想介绍一下之前在 RNN 中使用的 encoder-decoder 的概念。encoder-decoder 结构允许输入和输出文本的长度不同。具体用例是语言翻译,它通常具有不同的序列大小。
结构可分为两种。第一部分称为 encoder(编码器),它是接收数据序列并基于它创建新表示的部分。该表示将用于模型的第二部分,即 decoder(解码器)。
RNN 的问题在于,即使使用上面的 encoder-decoder 结构,模型也可能需要帮助记住更长的序列。这就是注意力机制可以帮助解决问题的地方,一个可以解决长输入问题的层。Bahdanau 等人的论文中介绍了注意力机制。通过关注模型输入的重要部分同时进行输出预测来解决 encoder-decoder 类型的 RNN。
Transformers 的结构受到 encoder-decoder 类型的启发,并采用注意力机制技术构建,因此不需要按顺序处理数据。整体 Transformers 模型的结构如下图所示。
在上面的结构中,Transformers 将数据向量序列编码为词嵌入,同时使用解码将数据转换为原始形式。编码可以通过注意力机制为输入分配一定的重要性。
我们已经讨论了一些关于对数据向量进行编码的 Transformers,但是什么是数据向量?在机器学习模型中,我们无法将原始的自然语言数据输入到模型中,因此我们需要将它们转换为数值形式。这个转换过程称为词嵌入,其中每个输入词都通过词嵌入模型进行处理以获得数据向量。我们可以使用许多初始词嵌入,例如 Word2vec 或 GloVe。在基本形式中,词嵌入过程如下图所示。
Transformers 可以接受输入并通过以数字形式(如上面的数据向量)呈现单词来提供更相关的上下文。在大语言模型中,词嵌入通常依赖于上下文,通常根据用例和预期输出进行细化。
总结
我们从初级到高级三个难度级别讨论了大语言模型。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-05-14
2024-04-26
2024-03-30
2024-04-12
2024-05-10
2024-07-18
2024-05-22
2024-05-28
2024-04-25
2024-04-26
2024-11-14
2024-11-13
2024-11-13
2024-11-13
2024-11-12
2024-11-11
2024-11-08
2024-11-07