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

AI 考古,追溯到了祖师爷头上。当今 AI 领域爆火的大言语模型(LLM),其原理是香农提出来的?今天,普林斯顿大学教授承现峻(Sebastian Seung)抛出了这样一个观点:1951 年,在贝尔实验室(总部位于新泽西州 Murray Hill)工作的克劳德・香农提出了预测下一个单词的问题,这成为了当前大言语模型(LLM)的种子。此刻很多看似新潮前沿的概念,其实距离提出已经相隔了好几十年,即使在算计机科学这样的新兴领域,例子也屡见不鲜。这个观点以及提到的 Murray Hill 引起热议,图灵奖得主、Meta

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 理论中的大量内容

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

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

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

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

论文链接: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 的子字符串

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

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

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

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

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

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 山公在一扇门后面,而人类在另一扇门后面,第三方观察者能分辨出哪个是山公吗?这个问题让人想起了人工智能的图灵测试,它没有简单的答案。

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

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

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

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

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

参考内容:

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

给TA打赏
共{{data.count}}人
人已打赏
理论

登Nature子刊,拓扑Transformer模型从事多标准蛋白质-配体互作猜测,助力药物研发

2024-7-2 11:59:00

理论

13瓦功耗处理10亿参数,接近大脑效率,消除LLM中的矩阵乘法来颠覆AI现状

2024-7-4 15:42:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索