Java:API 中的删除常用词方法?

标签 java parsing nlp

相关:

  1. Forum post

在重新发明轮子之前,我需要知道是否存在这样的方法。根据列表剥离单词,例如 list听起来并不具有挑战性,但有语言方面的问题,例如在剥离时最强调哪些单词,上下文怎么样?

最佳答案

听起来您想要做的是从文本中删除“stop words ”。您可以找到list of English stopwords在链接处。根据您使用的停用词数量,创建 HashSet 可能会更有效。的单词,这样您就可以在恒定时间内判断一个单词是否是停用词(通过使用 contains() 函数),这意味着过滤整个文本将花费单词数的线性时间。这是一个如此简单的操作,我怀疑您是否会找到一些库来完成它,但它不会花很长时间。

在选择使用哪些词方面......这实际上取决于您想要做什么。如果您正在 bag of words model 上执行某种机器学习算法,那么你真的必须尝试不同的单词选择,看看哪些单词导致的验证错误最少。就上下文而言,确实不需要太多言语。任何英语说得好的人都可以告诉你何时漏掉了“the”或“a”或“an”。可能有一些常用词对于某些消歧很重要,但根据您的应用程序,它们可能是也可能不是必需的。例如,如果你想知道谁做了某件事,那么消除“他”、“她”等可能是一个问题,但如果你只关心某某行为是否发生而你并不真正关心关心是谁干的,那么去掉代词就可以了。

关于Java:API 中的删除常用词方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2706909/

相关文章:

java - 如何使用 RxJava 包装 startActivityForResult?

java - 字体扩展不适用于 JasperReports

Javascript - 解析长 GET 请求 JSON

python - 自定义 Spacy NER 模型的总体 F 分数与单个实体 F 分数之间存在巨大差异

python - 如何处理预训练 Glove 词嵌入中看不见的单词以避免按键错误?

java - 私有(private)变量与局部函数变量

java - 一个应用程序显示无法执行 dex : GC overhead limit exceeded GC overhead limit exceeded in eclipse

parsing - 真实世界的 LR(k > 1) 文法?

c - yacc/bison 操作的范围是什么?

从文本中检测短语和关键字的算法