/qasystem

Primary LanguagePython

基于百科的中文问答系统


通过分析用户输入的问句,检索百度百科结构化部分的数据(构建为三元组形式),返回用户答案。

主要工作

  1. 问句分类
  2. 分析问句,提取中心词&属性词
    • 中心词只需要一个,属性词提取多个候选值
    • 中心词可能会有多个对应的百科词条,使用训练好的embedding做相似度匹配。
    • 属性词的多个候选值在工作3中使用
  3. 根据问句分类以及中心词&属性词提取答案
    • 根据中心词检索百科词条
    • 将问句类型与属性词匹配。例如问"白宫在哪,询问的属性是白宫的'地址',因此属性词应当与地址相关"

数据集

知识库

知识库为三元组集合(e,a,v)。e代表词条名,a代表属性名,v代表属性值。使用文件存储。具体形式如下:

罗育德 ||| 别名 ||| 罗育德

训练集&测试集

训练集与测试集均为问答对(q,a),q代表问题,a代表答案。使用文件存储,具体形式如下:

<question id=1> 《机械设计基础》这本书的作者是谁?
<answer id=1>   杨可桢,程光蕴,李仲生
==================================================
<question id=2> 《高等数学》是哪个出版社出版的?
<answer id=2>   武汉大学出版社
==================================================