查找文本中单词之间的关系
Posted
技术标签:
【中文标题】查找文本中单词之间的关系【英文标题】:Finding relationships among words in text 【发布时间】:2014-11-05 12:00:38 【问题描述】:在文本中,有时单词往往指向同一个对象。
例如:John is an actor, his father Abraham was Doctor
所以这里his
指向John
,如果我们有问题Who is John's father?
或What is John's father's occupation?
,我们应该可以回答这个问题,但我不知道如何实现。
使用词法分析,解析;使用句子解析我们可以从句子中得到VP, NP, N
等。这可以帮助它 - https://pypi.python.org/pypi/pylinkgrammar
潜在语义分析和Probabilistic latent semantic analysis (PLSA)提供关系,可用于分析双模和共现数据。但是具体怎么用还不清楚。
更多的语义和句法分析。 对此的任何建议或参考将不胜感激。
【问题讨论】:
也许 nltk 可以帮助你? nltk.org/book/ch08.html @danielfranca:谢谢亲爱的。它有助于句法分析。语义分析的任何线索? nltk 对此有任何支持吗? 是的,有一个专门的章节 :) nltk.org/book/ch10.html 如果有帮助,请告诉我。 @danielfranca:谢谢,它帮助我前进。但我很困惑。 我可以使用 python nltk 或 prolog。 Watson 人使用 prolog,因为它是 AI 工具,我想它会是更好的选择。但无法决定跟随哪一个。 【参考方案1】:你所描述的被称为 coreference resolution 对于前一个问题(his 指的是什么?约翰!)和 关系提取对于后者(即job(John, actor)
、job(Abraham,doctor)
和father(John,Abraham)
)。
有大量关于这些主题的研究。希望 ACL Anthology 能为您提供帮助:
coreference resolution relation extraction【讨论】:
【参考方案2】:我认为有一个特定的依赖于 NLTK 的库非常适合您的情况:https://code.google.com/p/nltk-drt/
此 PDF 非常详细地解释了它的工作原理:https://code.google.com/p/nltk-drt/downloads/detail?name=NLTK-DRT.pdf
【讨论】:
关于如何将如此长的查询分开的任何想法以上是关于查找文本中单词之间的关系的主要内容,如果未能解决你的问题,请参考以下文章