除了名词和名词短语之外,英语中还有一些其他结构也可以作为名词。例如,Gerundive可以用作名词:你需要良好的习惯,比如“礼貌”。
在我正在开发的应用程序中,我需要找到所有用作名词的组件。我尝试了各种组块工具(NLTK等),但它们似乎只识别名词和名词短语,而不是其他任何东西。
这些旧车也不承认补充是NP的一部分,例如,“她活着的事实”不会是一个单块,即使它们在这句话中一起充当名词。
有没有可以像这样做的工具?
感谢。
答案 0 :(得分:0)
我担心这样的控制需要一个合适的统计解析器;例如,Stanford Parser为您的样本句子提供以下树:
(ROOT
(NP (DT the) (NN fact)
(SBAR (IN that)
(S
(NP (PRP she))
(VP (VBZ is)
(ADJP (JJ alive)))))
(. .)))
认识到整个细分是NP。对于gerundive的情况:
(ROOT
(S
(VP (VB thank)
(NP (PRP you))
(PP (IN for)
(NP (NN listening))))
(. .)))
斯坦福大学解析器提供了一个API,你可以在你的应用程序中使用。
答案 1 :(得分:0)
由于SyntaxNet生成依赖解析树,因此您需要编写一些启发式方法来获取此类信息。选区解析器可以更直接地为您提供此信息,但缺少有关节点在树中扮演的角色的信息(例如,您不会知道NP是动词的主语还是直接对象)。
答案 2 :(得分:0)
@Roy我同意Slav,因为我遇到了" open" 这个词的问题。在我的句子中" open" 是必要的动词,但是syntaxnet将其标记为形容词。我不是一个计算机科学,我写了一个非常简单的基本算法来解决你可以看到它的问题here