【NLP】文本预处理:删除停用词和标点符号

目录

什么是停用词?

在处理自然语言之前通常被过滤掉的单词称为停用词。这些词实际上是任何语言中最常见的词(如冠词、介词、代词、连词等),不会给文本增加太多信息。英语中几个停用词的例子是"the","a","an","so","what"。

为什么要删除停用词?

停用词在任何人类语言中都是大量存在的。通过删除这些词,我们从文本中删除了底层信息,以便更加关注重要的信息。我们可以说,删除这些词语并不会对我们的任务训练产生任何负面影响。

删除停用词肯定会减少数据集的大小,从而减少训练时间,因为训练中涉及的标识数量较少。

我们总是删除停用词吗?他们总是对我们没用吗?

答案是否定的!

我们并不能总是删除停用词。停用词的删除在很大程度上取决于我们正在执行的任务和我们想要实现的目标。例如,如果我们正在训练一个可以执行情绪分析任务的模型,我们可能不会删除停用词

影评:"The movie was not good at all."

删除停用词后,剩下的文字:"movie good"

我们可以清楚地看到这部电影的评论是负面的。然而,在去掉停用词之后,评论变得积极起来,这不是现实。因此,删除停用词在这里可能是有问题的。

像文本分类这样的任务通常不需要停用词,因为数据集中存在的其他词更重要,并且给出了文本的一般概念。因此,我们通常会删除这些任务中的停用词。

简单地说,NLP有很多任务在去掉停用词后无法正常完成。因此,在执行此步骤之前,请先考虑一下。这里的问题是,没有一条规则是通用的,也没有一个停用词列表是通用的。

注意事项:在删除停用词之前,先研究一下你的任务和你要解决的问题,然后再做决定。

有哪些不同的库可以删除停用词?

自然语言处理是当今研究最多的领域之一,在这一领域有了许多革命性的发展。NLP依赖于先进的计算技术,世界各地的开发人员已经创造了许多不同的工具来处理人类语言。

在这么多的库中,有一些非常流行,并且在执行许多不同的NLP任务时有很大帮助。

相关推荐
Li emily1 小时前
解决了加密货币api多币种订阅时的数据乱序问题
人工智能·python·api·fastapi
山川绿水1 小时前
bugku——PWN——overflow2
人工智能·web安全·网络安全
程序员cxuan1 小时前
微信读书官方发了 skills,把我给秀麻了。
人工智能·后端·程序员
fake_ss1982 小时前
AI时代学习全栈项目开发的新范式
java·人工智能·学习·架构·个人开发·学习方法
nassi_2 小时前
对AI工程问题的一些思考
大数据·人工智能·hadoop
AI技术控2 小时前
《Transformers are Inherently Succinct》论文解读:从“能表达什么”到“多紧凑地表达”
人工智能·python·深度学习·机器学习·自然语言处理
蔡俊锋2 小时前
AI记忆压缩术:从305GB到7.4GB的魔法
人工智能·ai·ai 记忆
Upsy-Daisy2 小时前
AI Agent 项目学习笔记(二):Spring AI 与 ChatClient 主链路解析
人工智能·笔记·学习
zhangxingchao2 小时前
AI应用开发六:企业知识库
前端·人工智能·后端
Terrence Shen3 小时前
关于传统软件工程后端技术和当代AI智能体agent构建的harness engineering的一点思考
人工智能·软件工程