TF-IDF与n-gram还有用吗?Maths, CS AI Compendium经典NLP技术解析
2026/9/16 16:28:06 网站建设 项目流程

TF-IDF与n-gram还有用吗?Maths, CS & AI Compendium经典NLP技术解析

【免费下载链接】maths-cs-ai-compendiumBecome a cracked AI/ML researcher/engineer with this unconventional textbook covering maths, computing, and ML with intuition.项目地址: https://gitcode.com/GitHub_Trending/mat/maths-cs-ai-compendium

在深度学习和大语言模型时代,很多人问:TF-IDF、n-gram 语言模型这些经典 NLP 技术真的被淘汰了吗?开源教材Maths, CS & AI Compendium(数学、计算机与 AI 手册)用直觉优先的方式给出了答案:它们不仅没死,反而是现代搜索、检索增强生成(RAG)和无数生产系统的"隐形骨架"。本文将带你快速吃透词袋模型、TF-IDF 加权、n-gram 预测与困惑度,看懂这些经典技术背后的数学直觉,以及它们今天仍然有用的真实场景。

一、TF-IDF 为什么能分清"重要词"和"口水词"?

在大词向量出现之前,NLP 用**词袋模型(Bag-of-Words, BoW)**把文档变成"单词计数"向量:词汇表有多少词,向量就有多少维,每个位置记录该词出现的次数。

词袋模型有个致命弱点:它对所有词一视同仁。"the" 和 "revolutionary"(革命性的)权重相同——这显然不合理。

TF-IDF(词频-逆文档频率)就是为了解决这个问题而生的:

TF-IDF(t, d) = TF(t, d) × IDF(t)

  • TF(词频):词t在文档d里出现得越多,贡献越大;
  • IDF(逆文档频率):$\text{IDF}(t) = \log \frac{N}{|{d: t \in d}|}$。一个词出现在几乎所有文档里(比如 "the"),IDF 趋近于 0,权重被压到最低;只出现在少数文档里的词,IDF 高,说明它对那篇文档很有"区分度"。

一句话记忆:在本文高频、在全局低频 = 重要。用 TF-IDF 向量配上余弦相似度,就构成了经典信息检索与搜索引擎的数学基础。

📄 完整推导与从零实现的 TF-IDF 余弦相似度检索见:chapter 07 - computational linguistics/02. text processing and classic NLP.md

二、n-gram 语言模型:用"数数"预测下一个词

n-gram 模型回答一个问题:一个词序列出现的可能性有多大?

完整公式需要记住所有历史,不现实。马尔可夫假设把历史截断到前 $n-1$ 个词:

  • 二元模型(bigram, n=2):只根据上一个词预测下一个词,$P(w_i \mid w_{i-1}) \approx \frac{\text{count}(w_{i-1}, w_i)}{\text{count}(w_{i-1})}$
  • 三元模型(trigram, n=3):根据前两个词预测,精度更高、代价也更大

两个绕不开的概念

1. 困惑度(Perplexity):衡量语言模型"被测试集惊到的程度"。困惑度越低,模型预测能力越强——均匀分布 10,000 词表时困惑度是 10,000,好的 bigram 约 200,现代神经网络语言模型已跌破 20。

2. 平滑(Smoothing):训练时没见过的 n-gram 概率为 0,会让整句概率归零。Kneser-Ney 平滑是经典解法:它引入"续接概率"——统计一个词能跟在多少个不同词后面。比如 "Francisco" 几乎总跟在 "San" 后面,即使 "San Francisco" 很常见,也不会被模型在别的语境下胡乱预测。

n-gram 快、可解释、无需训练(只需统计),曾是统治几十年的技术;短板是无法捕捉长距离依赖——"The keys that I left on the tablearemissing" 需要知道远处的主语 "keys" 是复数。

三、对比视角:从 TF-IDF 到词向量,变了什么?

维度TF-IDFn-gramWord2Vec / 大模型
词表示稀疏向量(每词一维)概率表稠密低维向量
语义无(纯计数)弱(局部共现)强(类比、语义关系)
训练不需要不需要(统计)需要
速度⚡极快⚡极快🐢较慢
可解释性

关键洞察:Word2Vec 的 Skip-gram 在收敛时,向量点积恰好近似平移点互信息矩阵——它做的本质上是 TF-IDF/共现矩阵那套思路的可扩展在线版本。经典统计方法并不是被"打败"了,而是被"吸收"了。

四、实战判断:什么时候该用经典 NLP 技术?

优先用 TF-IDF / n-gram 的场景

  • 搜索引擎、关键词检索、日志/文本聚类(快、省、稳定)
  • RAG 检索的第一层:向量召回前用 TF-IDF/BM25 做粗筛,是主流工程标配
  • 拼写纠错、模糊匹配(编辑距离 + 词典统计)
  • 小数据、低资源、无 GPU 的边缘环境
  • 需要可解释结果的业务审计与面试讲解

该交给神经网络的场景

  • 语义理解、情感、翻译、长文生成
  • 需要上下文消歧的下游任务

💡一句话总结:n-gram 教会了模型"数概率",TF-IDF 教会了模型"分权重"——这两课,大语言模型至今还在上。

五、学习路线与资料索引

推荐按以下顺序学习(只需初等数学和基础 Python):

  1. 📘 chapter 07 - computational linguistics/02. text processing and classic NLP.md —— 分词(BPE/WordPiece)、TF-IDF、n-gram、平滑、POS 标注与 NER
  2. 📘 chapter 07 - computational linguistics/03. embeddings and sequence models.md —— Word2Vec/GloVe 如何继承并超越词袋思想
  3. 📘 chapter 07 - computational linguistics/04. transformers and language models.md —— 现代 Transformer 语言模型
  4. 📗 全书总览与章节导航:README.md
  5. 📄 快速摘要版内容索引:llms.txt

项目还内置了一个MCP 服务器(mcp/),可让 AI 助手把整个 Compendium 当作知识库直接查阅概念,学习时非常顺手。

🔗 相关配图:images/bag_of_words.svg、images/markov_chain.svg

经典不等于过时。理解 TF-IDF 的"区分度"直觉和 n-gram 的"马尔可夫近似",你才能真正读懂现代 LLM 站在哪些肩膀上。

【免费下载链接】maths-cs-ai-compendiumBecome a cracked AI/ML researcher/engineer with this unconventional textbook covering maths, computing, and ML with intuition.项目地址: https://gitcode.com/GitHub_Trending/mat/maths-cs-ai-compendium

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询