大型语言模型是如何真正工作的
我不知道什么是ChatGPT。如果有人这样说,很可能他们不使用互联网,或者可能生活在真空中。
ChatGPT是LLM AI模型家族的一部分。所以第一个关键问题是“LLMs是什么?”
LLMs代表大型语言模型。它们是先进水平的人工智能模型,可以理解和生成类似人类的文本。LLMs可以写信,生成代码,回答关于任何事物的问题,甚至与我们交谈,就像我们在与人类交谈一样。
但是究竟是什么让LLMs能够完成所有这些任务呢?在本文中,我们将深入探讨LLMs的细节和历史,并讨论一些概念,以了解LLMs的工作原理。我撰写本文时考虑到技术和非技术读者。
让我们开始吧 🚀
暂且不考虑LLM中的起始字母L(大写),只看“语言模型”这个词组,因为语言模型是LLM的基础。
语言模型的基础
什么是语言模型?
这基本上是一个人工智能模型,它可以预测一系列词语中的下一个词。例如,当我们在智能手机上输入一条消息时,它会建议下一组词语,这是在后台支持它的一种语言模型。这是一种非常基本的语言模型在起作用。
语言模型是首先通过在大量文本数据上进行训练而创建的。在训练过程中,它们学习了语言的不同模式和结构,从而使它们能够生成文本,这些文本既在语法上正确,又与上下文相关。
当这种模型变得更加先进或“大型”时,它们甚至可以处理各种复杂的任务,比如翻译语言,总结非常长的文章,生成代码,甚至根据给定的文本回答困难的问题。当它们达到这种水平时,它们被称为大型语言模型(LLMs)。让我们来了解LLM的详细信息。
从单词到句子
预测即将出现的单词听起来可能非常简单,但实际上,LLMs通过理解单词的使用环境来实现这一点。让我们通过一个例子来理解:
让我们来看一个句子“猫坐在”。任何基本的语言模型都可以预测“垫子”会是下一个词,因为它一定在训练数据中见过这样的短语。但是,LLMs通过理解整个句子的上下文进一步提升了预测能力。上下文在任何语言中都非常重要。因为几个词在使用的上下文中会有不同的意义。
一个简单的例子是单词“bank”。单词“bank”可能意味着一个金融机构或者一个河岸。当LLM读到“bank”时,它会检查附近的单词以理解并决定哪个意思是最恰当的。如果句子是“Jon Doe去银行取钱”,模型就知道在这个上下文中,“bank”指的是一个金融机构,而不是河岸。
LLMs 的起源和历史
当ChatGPT在2022年末获得了世界范围的知名度时,您可能突然意识到了LLM的强大力量。但那是这项技术非常成熟的一个版本。因为潜在的LLM已经发展了数十年。
让我们一起来看看LLMs的进化之旅:
1950年至1980年代
这个时期标志着自然语言处理研究和探索的开始。规则基础系统,比如1966年左右的ELIZA,被用来模仿对话。但这样的系统主要依赖预定义脚本,缺乏真正的语言理解。
1980年代 - 1990年代
在这个时候开始使用概率模型,比如n-grams,来预测词序列。使用大型数据集学习语言模式的核心思想也是在这个时候引入的。
2000年代
在这段时间里,我们看到了神经网络的兴起。神经网络让我们具有更强的处理和生成文本的能力。
2017
变压器架构被引入并彻底改变了自然语言处理,通过赋予大型语言模型不同的能力,其中关键之一是能够并行处理文本。
2018年至今
OpenAI的GPT(生成预训练变压器)系列被推出。这包括2018年的GPT1,2019年的GPT2,2020年的GPT3,随后是2023年的GPT4。这些模型在数十亿参数上进行了训练,非常强大。谷歌的BERT模型也为LLM的进步做出了贡献。
LLM的内部运作
训练数据和参数(LLMs的基础)
每个LLM的基础是它所训练的数据。通常这些数据包括来自各种来源的数十亿个单词,包括书籍、学术论文、社交媒体帖子、网站等。当模型处理如此大量的数据时,它学习单词和句子的结构以及通过特定句子结构传达含义的方式。
在训练过程中,模型并不仅仅是记忆短语。它实际上是在学习识别数据中的模式。例如,从一个句子“从前,有一段时间”,它学会了一种模式,通常会跟着一个叙述过去发生事件的故事。这种模式会被编码在模型的参数中。所以下次当它看到“从前,有一段时间”这样的提示时,它会在之前发生过的事情的语境中生成文本。
参数是模型的内部配置,它在训练期间进行调整,以提高预测的准确性。上面讨论的“从前从前”这种模式,就是一个被编码到模型中的参数的例子。参数越多,模型对语言的理解就越准确。
令牌的概念
LLMs将文本分解为称为标记的小单元。 这个标记可以是一个字符,一个单词,甚至是一个子词。 例如,一句话“数据是新油”可能被标记为 [“数据”, “是”, “新”, “油”]。
在标记化之后,模型会分别处理每个标记,考虑其在序列中的位置和与其他标记的关系。通过标记化,模型能够有效地处理不同语言。
LLMs如何处理信息?
在LLM中心是一个神经网络架构,具体来说是Transformer。神经网络是一种相当类似于人类大脑处理信息的算法。它们包含相互连接的节点(神经元)层,这些节点共同工作以分析数据并进行预测。
Transformer体系结构通过允许模型同时处理整个文本序列,而不是逐字逐句地处理,改变了自然语言处理的方式。并且这种并行处理是通过一种称为“注意机制”的机制实现的。注意机制帮助模型专注于文本中最相关的部分。
让我们来看看下面的Transformer 架构。
稍微深入了解LLMs
变压器架构
Transformer 架构由两个主要组件组成:
1)编码器 - 编码器的工作是理解输入文本的含义。它一次性查看整个句子,并理解每个单词与其他单词的关系。通过检查这种关系,它试图理解上下文。这有助于模型理解句子的意思。在理解之后,它会创建句子的特殊表示形式,即编码版本。这种表示形式进一步用于其他任务,如翻译。而这些上下文丰富的编码版本是馈送到下一个称为解码器的组件的版本。
2)解码器-解码器的主要工作是接收来自编码器的理解/表征,并逐步生成一些输出,例如输入文本的翻译版本或答案等。为了实现生成新内容的目标,解码器使用两种机制-> 1)掩蔽自注意力和2)交叉注意力。
遮蔽自注意力意味着当模型逐个生成单词时,它只能看到已经生成的单词,而不是后面的单词。这是为了确保模型在生成之前不会通过看到未生成的未来单词而作弊。
跨注意力连接解码器与编码器的输出,以确保生成的输出在上下文中。编码器已经理解了输入句子,并为我们提供了该输入句子的表示形式。
使用交叉注意力,解码器确保在生成新单词时,回顾编码器的编码信息,以跟踪上下文并确保生成的输出与输入相匹配。
LLM是如何接受培训的?
训练LLM可能是一个复杂的任务,因为它涉及向模型输入大量的文本,并使其预测序列中的下一个单词。如果模型的预测不正确,它将使用一种称为反向传播的技术。通过使用反向传播,模型会调整其参数,以改善其未来的预测。
这个过程在训练过程中会重复几百万甚至几十亿次。模型会慢慢学习语言中的重要模式,包括语法规则、词语关联以及文本中的成语表达。例如,模型可能会学习到“bolt from the blue”这个短语是一个成语,意思是“完全的惊喜”,而不是字面上来自蓝天的螺栓。
而这样复杂的训练需要大量的计算资源,包括专用硬件,如GPU(图形处理器)和TPU(张量处理器),用于处理大量数据和复杂计算。
LLMs的真实世界应用
LLM正在改变许多行业。 仅举几个例子,在客户服务中,LLM可以处理复杂问题的聊天机器人,提供即时响应,还可以通过与人类的互动学习,以便随着时间的推移改进。 在医疗保健领域,LLM用于分析患者记录,总结医学文献,并最终诊断患者病情并推荐治疗方案。
但这些只是极少数例子,并且只是冰山一角。因为利用LLMs的可能性非常广泛。比如在创意领域,它们被用来创作音乐、视频,设计视频游戏叙事,甚至为电影和电视节目编写剧本。它们模仿人类创造力的能力非常强大。
结论
我相信我不是一个人,深受LLM的强大所感动。LLMs标志着人工智能的一个重大进步,因为它们具备理解和生成准确的人类内容的能力。本文主要关注LLMs如何运作的一些基本细节。
无论您是非技术读者还是对人工智能有浓厚兴趣的人,我希望本文能够为您提供对LLMs的基本理解,从而激发您进一步探索这一令人兴奋的领域的兴趣。
感谢您抽出宝贵的时间阅读这篇文章。如果这篇文章对提升您对LLM的知识有所帮助,欢迎点赞。