我正在进行一个项目,旨在从句子中生成问题。目前,我已经能够生成类似这样的问题:“安吉拉·默克尔是德国的总理。” -> “安吉拉·默克尔是谁?”
当然,我希望问题看起来像是“谁是…?”。有没有我还没想到的简单方法可以实现这一点?
我目前的想法是训练一个英语(非完全问题)到英语(问题)的翻译器,可能使用现有的机器翻译引擎如moses。这是否有些大材小用?我需要多少数据?是否有针对此问题或类似问题的语料库?使用通用翻译引擎是否适合这项任务?
回答:
查看迈克尔·海尔曼的论文《从文本自动生成事实性问题》,了解问题生成的背景知识,并了解他对这一问题的处理方法。你可以通过搜索“问题生成”的研究找到更多信息。他提到了一份来自微软的语料库:微软研究问答语料库。
我认为,仅基于(当前)统计机器翻译方法的途径不会很有效,因为你通常需要对源句子进行更深入的句法分析,才能很好地生成合适的问题。对于像你的例子那样的简单问题,设计句法树转换来生成问题是相当容易的,但一旦句子稍微复杂一些,情况就会变得更加棘手。