1.任务分类
自然语言问题大致分为7类:
1.事实类问题,适合基于知识图谱或文本生成问题对应的答案。
2.是非类问题,适合基于知识图谱或常识知识库进行推理并生成问题对应的答案。
3.定义类问题,适合基于知识图谱,词典或文本生成问题对应的答案。
4.列表类问题,适合基于网络表格生成问题对应的答案。
5.比较类问题,适合基于**<问题,答案>对**进行解答。
6.意见类问题
7.指导类问题
1.1 知识图谱问答
知识图谱,又称knomledge graph或KB,指通过人工编辑方式构建的图结构知识库。知识图谱中的基本单元称为事实(fact),每个事实记录了现实世界中的一条知识,有若干实体(节点)和谓词(边)构成。事实再知识图谱中的表示方式分为如下两类:
1.1.1三元组事实(triple fact)
由两个节点组成,一个是主语实体,一个宾语实体,中间用满足二者的谓词关系连接。
1.1.2CVT事实
由一个主语实体,一个复合值类型节点(CVT),n个宾语实体构成。一个CVT将一个主语实体和一个宾语实体用两条谓词关系连接起来构成一个复杂事实。
eg:今天的太阳是红色的。
太阳(主语)——(今天)——CVT——(颜色)——红色(宾语)
1.2 表格问答
表格由M行N列组成,每行表示一条实例,每一列中的所有表格单元具有相同的类型。
表格问答(table-based QA),基于给定表格集和生成问题对应的答案。该任务又可细分为表格检索和答案生成两部分,前者负责从表格集和中找到与输入答案最相关的表格,后者负责基于检索回来的相关表格生成问题对应的答案。
1.3 文本问答
文本问答(text-based QA),基于给定文本生成问题对应的答案,按照答案细粒度的不同,又可进一步分为答案句子选择和机器阅读理解两大类。
1.3.1 答案句子选择(answer sentence selection),从文本中寻找能够作为问题答案的句子,由于文本所包含的句子集和能够通过断句的方式直接得到,该任务可以通过对句子集合进行打分和排序,并选择得分最高的句子作为最终的答案。
1.3.2机器阅读理解(machine reading comprehension),从文本中寻找能够作为问题答案的短语,该任务的解决思路有两种:a.对文本中全部可能的答案短语候选进行抽样和排序,这样机器阅读理解可以看成对答案短语候选集合的一个排序任务;b.对文本中每个单词时候属于答案进行0/1标注,这样机器阅读理解可以看成一个序列标注任务。
1.4 社区问答
问答对(question-answer pair),指问答社区网站上提供的<问题,答案>对数据集合。
社区问答(community QA),基于从问答社区网站抓取的问答对进行问答任务。拘役来说卖给顶输入答案,社区问答从问答对中检索与输入的问题语义最为匹配的已有问题,并才哟个该已有问题对应的答案作为当前问题的答案。此类问答方法的关键环节是计算问题和已有问题之间的语义相似度,以及计算问题和答案之间的语义相关度。
项目实例 :结合文本问答和社区问答的一个上海考研智能问答项目。