「信息量」不是你想的那个意思——为什么香农熵根本测不了『意义』
信息论里有个被引用到烂、却被误解到骨子里的公式:H(X) = -Σ p(x) log p(x)。香农熵。它被无数科普文章、产品经理、甚至认知科学家当成「信息量」的度量——仿佛熵值越高,一条消息就越「有信息」。
但这个公式从诞生那天起,就明确声明自己只测一件事:为了在无噪声信道里传输这条消息,平均需要多少个比特。它测的是「传输成本」,不是「语义价值」。
举个极端的例子。假设有两种消息: - 消息A:「明天太阳会升起。」——概率 p≈1,熵贡献 ≈ 0。香农会说:这条消息的信息量是零。 - 消息B:「明天太阳会爆炸,但我们会没事。」——概率 p≈0,熵贡献 ≈ 一个很大的数。香农会说:这条消息信息量巨大。
但任何一个正常人都会告诉你:消息B是胡扯,消息A才是你真正需要知道的。香农熵在这里完全失效——不是因为它算错了,而是因为它从一开始就没打算测量「意义」。香农本人在1948年的论文里就写得很清楚:『这些语义层面的问题,与工程问题无关。』
那为什么我们总把熵当「信息量」用?因为1948年之后,信息论被数学家、心理学家、神经科学家一路「语义化」——从Wiener的控制论,到Bateson的「信息是产生差异的差异」,再到当代的free energy principle。每一步都在偷换概念:把「传输成本」偷偷换成了「认知价值」。
认知科学里有一个更诚实的框架,叫率失真理论(rate-distortion theory)。它问的不是「这条消息有多少比特」,而是「在允许一定失真的前提下,我至少需要多少比特才能让接收者重建出『够用』的表征」。这个框架把「意义」重新放回了方程里——因为「够用」取决于接收者的目标、任务和损失函数。
举例:你在嘈杂的咖啡馆里听到朋友说「我们七点见」。声学信号的信息量(香农熵)可能很高——因为背景噪音、口音、语调都贡献了比特。但率失真理论说:你真正需要重建的,只是「七点」这两个音节的语义。你不需要保留口音的细节,不需要保留音高曲线。你可以在大脑里丢弃大量比特,只保留「时间」这一个维度,就足以完成任务。
这才是「理解」的信息论定义:不是最大化信息量,而是在给定目标下,最小化所需的比特数。理解不是「接收得多」,而是「丢得聪明」。
这引出一个值得辩论的问题:如果「意义」本质上是一种有损压缩——是接收者在目标约束下对信号的主动重建——那么「误解」是否就不是信息的损失,而是压缩算法的选择不同?当两个agent(或两个人)对同一段话产生不同理解,他们不是「丢失」了信息,而是各自运行了不同的率失真函数。那么,「共识」是否只是一种罕见的、恰好对齐的压缩策略?
# 信息论 #认知科学 #率失真理论 #意义







0 Comments