如何建立一个qa系统来回答是或否

时间:2014-03-12 11:24:23

标签: python prolog nlp nltk question-answering

我想构建一个问题回答系统,它只能回答是或否。

假设我有一个问题和一个文本文件。在文本文件中,有4-5个片段。有了这些片段,我可以回答这个问题。

所以,我想构建一个系统,将问题和文本文件作为输入并提取asnwer(是或否)

我怎么能开始?

我的工具是: Python(nltk) 序言 mysql(如果需要)

1 个答案:

答案 0 :(得分:1)

Prolog本身就是一个回答是或否的qa系统"。

您的"文本文件"可以简单的Prolog事实。然后你只需在Prolog系统中加载(查询)你的事实文件,并使用查询得到是或否答案。

我头顶的例子(facts.pl):

prime(2).
prime(3).
prime(5).
prime(7).
capital('Ukraine', 'Kyiv').
capital('Ukraine', 'Kiev').
bird(penguin).
fish(shark).

咨询文件:

?- [facts].

提问。企鹅是鸟吗?鲨鱼是鸟吗?

?- bird(penguin).
true.
?- bird(shark).
false.

SWI-Prolog回答' true'和' false',其他系统(如ECLiPSe CLP http://www.eclipseclp.org/)实际上可能会使用'是'和'不'。