最好使用keras.preprocessing.tokenizer或nltk.tokenize

时间:2019-04-03 10:14:59

标签: python keras nltk tokenize

我正在使用Keras处理多类分类问题。 尝试使用Keras标记化,但认为nltk.tokenizer将是解决我的问题的更好解决方案。我没有发现有哪一篇文章可以描述这两个分词器之间的区别,这两者之间的区别和准确性是什么?

1 个答案:

答案 0 :(得分:1)

默认情况下,它们都使用一些基于正则表达式的标记化。区别在于它们的复杂性:

它们都非常快,因为它们只运行正则表达式。如果您的基本文字没有太多标点符号或乱码,那么Keras可能是最简单的选择。

如果您实际上想要一个基于神经网络的神经网络,可以正确解析数字,日期等并可能执行词性标记,实体识别,则可以使用:

  • Stanford CoreNLP提供了用于处理文本,查找依赖项,识别实体等的完整管道。
  • SpaCy也是完整的Python NLP管道,可为您提供相似的结果,并加载相应的单词向量,例如GloVe。

以上两种方法比任何基于正则表达式的方法都要慢,但这取决于要处理的源文本。