大纲
知识问答概述和相关数据集
KBQA基本概念及挑战
知识问答主流方法介绍
知识问答概述
IBM Watson
KBQA基本概念及挑战
- 知识问答简单流程和分类
问句;=> 语义匹配、推理;=> 答案
传统问答方法(符号表示)
基于关键词检索;
基于文本蕴含推理;
基于逻辑表达式
基于深度学习的问答方法(分布式表示)
LSTM;
Attention Model;
Memory Network
基本概念
1 问句短语
Wh-words:who, what, which, when...
Wh-words+nouns, adj or adv:which party, how long
2 问句类型
- Factoid - 事实型问题
predicative questions - 谓词型问题:what is ...
list - 列表型问题:give me all cities in Germany
superlative - 最高级型问题:what is the highest ...
yes-no - 对错型问题:Was Margaret Thatcher a chemist - opinion - 观点型问题
- cause & effect - 因果型问题
- process - 方法型问题
- ...
3 答案类型
4 问题主题
5 问答来源类型
6 领域类型
7 答案格式
-
问答质量的评估原则
Relevance - 相关度
Correctness - 正确度
Conciseness - 精炼度
Completeness - 完备度
...
- 基于知识图谱的问答:基本需求
High usability
High query expressivity
Accurate & comprehensive semantic matching
... - 技术挑战:如何将问题映射到答案
- 自然语言问题与知识图谱之间的鸿沟
映射自然语言表达式到知识图谱词汇
不同的知识表示增加了映射难度
关系或属性隐形表述
知识库如何支持多语言问答
数据质量和异构性
分布式和互联数据
回答性能和可扩展性
KBQA挑战总结
缩小自然语言和规范化结构化数据之间的鸿沟;
处理不完全、充满噪音和异构的数据集;
处理大规模的知识图谱;
处理分布式数据集上的QA;
融合结构化和非结构化的数据;
降低维护成本;
快速的复制到不同的领域
知识问答主流方法
基于模板的方法
基于语义解析的方法
基于深度学习的方法
基于模板的方法
TBSL(Template based )
- 模板定义
结合KG的结构,以及问句的句式,进行模板定义。 - 模板生成
- 模板匹配
SPARQL template
示例:Who produced the most films?
SELECT DISTINCT ?x WHERE {
?y rdf:type ?c .
?y ?p ?x .
}
ORDER BY DESC(COUNT(?y))
OFFSET 0 LIMIT 1
?c CLASS [films]
?p PROPERTY [produced]
S1:Linguistic processing
1 获取自然语言问题的POS tag;
2 基于POS tags,语法规则表示问句;
3 利用 domain-dependent 词汇和 domain-independent 词汇辅助分析问题
4 最后,将语义表示转化为一个SPARQL模板
S2:Template instantiation Entity
模板匹配与实例化
S3:Query ranking and selection
每个 entity 根据string similarity 和 prominence 打分
基于语义解析的方法
- 资源映射
- Logic Form
- 候选答案生成
- 排序
资源映射
将自然语言短语或单词节点映射到知识库的实体或实体关系。可以通过构造一个词汇表(Lexicon)来完成这样的映射。
- 逻辑表达式
即一种能让知识库”看懂“的表示。可以表示知识库中的实体、实体关系。
知识问答后部分课程缺失