使用Spacy,Bert时是否有必要删除停用词,对文本分类进行词根/词法化?

问题描述

在使用Spacy,Bert或其他高级NLP模型获取文本的矢量嵌入时,是否需要去除停用词,进行词干化和词法归类?

text =“在婚礼上供应的食物非常美味”

1。自从Spacy,Bert经过庞大的原始数据集训练以来,在使用bert / spacy进行文本分类任务生成嵌入之前,对这些文本应用停用词去除,词干化和词法化有什么好处吗?

2。我可以理解停用词的去除,当我们使用countvectorizer,tfidf vectorizer嵌入句子时,词干和词法化将是很好的。

解决方法

这不是强制性的。删除停用词有时会有所帮助,有时却无济于事。您应该同时尝试。

,

您可以进行测试,以了解进行词干词干化和去除停用词是否有帮助。并非总是如此。我通常会在停用词使结果混乱的情况下进行图表绘制。

不使用停用词的情况 使用停用词将为用户的意图提供上下文,因此当您使用诸如BERT的上下文模型时。在像BERT这样的模型中,所有停用词都被保留以提供足够的上下文信息,例如将否定词(不是,也永远不会)视为巫婆。

根据https://arxiv.org/pdf/1904.07531.pdf

“令人惊讶的是,停用词与非停用词一样受到关注,但是将其删除对MRR性能没有影响。”

,

使用BERT,您无需处理文本。否则,您将失去上下文(阻止,残词化)或彻底更改文本(移除停用词)。

一些更基本的模型(基于规则或词袋)将受益于某些处理,但是您必须非常小心地删除停用词:许多更改整个句子含义的词都是停用词(不是,不,从不,除非)。