Sklearn 机器学习 文本数据 计数向量化加入停用词
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖
本博客的精华专栏:
【自动化测试】 【测试经验】 【人工智能】 【Python】
Sklearn 机器学习中文本数据的计数向量化与停用词处理实战
在自然语言处理中,文本数据必须转换为数值形式,才能供机器学习模型处理。其中,计数向量化(Count Vectorization) 是最常见也最基础的一种文本特征提取方法。而在中文文本处理中,如果不处理常见无效词语,如“的”、“是”、“我”等,则会引入大量噪声。因此,停用词(Stop Words) 处理也是文本预处理中的关键步骤。
本文将结合 sklearn
的 CountVectorizer
,使用 jieba
分词工具,详细讲解如何对中文文本数据进行计数向量化,并结合自定义停用词文件进行清洗处理。
📌 一、什么是计数向量化(Count Vectorization)
计数向量化是将文本中的每个词语转换为特征空间中的一个维度,记录其在文本中出现的次数。
例如,有如下两条文本数据:
文本1:我 爱 自然语言处理
文本2:我 不 爱 机器学习
构建词表后,可以形成如下词频矩阵:
词语 | 向量索引 |
---|---|
我 | 0 |
爱 | 1 |
自然语言处理 | 2 |
不 | 3 |
机器学习 | 4 |
最终向量化结果如下:
- 文本1:[1, 1, 1, 0, 0]
- 文本2:[1, 1, 0, 1, 1]
每条文本都被转换为一个定长向量,每一维对应一个词语在该文本中出现的次数。这种方式是构建文本分类、情感分析等模型的常见起点。
📘 二、什么是停用词?为什么需要处理?
停用词(Stop Words) 是指那些在文本中频繁出现、但对语义理解贡献不大的词汇,例如“的”、“是”、“了”、“我”等。