0

我正在做一个从句子中生成问题的项目。现在,我可以提出这样的问题:“安吉拉·默克尔是德国总理。” -> “安吉拉·默克尔是谁?”

现在,当然,我希望问题看起来像“谁是……?” 反而。有什么简单的方法可以做到这一点,我还没有想到吗?

我目前的想法是训练一个英语(不是很问题)-> 英语(问题)翻译,可能使用现有的机器翻译引擎,如 moses。这是矫枉过正吗?我需要多少数据?有没有解决这个或类似问题的语料库?使用通用翻译引擎是否适合这项任务?

4

2 回答 2

0

在我的脑海中,如果您将自己限制在相对简单的问题上,您可以进行解析,然后翻转元素以获取问题。你如何决定疑问词呢?Who, What, Where, Why... 为此,您需要一个查看句子元素的分类器。安吉拉·默克尔(Angela Merkel)应该很容易归类为人/名,所以她得到了“谁”,柏林应该在地理词典中,所以得到了“哪里”。

我不确定具体的软件,但我可能会使用 NLTK,使用依赖解析,然后使用您喜欢的任何分类方案。

最终你的成功取决于你的输入和输出空间有多大。我会先解决最简单的问题。

于 2012-06-20T17:10:19.323 回答
0

查看 Michael Heilman 的论文Automatic Factual Question Generation from Text以了解问题生成的背景,并了解他解决此问题的方法是什么样的。您可以通过搜索“问题生成”的研究来找到更多信息。他提到了微软的一个语料库:Microsoft Research Question-Answering Corpus

我不认为仅基于(当前)统计机器翻译方法的方法会运作良好,因为您通常需要对源句子进行更深入的句法分析才能很好地生成适当的问题。对于像您的示例这样的简单问题,设计句法树转换来生成问题非常容易,但是一旦句子变得更加复杂,它就会变得更加棘手。

于 2012-06-21T13:13:46.010 回答