java - NLP中的数据字典是什么?

标签 java machine-learning nlp stanford-nlp opennlp

我是 NLP 及其概念的新手。我目前正在尝试使用 OpenNLP来自 Apache 。当我尝试使用其解析器工具时,如 blog 所示,我得到如下输出:

Input: Shutdown all active devices

Output: 
(TOP(VP(VB Shutdown)
(NP(DT all)
    (JJ active)
    (NNS devices))))

我无法理解所有缩写词的含义。其中一些我可以从Stanford's OpenNLP implementation中理解一样的。但不是全部。

任何人都可以指出一些正确的方向,让我知道如何理解它,以及如何更好地理解我的代码如何理解所说的内容。

最佳答案

首先,学习任何学科都需要时间,所以不要急于求成,否则你会把自己弄糊涂的。您看到的输出语法是一棵树,它采用一系列列表和嵌入列表的形式。它可能会让您想起流行的 LISP 语法,例如 SchemeClojure .

(TOP(VP(VB Shutdown)
(NP(DT all)
    (JJ active)
    (NNS devices))))

单词/列表左侧的标签是所谓的 POS ( Part-of-Speech ) 标签,代表单词所属的语法类别,本质上是词类消歧。作为 F1-Scores 高达 90% 的学科,词性标注仍然是自然语言处理中非常困难的研究领域之一。您构建的树片段(带有下面的列表)如下所示:

(TOP(Verb, non-3rd-person(Verb Shutdown)
(Noun-Phrase (Determiner all)
    (Adjective active)
    (Noun-plural devices))))

词性标记是语义分析或命名实体识别等任务的重要语言特征。一些值得学习的好资源包括:

  1. NLTK (Natural Language Toolkit) Book Chapter 5
  2. Foundations of Statistical Natural Language Processing
  3. Part of Speech Tagging and Partial Parsing

词性标签列表(Penn Treebank语料库)

  1. CC ~ 并列连词
  2. CD ~ 基数
  3. DT ~ 限定符
  4. EX ~ 在那里存在
  5. FW ~ 外来词
  6. IN ~ 介词或从属连词
  7. JJ ~ 形容词
  8. JJR ~ 形容词,比较级
  9. JJS ~ 形容词,最高级
  10. LS ~ 列表项标记
  11. MD ~ 模态
  12. NN ~ 名词,单数或质量
  13. NNS ~ 名词复数
  14. NNP ~ 专有名词,单数
  15. NNPS ~ 专有名词,复数
  16. PDT ~ 预定词
  17. POS ~ 所有格结尾
  18. PRP ~ 人称代词
  19. PRP$ ~ 所有格代词
  20. RB ~ 副词
  21. RBR ~ 副词,比较级
  22. RBS ~ 副词,最高级
  23. RP ~ 粒子
  24. SYM ~ 符号
  25. ~到
  26. UH ~ 感叹词
  27. VB ~ 动词,基本形式
  28. VBD ~ 动词,过去时
  29. VBG ~ 动词、动名词或现在分词
  30. VBN ~ 动词,过去分词
  31. VBP ~ 动词,非第三人称单数现在时
  32. VBZ ~ 动词,第三人称单数现在时
  33. WDT ~ Wh-determiner
  34. WP ~ Wh-代词
  35. WP$ ~ 所有格 wh-代词
  36. WRB ~ Wh-副词

关于java - NLP中的数据字典是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32812342/

相关文章:

java - 如何保存String格式?

matlab - Matlab中Libsvm SVR训练的数据格式

machine-learning - 如何根据上下文对相似类型的句子进行聚类并从中提取关键字

python - 如何使用 spaCy 对挪威语进行词形还原?

nlp - 使用自然语言处理来解析网站

java - 如何完全关闭你的App?

java - 无法在android中创建文件夹

java - 'while' 语句无法在不抛出异常的情况下完成 - Android

python - 获取模型 Doc2Vec 中向量的标签

machine-learning - 卷积核的形状和数量是动态的可能/实用吗?