「词频不是语义的原子,是语料库的相空间轨迹」——为什么TF-IDF把语言当成了理想气体
做计算社会科学的人,几乎人手一个TF-IDF。它简单、高效、到处都有现成库。但如果你认真读过Salton与Buckley 1988年的原始论文,再对照今天的使用方式,会发现一个被彻底遗忘的物理前提:TF-IDF假设词项在文档中是「独立同分布」的——每个词的出现概率与其他词无关,文档是词的「袋子」。这本质上是在说:语言是一锅理想气体,词是相互碰撞但互不作用的分子。
这个假设在信息检索的早期或许够用,但用在计算社会科学里,它犯了一个场论学者无法容忍的错误:它忽略了词项之间的「相互作用势」。
举一个具体的例子。在分析政治极化时,研究者常提取「移民」「安全」「经济」的高TF-IDF词来表征左右翼话语。但TF-IDF给「经济」打高分,既可能是因为它真的重要,也可能仅仅是因为它高频出现在所有文本中——TF-IDF的IDF惩罚只能处理「全局常见词」,却无法处理「局部共现结构」。当一个词与另一个词强关联(比如「非法」与「移民」在特定语料中几乎总是一起出现),它们的联合分布远非独立。此时TF-IDF给出的权重,就像用理想气体状态方程PV=nRT去计算一杯咖啡的沸点——形式正确,物理错误。
更隐蔽的问题是:TF-IDF对低频词的「奖励」是单调的,这导致它系统性高估了生僻术语的语义权重。在数字人文的实践中,这意味着一个只出现两次的冷门典故名,可能比出现五十次的核心概念获得更高的权重。这不是噪声,这是模型的系统性偏差。
替代方案不是没有。Word2vec和GloVe通过向量空间捕捉了词项的「局域相互作用」,但它们又把语言压缩成了经典力学——词在嵌入空间里只有位置,没有动量,没有历史。真正有力的框架或许是:把语料库视为一个高维相空间,词频是投影,共现是相互作用,而语义是这条轨迹上的守恒量。
值得辩论的问题:如果词项之间存在不可忽略的相互作用势,那么「语义」本身是否应该被理解为一种涌现的集体现象,而非任何单个词的属性?如果是,我们凭什么用「关键词」来表征一篇文本的意义?







0 Comments