摘要#

在自然语言处理任务中,模型无法直接理解原始文本,因此必须将文本转换为可计算的数值表示。本章围绕“文本如何表示”这一核心问题展开,系统介绍从基础词袋模型到加权表示方法TF-IDF的演进过程,并结合经典分类任务,展示如何利用已有模型进行复用,从而构建高效的文本分类系统。

本章首先介绍词袋模型(Bag of Words)的基本思想,即忽略词语的语序信息,仅关注词频分布,并通过构建词表将文本映射为高维稀疏向量。在此基础上,进一步讲解文本分词、词表构建以及向量化过程,使读者理解文本特征工程的基本流程。同时,通过引入词频权重的改进方式,使模型能够更细致地表达文本信息,从而提升表达能力。

在应用部分,本章通过基于K近邻算法的垃圾邮件分类任务,展示如何将文本特征与传统机器学习模型结合,实现简单但有效的文本分类系统。在此过程中,读者将学习如何加载原始文本数据、构建训练集与测试集,并完成模型训练与预测,从而理解“特征表示 + 传统模型”的经典NLP范式。

随后,本章引入TF-IDF方法,从信息论角度改进词袋模型,通过衡量词语在文档集合中的重要性,实现对高频无意义词的有效抑制。通过理论推导与代码示例相结合的方式,读者可以清晰理解TF-IDF的计算逻辑及其在文本分类中的实际作用,从而进一步提升模型效果。

最后,本章介绍词云图的生成方法,通过可视化方式直观展示文本中词语的重要程度与分布特点,使抽象的文本特征变得更加直观易懂。通过本章学习,读者将掌握文本特征提取的基础方法,并理解如何将这些特征与传统机器学习模型结合,实现完整的文本分析与分类流程。

本章内容

6.1 词袋模型

在本节中,我们首先介绍了第1种将文本转化为向量的词袋模型,接着介绍了一款常用的中文分词工具jieba库,并演示了如何通过jieba进行分词处理并进行词频统计;然后介绍了如何实现词袋模型的最后一步——向量化表示;

6 .2 基于K近邻算法的垃圾邮件分类

在这节中,我们首先以一个真实的垃圾邮件数据集为例,详细介绍了如何通过sklearn中的K近邻模型来完成文本的分类任务,包括载入原始文本数据、制作数据集、划分数据集等;然后还介绍了如何通过joblib模块来完成模型的持久化和复用;

6.3 考虑权重的词袋模型

在本节中,我们首先介绍了什么是TFIDF,以及为什么需要使用TFIDF;接着介绍了TFIDF的计算原理,并同时用真实的示例演示了TFIDF的整个详细计算过程;

6.4 词云图

在本节中,我们首先介绍了什么是词云图,接着介绍了如何根据得到的词频统计结果通过word cloud库生成词云图,最后还介绍了如何生成自定义形状的词云图。