如何预处理嵌入文本?

xv7*_*v70 15 nlp neural-network

在作为向量的单词的传统"一热"表示中,您具有与词汇的基数相同维度的向量.为了减少维度,通常会删除停用词,以及应用词干,词形等,以规范您要执行某些NLP任务的功能.

我无法理解是否/如何预处理要嵌入的文本(例如word2vec).我的目标是使用这些单词嵌入作为NN的特征,将文本分类为主题A,而不是主题A,然后在主题A的文档(使用第二个NN)上对它们执行事件提取.

我的第一直觉是预处理删除停用词,词典化词干等等.但是当我了解NN时我意识到应用于自然语言时,CBOW和skip-gram模型实际上需要整个词集存在 - 能够从上下文预测一个单词,需要知道实际的上下文,而不是规范化后的上下文的简化形式......对吗?).POS标签的实际顺序似乎是人类对词语预测的关键.

我在网上找到了一些指导,但我仍然很想知道这里的社区是怎么想的:

  1. 是否有最近普遍接受的关于标点符号,词干化,词形词,停用词,数字,小写等的最佳实践?
  2. 如果是这样,他们是什么?一般情况下,尽可能少地处理,或者在较重的一侧处理以使文本规范化更好吗?有没有权衡?

我的想法:

最好删除标点符号(但例如在西班牙语中不删除重音符号,因为它确实传达了上下文信息),将书写数字更改为数字,不要小写所有内容(对于实体提取有用),没有词干,没有词形变化.

这听起来不错吗?

Jos*_*lls 3

这么多的问题。所有这些问题的答案可能都是“取决于”。需要考虑您尝试预测的类以及您拥有的文档类型。尝试预测作者身份(那么你肯定需要保留各种标点符号和大小写,以便文体测量起作用)与情感分析(你可以摆脱几乎所有内容,但必须特别注意否定之类的东西)是不同的。 。