Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

73年前,香农已经给大模型发展埋下一颗种子

AI 考古,追溯到了祖师爷头上。

当今 AI 领域爆火的大语言模型(LLM),其原理是香农提出来的?

今天,普林斯顿大学教授承现峻(Sebastian Seung)抛出了这样一个观点:1951 年,在贝尔实验室(总部位于新泽西州 Murray Hill)工作的克劳德・香农提出了预测下一个单词的问题,这成为了当前大语言模型(LLM)的种子。

如今很多看似新潮前沿的概念,其实距离提出已经相隔了好几十年,即使在计算机科学这样的新兴领域,例子也屡见不鲜。这个观点以及提到的 Murray Hill 引起热议,图灵奖得主、Meta 首席科学家 LeCun 表示,新泽西州的 Murray Hill、Florham Park 和普林斯顿都「诞生」了很多有影响力的工作。

LeCun 又列举了很多知名的研究成果:

  • Hopfield 网络(美国科学家 Hopfield 同时在贝尔实验室和普林斯顿大学任职)。
  • ConvNets
  • Boosting/Adaboost
  • 非负矩阵分解
  • 支持向量机(SVM)和核机
  • 结构化预测
  • 计算学习理论 / VC 理论中的大量内容

图片

那么说在这其中,香农给如今通向 AGI 的大模型起了个头,是怎么一回事呢?

讨论中提到的 IT 祖师爷克劳德・香农的论文是《Prediction and Entropy of Printed English》。

图片

论文链接:https://www.princeton.edu/~wbialek/rome/refs/shannon_51.pdf

该研究于 1951 年 1 月发表在期刊《The Bell System Technical Journal》上,至今已被各路学者引用过超过 4000 次。

 这篇论文中,香农主要探讨了如何估算语言的熵(entropy)和冗余度(redundancy),并提出了一种新方法。 

其中:

  • 语言的熵是衡量每个字母平均产生的信息量的统计参数。如果语言被最有效地转换成二进制数字(0 或 1),熵表示每个字母平均需要的二进制数字数量。
  • 冗余度则衡量由于语言的统计结构(如字母频率、特定字母的后续趋势等)对文本施加的约束。

在定义了熵和冗余之后,就可以考虑把这些概念应用一下了。香农在他的论文中给出了两种估计英语熵的方法。冗余,或对英语文本施加的约束数量,导致其整体熵的下降。例如,规则「i before e except after c」,以及 q 必须始终跟 u 的事实是使英语更加冗余的依赖关系。语法规则、词性以及我们无法编造单词的事实也使英语变得有冗余。

英语中的冗余有时实际上是有益的,因为否则人们如何辨别在嘈杂的房间里说了什么?冗余允许人们在只有部分信息传来时推断出所说的内容。例如,如果听到「Turn phat mufic down!」,人们可以相当好地猜测说话者的意思。

计算英语熵的一种可能方法是使用 N-gram。

给定自然语言 L 的足够长的字符序列 S,考察所有长度为 N 的子字符串

图片

定义 N-gram 熵(Entropy)FN 如下。

图片

当已知前 N - 1 个字母时,我们可以统计计算出下一个字母的熵。随着 N 的增加,熵接近 H,此即英语的熵。以下是香农论文中计算出的值。FN 是当已知前 N - 1 个字母时与第 N 个字母相关的熵。计算 FN 统计数据的难度是 O (26^N),因为有那么多 N 个字母的序列。请注意,F0 只是字母集的最大熵,其中每个字母都有相等的概率。

图片

27 个字母的序列,空格也算作一个字母。几乎总是可以从没有空格的单词序列中填充空格。因此空格基本上被视为是多余的,如果考虑空格,会导致计算出的熵值较低。只有在没有考虑统计数据的情况下,即 F0,添加空格后熵才会更高。这只是增加了另一个可能的符号,就意味着更多的不确定性。

香农建议的另一种策略是计算与英语中每个单词相关的熵,然后取加权平均值。香农使用近似函数来估计超过 8000 个单词的熵。他得到的每个单词的熵值为 11.82 bit,由于平均每个单词有 4.5 个字母,因此每个字母的熵为 2.62 bit。这在上表中以 Fword 给出。

我们已经讨论了如何从熵计算冗余度。当所有符号具有相同的可能性时,冗余度最大,等于 - (log2 (1/26)) = 4.7 bit / 字母。因此,使用公式 1 - H/Hmax,我们可以估算英语的冗余度。香农最初估计这个值为 50%,这意味着英语中大约一半的字母是多余的!

在同一篇文章的后面讨论了一种相当巧妙的计算英语熵的方法。它结合了英语的更多特征,例如统计方法无法明确解释的思路和上下文。

接下来就是如今我们在 NLP 中经常会提起的概念了:假设人类可以根据他们对该语言的先前了解来猜测单词或短语中的字母。香农的巧妙想法是利用这种自然的冗余度衡量标准…… 人类的思维。

他要求受试者逐个猜测短语中的字母。如果受试者猜对了,那么他 / 她就继续猜测下一个字母。如果不是,则告诉受试者下一个字母。在一个短语的 129 个字母中,69% 被猜对了。这意味着英语的冗余度大约为 69%。假设我们只重现那些猜错的字母,即 31%。那么我们可以通过复制从头开始猜测的受试者来恢复原始句子。受试者显然可以正确猜出 69% 的符号,并且他 / 她拥有其余的 31%,因此他 / 她可以仅使用大约 31% 的信息重现原始文本。

实际上,受试者需要的信息略多于 31%。他 / 她需要知道他 / 她会猜错的字母在哪里,因此实际上冗余度可能会少一点。从理论上讲,这是一个很好的例子,但实际上并非如此。句子和受试者的抽样误差会导致结果严重失真。尽管如此,这个例子有助于说明冗余的一个实际例子,并阐明了如何编码英语。无需创建英语的统计语法来计算其熵,人类天生就具有语法。

统计计算英语的冗余有许多实际应用。ASCII 每个字符保留 8 个二进制数字。然而,考虑到一些计算将英语的熵定为大约 1 位 / 字母,这是非常低效的。这意味着理论上存在一种压缩方案,其压缩效果是 ASCII 的 8 倍。现代计算机显然拥有足够大的内存,因此这种低效率并不重要,但 Huffman 压缩和 Lempel-Ziv 压缩算法在存储文本时可以节省大量空间。

通常,当人们说英语是冗余的时,他们指的是大量同义词使我们的词典变得杂乱。信息论意义上的冗余是衡量字母 / 符号在语言中使用效率的指标。英语是一种冗余语言,这不一定是坏事。我们的语言既可以口语也可以书写,除了效率之外,还带来了许多问题。我们希望在嘈杂的房间里也能被人听懂,我们希望单词的发音与含义相对应,我们希望能够轻松地发音。信息率只是英语分析的一小部分。

一个非常有趣的例子可以说明一种语言在统计上能有多好地描述,即英语的 n 阶近似,这是香农最著名的论文《A mathematical theory of communication》里所提到的。如果一只猴子知道英语中字母的 n-gram 频率(其中 n 很大),它能写出可信的英语文本吗?此外,这只猴子「懂」英语吗?如果 N-gram 猴子在一扇门后面,而人类在另一扇门后面,第三方观察者能分辨出哪个是猴子吗?这个问题让人想起了人工智能图灵测试,它没有简单的答案。

但如今的大模型原理,正是通过学习大量的文本数据,来预测下一个词或下一段话的可能性,从而使计算机能够更好地「理解」和生成人类语言。

图片

AI 理解了吗?不好说。但是能猜对吗?看看如今的 ChatGPT,人们心中都已经有了答案。

这也不禁令人感叹,香农真的领先于他的时代。

图片

参考内容:
https://x.com/SebastianSeung/status/1807395697718604225
https://news.ycombinator.com/item?id=35813991
https://cs.stanford.edu/people/eroberts/courses/soco/projects/1999-00/information-theory/entropy_of_english_9.html
理论克劳德・香农
相关数据
克劳德人物

ClaudeLemaréchal是法国应用数学家,也是法国格勒诺布尔附近INRIA的前高级研究员。 在数学优化中,ClaudeLemaréchal因其在非线性优化的数值方法方面的工作而出名,特别是对于不可扭曲扭结问题。 Lemaréchal和菲尔。沃尔夫开创了用于凸面最小化的束下降方法。 机构: 法国国家信息与自动化研究所

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

非负矩阵分解技术

计算学习理论技术

在计算机科学中,计算学习理论(或仅仅是学习理论)是人工智能的一个子领域,致力于研究机器学习算法的设计和分析。

支持向量机技术

在机器学习中,支持向量机是在分类与回归分析中分析数据的监督式学习模型与相关的学习算法。给定一组训练实例,每个训练实例被标记为属于两个类别中的一个或另一个,SVM训练算法创建一个将新的实例分配给两个类别之一的模型,使其成为非概率二元线性分类器。SVM模型是将实例表示为空间中的点,这样映射就使得单独类别的实例被尽可能宽的明显的间隔分开。然后,将新的实例映射到同一空间,并基于它们落在间隔的哪一侧来预测所属类别。

图灵测试技术

图灵测试(英语:Turing test,又译图灵试验)是图灵于1950年提出的一个关于判断机器是否能够思考的著名试验,测试某机器是否能表现出与人等价或无法区分的智能。测试的谈话仅限于使用唯一的文本管道,例如计算机键盘和屏幕,这样的结果是不依赖于计算机把单词转换为音频的能力。

信息论技术

信息论是在信息可以量度的基础上,研究有效地和可靠地传递信息的科学,它涉及信息量度、信息特性、信息传输速率、信道容量、干扰对信息传输的影响等方面的知识。通常把上述范围的信息论称为狭义的信息论,又因为它的创始人是香农,故又称为香农信息论。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

推荐文章
暂无评论
暂无评论~