NLTK。查找句子是否为疑问形式

浏览:37日期:2024-03-09
如何解决NLTK。查找句子是否为疑问形式?

一种简单的方法是解析一个句子并寻找分配给它的标签。例如,解析句子“有没有办法做到这一点?” 使用斯坦福解析器将返回:

(ROOT (SQ (VBZ Is) (NP (EX there)) (NP (NP (DT any) (JJ other) (NN way)) (S(VP (TO to) (VP (VB do) (NP (DT this)))))) (. ?)))

其中SQ表示“在SBARQ中的whi短语之后,是“是/否”问题或wh问题的主要子句”。另一个例子:

(ROOT (SBARQ (WHNP (WP What)) (SQ (VBZ is) (NP(NP (DT the) (NN capital))(PP (IN of) (NP (NNP Scotland))))) (. ?)))

其中SBARQ表示“直接由疑问词或短语引起的问题”。从Python调用外部解析器并处理其输出非常简单,例如,检查此Python与Stanford NLP工具的接口。

解决方法

我试图检测一个句子是一个问题还是一个陈述。除了在句子结尾处查找问号外,还有其他方法可以检测到此问题吗?我正在处理Twitter帖子,人们不一定遵循Twitter上的问号之类的良好做法。

如果nltk现在可以正常工作,则对其他库的引用也可以。

相关文章: