郭震 AI公众号:郭震AI

8 文本预处理之去除停用词

发布日期:

最近更新:

分类: NLP小白

预计阅读: 3 分钟

阅读次数: 0

预计阅读3 分钟
结构重点9 个
图文要点6 张
正文规模1.3k 字

整理说明

这篇内容怎么整理

郭震 · 2026-06-04

独立整理围绕 9 个结构重点拆成环境、步骤、验证点和常见误区,尽量让读者能照着复现。
图文对照保留 6 张和配置、流程、判断结果有关的图片,方便快速定位正文重点。
持续校对工具、模型和命令变化较快,后续优先修正入口、参数和风险提醒。

阅读路线

先按这条路线读

先抓住主线,再回到代码、配置和图文细节,读起来会更稳。

图文要点

先看本文图文节点

按图先建立主线,再跳回正文核对步骤、配置和判断标准。

去除停用词流程图查看大图
去除停用词流程图

停用词不能机械删除。否定词、程度词和领域高频词在某些任务里非常关键,删掉会改变句子意思。

去除停用词实操核对图查看大图
去除停用词实操核对图

我会先用任务样本验证停用词表。看到“不好”“不是”“很”这类词时,尤其不能盲删。

在自然语言处理(NLP)中,文本预处理是至关重要的一步。在上一篇中,我们探讨了分词的基本概念与方法,这为后续处理奠定了坚实的基础。今天,我们将继续讨论去除停用词的主题,这是文本清洗和预处理过程中不可或缺的一环。接下来,我们将了解什么是停用词、它们的作用,以及如何在Python中去除这些词。

什么是停用词?

停用词通常是指在文本中出现频率较高,但对文本理解帮助较小的词语。例如,英语中的theisin等词都是常见的停用词。虽然这些词在语法上是必要的,但在许多NLP任务中,它们往往不会提供有价值的信息。因此,我们可以选择在进行文本分析时将其去除。

停用词处理判断卡查看大图
停用词处理判断卡

处理停用词时,先判断任务是否依赖语气、否定词和结构词。不是所有常见词都应该删掉。

停用词的选择

去除停用词有助于减少文本的维度,提高后续分析的效率。例如,在构建词云或者进行文本分类时,保留停用词可能会导致模型混淆,因为这些词对文本的主旨贡献甚微。

自然语言处理阅读地图卡查看大图
自然语言处理阅读地图卡

《文本预处理之去除停用词》可以按“场景、概念、动作、结果”来读。先把这四件事对齐,再回到正文里的参数、代码或流程。

然而,在某些情况下,例如情感分析或某些类型的文本生成任务中,停用词也可能承载了重要的上下文信息,因此是否保留停用词需要根据具体任务而定。

如何去除停用词?

在Python中,通常可以使用NLTK(Natural Language Toolkit)库来去除停用词。下面是一个简要的示例,展示如何使用NLTK去除英文文本中的停用词。

安装NLTK

首先,确保你已安装NLTK库。你可以通过以下命令安装:

pip install nltk

示例代码

import nltk
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize

# 下载停用词列表(首次使用时需要下载一次)
nltk.download('punkt')
nltk.download('stopwords')

# 示例文本
text = "This is an example showing off the stop words filtration."

# 分词
words = word_tokenize(text)

# 获取停用词列表
stop_words = set(stopwords.words('english'))

# 去除停用词
filtered_words = [word for word in words if word.lower() not in stop_words]

print("原始词:", words)
print("去除停用词后的词:", filtered_words)

代码解析

  1. 分词: 使用nltk.tokenize中的word_tokenize函数将文本分解为单词。
  2. 获取停用词: 使用nltk.corpus.stopwords获取常用的英语停用词列表。
  3. 过滤停用词: 使用列表推导式,遍历每个单词并检查它是否在停用词列表中。如果不在,我们将其保留。

运行上述代码后,你会看到输出结果:

原始词: ['This', 'is', 'an', 'example', 'showing', 'off', 'the', 'stop', 'words', 'filtration', '.']
去除停用词后的词: ['example', 'showing', 'stop', 'words', 'filtration', '.']

从输出结果可以看出,原始文本中的停用词如This, is, an, the等已经被成功去除。

常用停用词列表

除了英语,停用词的概念也适用其他语言。例如,在中文处理时,常用的停用词可以包括的、了、在等。

假设你在处理中文文本,使用jieba库进行分词和停用词去除的代码示例如下:

中文示例代码

import jieba

# 中文停用词列表
stop_words = set(['的', '了', '在'])

# 示例文本
text = "在自然语言处理中,停用词的去除是非常重要的步骤。"

# 分词
words = jieba.cut(text)

# 去除停用词
filtered_words = [word for word in words if word not in stop_words]

print("原始词:", list(words))
print("去除停用词后的词:", filtered_words)
文本预处理之去除停用词应用复盘卡查看大图
文本预处理之去除停用词应用复盘卡

读到这里,可以把《文本预处理之去除停用词》整理成一张复盘表:先说清主线,再拿一个小任务检查结果。

文本预处理之去除停用词应用检查卡查看大图
文本预处理之去除停用词应用检查卡

读完《文本预处理之去除停用词》后,可以先挑一个小样例走完整流程,再判断哪些步骤已经能独立完成。

小结

在本篇中,我们探讨了去除停用词的重要性和方法,学习了如何利用Python及其库来处理停用词。这一过程不仅可以提高模型的效率,也能增强后续文本分析的效果。在下一篇文章中,我们将进一步研究词干提取与词形还原,帮助我们更好地规范和标准化文本。期待与大家的下次讨论!

继续阅读

从这篇继续找到相关教程

AI 教程总索引

常见问题

读前先确认这三点

文本预处理之去除停用词适合谁读?

这是 自然语言处理入门 系列第 8 / 30 篇,适合正在学习自然语言处理入门,并且需要把概念落到操作步骤或判断标准里的读者。

读这篇自然语言处理入门教程要多久?

按中文技术文章阅读速度估算,通读大约 3 分钟;如果要跟着复现,建议把命令、配置和结果检查分开做。

这篇文章里的图文节点怎么用?

正文里有 6 个图文节点,可以先用它们抓住流程、配置和判断点,再回到对应段落细读。

分享文章

转发到常用平台

微信/朋友圈可先复制链接

相关教程

AI 教程总索引

继续阅读

继续找到相关 AI 教程

返回栏目

Reader Messages

读者留言

有问题、补充资料或实测结果,可以直接留下。这里不需要登录。

最多 800 字

为了防刷,每条留言会做长度、链接数量和提交频率限制。

0/800

留言列表

0
正在加载留言...