什么是生成式人工智能?
在过去几年中,机器学习领域取得了迅猛进步,创造了一个新的子领域:生成式人工智能(Generative AI)。这些程序通过分析大量的数字化材料产生新颖的文本、图像、音乐和软件。本文将深入探讨其原理、历史及核心技术。
本文介绍了生成式人工智能的基本概念、发展历程及技术原理。内容涵盖人工智能历史、机器学习与深度学习的区别、大型语言模型(LLM)的核心工作机制,包括 Token 化、词嵌入、Transformer 架构及注意力机制。文章还解释了预训练、人类反馈强化学习(RLHF)等训练流程,分析了模型幻觉等局限性,并提供了 Python 分词代码示例。最后探讨了大模型面临的算力、安全及伦理挑战,展望了其在多模态应用中的未来趋势。

在过去几年中,机器学习领域取得了迅猛进步,创造了一个新的子领域:生成式人工智能(Generative AI)。这些程序通过分析大量的数字化材料产生新颖的文本、图像、音乐和软件。本文将深入探讨其原理、历史及核心技术。
第一波生成式人工智能主要致力于进行自然语言对话。被称为'大型语言模型'(LLMs)的这些模型已经展示出在各种任务上超凡的表现,拥有超越人类的能力,同时也显示出对虚假、不合逻辑的倾向,以及表达虚假情感的倾向。它们用通俗的语言与用户交流,并轻松解决各种复杂问题。
但这只是 GAI 革命的开始。支撑 GAI 的技术是相当通用的,任何可以收集和准备进行处理的数据集,GAI 都能够学习,这在现代数字世界是一个相对简单的任务。
AGI(人工通用智能)与 GAI(生成式人工智能)不可混淆。AGI 一直是科学家们世代追求的幻想,更不用说无数科幻电影和书籍了。值得注意的是,答案是'有条件的肯定'。在实际应用中,这些系统是多才多艺的'合成大脑',但这并不意味着它们具有人类意义上的'思想'。它们没有独立的目标和欲望、偏见和愿望、情感和感觉:这些是独特的人类特征。但是,如果我们用正确的数据对它们进行训练并指导它们追求适当的目标,这些程序可以表现得好像具有这些特征一样。
这是一个容易问出但难以回答的问题,有两个原因。首先,对于智能是什么,人们几乎没有达成共识。其次,凭借目前的情况,很少有理由相信机器智能与人类智能有很大的关系,即使看起来很像。
人工智能(AI)有许多提议的定义,每个定义都有其自己的侧重点,但大多数都大致围绕着创建能够表现出人类智能行为的计算机程序或机器的概念。学科的奠基人之一约翰·麦卡锡(John McCarthy)在 1955 年描述了这一过程,'就像制造一台机器以人类的方式行为一样'。
'人工智能'一词的首次使用可以归因于一个特定的个人——约翰·麦卡锡,他是一位 1956 年在新罕布什尔州汉诺威达特茅斯学院的助理数学教授。与其他三位更资深的研究人员一起,麦卡锡提议在达特茅斯举办一次关于这个主题的夏季会议。
在达特茅斯会议之后,对该领域的兴趣迅速增长。研究人员开始着手各种任务,从证明定理到玩游戏等。一些早期的突破性工作包括阿瑟·塞缪尔于 1959 年开发的跳棋程序。当时许多演示系统都专注于所谓的'玩具问题',将其适用性限制在某些简化或自包含的世界中,如游戏或逻辑。这种简化在一定程度上受到当时有限的计算能力的驱使。
从其早期起源开始,人工智能研究人员就认识到学习能力是人类智能的重要组成部分。问题是人们是如何学习的?我们能否以与人类相同的方式,或至少与人类一样有效地编写计算机来学习?
在机器学习中,学习是中心问题。说某物被学习了意味着它不仅仅被捕捉并存储在数据库中的数据一样——它必须以某种方式表示出来,以便可以加以利用。一般来说,学习的计算机程序会从数据中提取模式。
大型语言模型(LLMs)是一种生成人工智能系统,用于以纯文本形式生成对问题或提示的回应。这些系统使用专门的多层次和多方面的神经网络,在非常大的自然语言文本集合上进行训练,通常从互联网和其他合适的来源收集而来。
训练一个 LLM 可能非常耗时和昂贵。如今,最常见的商业可用系统在数千台强大处理器上同时训练数周,耗资数百万美元。这些程序通常被称为'基础模型',具有广泛的适用性和长期的使用寿命。它们可以作为许多不同类型的专业 LLM 的基础。
LLM 完成了对大型文本语料库的'基础训练'后,就要进入'修身养性'的阶段。这包括向它提供一系列示例,说明它应该如何礼貌地和合作地回答问题,以及最重要的是,它不被允许说什么。这个社交化步骤是通过所谓的人类反馈强化学习(RLHF)来完成的。RLHF 就是其名,人类审查 LLM 对一系列可能引起不当行为的提示的反应,然后一个人向它解释回应的问题,帮助 LLM 改进。
完成训练后,LLM 接受用户的提示或问题作为输入,然后对其进行转换,并生成一个回应。与训练步骤相比,这个过程快速而简单。它们将这种'猜测下一个词'的技术扩展到更长的序列上。然而,重要的是要理解,分析和猜测实际上不是在词本身上进行的;而是在所谓的标记上进行的。
简化的单词级解释忽略了 LLMs 如何在我们今天的计算机类别中表示这些大量的单词集合。在任何现有或想象中的未来计算机系统中,存储数千个单词的所有可能序列都是不现实的。因此,研究人员重新利用了神经网络的试验和真实方法,将这些巨大的集合减少为更易管理的形式。
LLMs 将每个单词表示为一种特定形式的向量(列表),称为嵌入。嵌入将给定的单词转换为具有特殊属性的向量:相似的单词具有相似的向量表示。想象一下,'朋友','熟人','同事'和'玩伴'这些词的嵌入。目标是,嵌入应该将这些单词表示为彼此相似的向量。这通过代数组合嵌入来促进某些类型的推理。
单词嵌入的一个缺点是它们并不固有地解决多义性的问题。处理这个问题有几种方法。例如,如果训练语料库足够详细,单词出现的上下文将倾向于聚合成统计簇,每个簇代表同一个单词的不同含义。这允许 LLM 以模棱两可的方式表示单词,将其与多个嵌入相关联。
人工神经网络(ANN)是受到真实神经网络的某些假定组织原则启发的计算机程序。人工神经网络中的神经元通常组织成层。底层也称为'输入'层。其他内部层是行动发生的地方,被称为'隐藏'层。每个隐藏层中的神经元与它们上面和下面的层中的所有神经元相连。这些相互连接被建模为数值权重。
神经网络的工作原理如下:我们根据输入设置神经元的值。然后对于上一级的每个神经元,我们通过计算下一级神经元与较低级神经元之间的连接的权重乘积来计算其激活值。我们继续这个过程,从每一级横跨,然后向上一级工作。当我们到达顶部时,顶层的一个神经元将被高度激活,这就给了我们答案。
Transformer 是一种特殊类型的神经网络,通常用于大型语言模型。当一个 Transformer 模型被给予一句话进行处理时,它不会单独查看每个单词。相反,它一次查看所有单词,并为每对单词计算一个'注意分数'。注意分数确定了句子中每个单词应该对其他每个单词的解释产生多大影响。
例如,如果句子是'猫坐在垫子上',当模型处理单词'坐'时,它可能会更多地关注单词'猫',而对单词'垫子'关注较少。但是当处理单词'上'时,它可能会更多地关注'垫子'。
当你要求 LLM 回答问题时,类似的过程也会发生。LLM 首先将您的单词转换为嵌入,然后它以相同的方式处理您的询问,使其能够专注于输入的最重要部分,并使用这些来预测如果您开始回答问题,则输入的下一个单词可能是什么。
在语言模型中,"tokens"是指单词、单词部分(称为子词)或字符转换成的数字列表。每个单词或单词部分都被映射到一个特定的数字表示。大多数语言模型倾向于使用子词 tokenization,因为这种方法既高效又灵活。子词 tokenization 能够处理单词的变形、错字等情况,从而更好地识别单词之间的关系。
幻觉是指 LLMs 在回答问题或提示时,并不会查阅其训练时接触到的所有词序列,这是不切实际的。这意味着它们并不一定能够访问所有原始内容,而只能访问那些信息的统计摘要。与你一样,LLMs 可能'知道'很多词,但它们无法重现创建它们的确切序列。LLMs 很难区分现实和想象。即使它们能够咨询互联网等其他来源,也不能保证它们会找到可靠的信息。
为了更直观地理解 Token 的概念,以下是一个使用 Python 和 Hugging Face Transformers 库进行分词的简单示例:
from transformers import AutoTokenizer
# 加载预训练的 tokenizer
model_name = "bert-base-chinese"
tokenizer = AutoTokenizer.from_pretrained(model_name)
# 输入文本
text = "什么是生成式人工智能?"
# 分词
tokens = tokenizer.tokenize(text)
print(f"Tokens: {tokens}")
# 编码为 ID
input_ids = tokenizer.encode(text, add_special_tokens=True)
print(f"Input IDs: {input_ids}")
这段代码展示了如何将自然语言文本转换为模型可以处理的数字序列。tokenizer负责将字符串分割成 token,并映射到对应的 ID,这是 LLM 处理输入的第一步。
随着技术的进步,大模型正在向多模态方向发展,能够同时处理文本、图像、音频等多种数据类型。然而,挑战依然存在。
尽管存在挑战,生成式人工智能无疑正在重塑各行各业。从软件开发辅助到创意内容生成,再到科学发现,其潜力巨大。掌握相关技术不仅有助于职业发展,更能推动技术创新。
生成式人工智能代表了当前人工智能发展的前沿。通过理解其背后的原理,如 Transformer 架构、注意力机制、嵌入表示以及训练流程,我们可以更好地利用这些工具。虽然幻觉和伦理问题仍然存在,但随着技术的不断成熟,我们有理由相信,生成式 AI 将在未来发挥更加重要的作用。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online