CN110399457B - 一种智能问答方法和系统 - Google Patents

一种智能问答方法和系统 Download PDF

Info

Publication number
CN110399457B
CN110399457B CN201910586368.3A CN201910586368A CN110399457B CN 110399457 B CN110399457 B CN 110399457B CN 201910586368 A CN201910586368 A CN 201910586368A CN 110399457 B CN110399457 B CN 110399457B
Authority
CN
China
Prior art keywords
dictionary
question
query
graph
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910586368.3A
Other languages
English (en)
Other versions
CN110399457A (zh
Inventor
彭涛
崔海
包铁
韩日东
于洪江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jilin University
Original Assignee
Jilin University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jilin University filed Critical Jilin University
Priority to CN201910586368.3A priority Critical patent/CN110399457B/zh
Publication of CN110399457A publication Critical patent/CN110399457A/zh
Application granted granted Critical
Publication of CN110399457B publication Critical patent/CN110399457B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种智能问答方法和系统,其中所述方法包括:构建知识图谱和语料库;获取用户输入的问题;基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案。本发明提供的智能问答方法和系统基于知识图谱和子图搜索实现,具有较高的识别准确性,能够回答复杂的问题,回答问题能力强。

Description

一种智能问答方法和系统
技术领域
本发明涉及人工智能技术领域,更具体的说是涉及一种智能问答方法和系统。
背景技术
随着人工智能在功能和应用方面的突破性进展,智能技术已经渗透到日常生活的方方面面,同样汽车产业也面临着新一轮的发展。目前人工智能在汽车领域的主要应用点包括:自动驾驶、车载语音助手、智能人机交互界面等。
自然语言处理作为人工智能领域的重要分支,主要研究人与计算机之间利用自然语言形式进行交互的理论及方法。比尔盖茨将语言理解视为人工智能皇冠上的明珠,并认为自然语言处理的进步会推动人工智能整体的进展。
问答系统是自然语言处理领域的热门方向。问答系统能够用精准、简洁的自然语言自动回答用户提出的问题。目前,自动问答方法主要包括模板匹配方法、信息检索方法以及深度学习方法。基于模板匹配的方法利用人工编写大量规则对问题进行匹配,一旦匹配成功,能够得出精准答案,但是存在编写成本高、对新问题适应性较差的不足,导致问题回答能力差;基于信息检索的方法通过计算文本相似度找出与问题最相似的候选答案,该方法的缺点在于仅仅计算文本表面的相似度,而没有真正理解文本的语义,导致回答问题能力差;基于深度学习的方法是通过大量标注数据,自动学习文本的高级语义特征,该方法的缺点在于训练语料不足以及模型可解释性较差,最终导致回答问题能力差。
因此,如何提供一种回答问题能力强的方法是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种智能问答方法和系统,回答问题能力强。
为了实现上述目的,本发明采用如下技术方案:
一种智能问答方法,包括:
构建知识图谱和语料库;
获取用户输入的问题;
基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案。
优选的,还包括:当基于知识图谱的子图搜索方法和用户输入的问题没有寻找到答案时,将问题与预设模板进行匹配,若匹配到,则输出答案;
当将问题与预设模板进行匹配没有匹配到答案时,则基于语料库进行检索,通过倒排索引方式返回与问题最接近的答案,并输出答案。
优选的,所述构建知识图谱的方法具体包括:
利用网络爬虫技术爬取数据,其中,爬取的数据包括结构化的三元组知识以及非结构化的文本语料;
将爬取到数据存储到数据库中,并对数据库中数据格式进行规整和预处理;
将数据库中进行规整和预处理后的数据导入到图数据库中,得到知识图谱和语料库。
优选的,基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案的步骤具体包括:
构建字典:构建实体字典、关系字典、停用词字典和分词字典;
构建字典树:利用字典树保存字典中的全部字符串;
问题预处理:对输入的问题进行预处理;
基于字典树的最长匹配:基于字典树的最长匹配对问题进行匹配,并将匹配到的字符串添加到分词字典中;
分词和词性标注:对输入的问题进行中文分词,并对分词结果进行词性标注;并将分词结果添加到分词字典中;
建立依存树:基于词性标注的结果建立依存树;
判断节点类型:利用字典判断依存树中每个节点的类型;具体方法是:如果节点对应的词出现在停用词典中,则相应地将该节点设置成停用词节点;如果节点对应的词与实体字典或者关系字典中的词的编辑距离相似度大于设定阈值,则将该节点设置成实体查询节点或者关系查询节点;
构建查询图:去除依存树中的停用词节点,计算实体查询节点与相邻实体查询节点间的最短路径,构建与依存树对应的查询图;具体方法是:如果两实体查询节点直接相连,则在查询图中两节点间的边为空;如果两实体查询节点间的最短路径中包含了关系查询节点,则该关系查询节点出现在边上;
图搜索:遍历查询图,将查询图中的节点及边与知识图谱中的三元组匹配,得到搜索结果;
答案排序:对搜索结果按分数排序,将前N个结果作为答案。
优选的,将问题与预设模板进行匹配的具体步骤包括:
预先定义问题模板;其中,每个模板设有相应的触发词和相应的模板槽位;
对问题进行自然语言解析,识别出问句中的触发词和关键信息;
利用识别出的触发词寻找回答该问题所对应的模板,并将识别出来的关键信息填入到模板槽位中;
根据填充好的问题模板生成图数据库查询语句,并在存储知识图谱的图数据库中执行查询语句,查询出问题的答案;
基于语料库进行检索的具体步骤包括:
将语料库中的文本建立索引,得到索引文件;
对输入的问题进行中文分词,去除问题中的停用词,得到问题的关键词;
根据分词得到的关键词在索引文件进行检索,得到检索结果,并根据匹配程度排序,返回前N条匹配结果作为答案。
一种智能问答系统,包括:
知识源构建模块,用于构建知识图谱和语料库;
交互模块,用于获取用户输入的问题;
图搜索模块,用于基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案;
所述交互模块,还用于当成功检索到答案时输出答案。
优选的,还包括:模板匹配模块和检索模块;
所述模板匹配模块,用于当基于知识图谱的子图搜索方法和用户输入的问题没有寻找到答案时,将问题与预设模板进行匹配,若匹配到,则通过所述交互模块输出答案;
所述检索模块,用于当将问题与预设模板进行匹配没有匹配到答案时,则基于语料库进行检索,通过倒排索引方式返回与问题最接近的答案,并通过所述交互模块输出答案。
优选的,所述知识源构建模块具体包括:
爬取单元,用于利用网络爬虫技术爬取数据,其中,爬取的数据包括结构化的三元组知识以及非结构化的文本语料;
预处理单元,用于将爬取到数据存储到数据库中,并对数据库中数据格式进行规整和预处理;
构建单元,用于将数据库中进行规整和预处理后的数据导入到图数据库中,得到知识图谱和语料库。
优选的,所述图搜索模块具体包括:
构建字典单元,用于构建实体字典、关系字典、停用词字典和分词字典;
构建字典树单元,用于利用字典树保存字典中的全部字符串;
问题预处理单元,用于对输入的问题进行预处理;
匹配单元,用于基于字典树的最长匹配对问题进行匹配,并将匹配到的字符串添加到分词字典中;
分词和词性标注单元,用于对输入的问题进行中文分词,并对分词结果进行词性标注;并将分词结果添加到分词字典中;
依存树建立单元,用于基于词性标注的结果建立依存树;
节点类型判断单元,用于利用字典判断依存树中每个节点的类型;具体方法是:如果节点对应的词出现在停用词典中,则相应地将该节点设置成停用词节点;如果节点对应的词与实体字典或者关系字典中的词的编辑距离相似度大于设定阈值,则将该节点设置成实体查询节点或者关系查询节点;
查询图构建单元,用于去除依存树中的停用词节点,计算实体查询节点与相邻实体查询节点间的最短路径,构建与依存树对应的查询图;具体方法是:如果两实体查询节点直接相连,则在查询图中两节点间的边为空;如果两实体查询节点间的最短路径中包含了关系查询节点,则该关系查询节点出现在边上;
图搜索单元,用于遍历查询图,将查询图中的节点及边与知识图谱中的三元组匹配,得到搜索结果;
答案排序单元,用于对搜索结果按分数排序,将前N个结果作为答案。
优选的,所述模板匹配模块中包括:
定义单元,用于预先定义问题模板;其中,每个模板设有相应的触发词和相应的模板槽位;
识别单元,用于对问题进行自然语言解析,识别出问句中的触发词和关键信息;
填充单元,用于利用识别出的触发词寻找回答该问题所对应的模板,并将识别出来的关键信息填入到模板槽位中;
查询单元,用于根据填充好的问题模板生成图数据库查询语句,并在存储知识图谱的图数据库中执行查询语句,查询出问题的答案;
所述检索模块中包括:
建立索引文件单元,用于将语料库中的文本建立索引,得到索引文件;
中文分词单元,用于对输入的问题进行中文分词,去除问题中的停用词,得到问题的关键词;
检索排序单元,用于根据分词得到的关键词在索引文件进行检索,得到检索结果,并根据匹配程度排序,返回前N条匹配结果作为答案。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种智能问答方法和系统,具有如下技术优势:
1)本发明利用字典构建字典树,并对输入问题进行基于字典树的最长匹配;并将最长匹配结果添加到分词字典中,能够有效提高中文分词的准确性,有效避免因为分词不准而导致无法回答问题的想象。
2)本发明利用依存树捕获输入问题的语义结构以及词语间的依存关系,能够解析深层语义,回答复杂问题。
3)本发明通过图搜索模块、模板匹配模块以及检索模块查找问题答案,三大模块相辅相成,相互补充,使得整个系统问答交互能力更强。
综上所述,本发明提供的智能问答方法和系统具有较高的识别准确性,能够回答复杂的问题,回答问题能力强。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的智能问答系统的整体流程图;
图2为本发明提供的知识图谱的示意图;
图3为本发明提供的图搜索模块的流程图;
图4为本发明提供的字典树的示意图;
图5为本发明提供的依存树的示意图;
图6为本发明提供的查询图的示意图;
图7为本发明提供的模板匹配模块的流程图;
图8为本发明提供的检索模块的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在具体介绍本发明的技术方案中之前,针对本发明中提及的一些相关术语进行解释:
网络爬虫:也称作网络蜘蛛,是一种用来自动浏览Web网页的网络机器人,即自动从互联网中获取所需数据的程序。在本发明中“爬取”指的是“利用网络爬虫抓取数据”;
知识图谱:知识图谱是一种语义网络,即利用图结构存储知识。图中的节点代表真实世界中的实体,图中的边代表语义关系;
语料库:由大量文本构成的集合;
倒排索引:是一种索引方法,用来存储在全文搜索下某个单词在一篇文档或一组文档中的存储位置映射;
中文分词:使用计算机自动对中文文本进行词语的切分,即像英文那样使得中文句子中的词之间有空格标识;
词性标注:为每个单词标注一个正确的词性,也即确定每个词是名词、动词、形容词或其他词性的过程;
模糊匹配检索:与精确匹配搜索相对,是指无论词的位置怎样,只要出现该词即可;
三元组:形如(x,y,z)的集合。本发明中的“三元组”是指知识图谱中的三元组,三元组利用(主语,谓语,宾语)形式表示,一个三元组表示知识图谱中的一条知识;
数据库:可视为存储电子文件的处所,用户可以对文件中的数据进行增删改查等操作;
图数据库:以图结构进行语义查询的数据库,使用节点、边和属性来表示和存储数据;
字典树:也被称为前缀树,用于以树的形式保存字符串集合;
依存树:表示句子成分之间依存关系的树状结构。依存树能够缩短句子中关键成分之间的距离,有效提取句子的主要成分;
编辑距离:两个字符串之间,由一个转换成另外一个所需要的最少操作次数,允许的操作包括替换字符,增加字符,删除字符。两字符串的编辑距离越小,说明两字符串的相似度越高;反之,两字符串的编辑距离越大,说明两字符串的相似度越低;
动态规划:把原问题分解为相对简单的子问题来求解复杂问题的方法;
二维数组:又称为矩阵,一个m×n的二维数组是由m行n列元素排列成的矩形阵列;
图数据库查询语句:在图数据库中查找节点、边或者属性的查询语言。
下面对本发明提供的具体技术方案做详细论述。
参见附图1,本发明实施例公开了一种智能问答方法,具体包括:
构建知识图谱和语料库;
获取用户输入的问题;
基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案。
这里需要说明的是,输出答案的呈现方式有多种,可以通过屏幕呈现答案,供用户查看,也可以将答案发送给用户的客户端或者移动端,还可以采用其他合理的能够想到的呈现方式来呈现答案,例如:语音播报答案、打印出答案等方式。这里将答案输出给用户的方式并不做限定。
当基于知识图谱的子图搜索方法和用户输入的问题没有寻找到答案时,将问题与预设模板进行匹配,若匹配到,则输出答案;
当将问题与预设模板进行匹配没有匹配到答案时,则基于语料库进行检索,通过倒排索引方式返回与问题最接近的答案,并输出答案。
本发明采用子图搜索、模板匹配搜索和语料库检索三种方式查找问题的答案,相辅相成,互相补充。
为了进一步优化上述技术方案,构建知识图谱的方法具体包括:
利用网络爬虫技术爬取数据,其中,爬取的数据包括结构化的三元组知识以及非结构化的文本语料;
将爬取到数据存储到数据库中,并对数据库中数据格式进行规整和预处理,使得数据格式、命名方式统一;
将数据库中进行规整和预处理后的数据导入到图数据库中,得到知识图谱和语料库。图数据库的优势在于能够利用图查询语言检索出图中的数据节点以及节点间的复杂表示关系。如图2所示,展示了知识图谱的示意图。
如图3所示,为了进一步优化上述技术方案,基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案的步骤具体包括:
构建字典:构建实体字典、关系字典、停用词字典和分词字典;
其中,实体字典、关系字典分别是根据知识图谱中的实体、关系构建的。停用词字典是由人工构建得到。分词字典是由上述其它字典合并而成。
如果问题中没有出现实体字典和关系字典中的词的时候,说明这个问题过于模糊,不能通过图搜索模块找到答案,但可以利用模板匹配以及倒排索引模块继续寻找答案。
构建字典树:利用字典树保存字典中的全部字符串;
一个字符串被表示为从字典树根节点出发到树中某一节点所经过的字符序列。该步骤利用字典树保存字典中的全部字符串。如图4所示,展示了将字符串“奥迪A6”、“奥迪Q5”、“奥德赛”、“红旗H5”、“红旗H7”保存到字典树中的示例;
问题预处理:对输入的问题进行预处理;
例如去除问题中的标点符号、将问题中的英文字母全部转换成小写形式等;
基于字典树的最长匹配:基于字典树的最长匹配对问题进行匹配,并将匹配到的字符串添加到分词字典中;
基于字典树的最长匹配是指从根节点出发按照字符顺序向下匹配字典树的节点,直至无法匹配为止;
分词和词性标注:对输入的问题进行中文分词,并对分词结果进行词性标注;并将分词结果添加到分词字典中;
不仅可以完善分词字典,更重要的是能够提高中文分词的准确度,避免因为分词不准而导致回答不出问题的现象。
建立依存树:基于词性标注的结果建立依存树;
依存树能够缩短句子中关键成分之间的距离,有效提取句子的主要成分。如图5所示,展示了问题“红旗车的发动机是啥”所对应的依存树;
判断节点类型:利用字典判断依存树中每个节点的类型;具体方法是:如果节点对应的词出现在停用词典中,则相应地将该节点设置成停用词节点;如果节点对应的词与实体字典或者关系字典中的词的编辑距离相似度大于设定阈值,则将该节点设置成实体查询节点或者关系查询节点;
编辑距离通过动态规划方法计算,给出长度为m的字符串A与长度为n的字符串B,首先定义一个m+1行n+1列的二维数组d,二维数组中每一个元素的计算公式如下:
d[0][0]=0,d[i][0]=i,d[0][j]=j
d[i][j]=d[i-1][j-1],if(Ai=Bj)
d[i][j]=min(d[i-1][j]+1,d[i][j-1]+1,d[i-1][j-1]+1),if(Ai≠Bj)
字符串A与字符串B的编辑距离等于二维数组d中最后一个元素的值,公式如下:
ED(A,B)=d[m][n]
利用如下公式计算字符串A与字符串B之间的相似度:
Figure BDA0002114563850000101
构建查询图:去除依存树中的停用词节点,计算实体查询节点与相邻实体查询节点间的最短路径,构建与依存树对应的查询图;具体方法是:如果两实体查询节点直接相连,则在查询图中两节点间的边为空;如果两实体查询节点间的最短路径中包含了关系查询节点,则该关系查询节点出现在边上。如图6所示,展示了将图5中的依存树转化为查询图的结果。
图搜索:遍历查询图,将查询图中的节点及边与知识图谱中的三元组匹配,得到搜索结果;具体匹配过程为:首先将查询图表示为图数据库查询语句,然后执行查询语句,若能查询出结果则表明匹配成功。当查询图中的全部节点及边成功匹配时,则得出问题的答案;
答案排序:对搜索结果按分数排序,将前N个结果作为答案。
分数计算方式为:将查询图边的数目与查询图全部节点的相似度之和相加算出得分,公式如下:
Figure BDA0002114563850000102
其中,subgraph M表示上述构建的查询图M;
|Edge(M)|表示查询图中边的数量;
Vertice(M)表示查询图中的所有节点;
v∈Vertice(M)表示节点v是查询图中的一个节点;
similarity(v)表示节点的编辑距离相似度分数;
如图7所示,为了进一步优化上述技术方案,将问题与预设模板进行匹配的具体步骤包括:
预先定义问题模板;其中,每个模板设有相应的触发词和相应的模板槽位;
不同触发词对应不同类型的问题模板,而模板槽位用于填入问题模板所需的关键信息。例如模板“[汽车]的配置怎么样?”用于回答关于汽车配置的问题;
对问题进行自然语言解析,识别出问句中的触发词和关键信息;
例如给出问句“红旗H7配置怎么样?”该步骤将识别出触发词“配置”以及关键信息“红旗H7”;
利用识别出的触发词寻找回答该问题所对应的模板,并将识别出来的关键信息填入到模板槽位中;
根据填充好的问题模板生成图数据库查询语句,并在存储知识图谱的图数据库中执行查询语句,查询出问题的答案。
参见附图8,基于语料库进行检索的具体步骤包括:
将语料库中的文本建立索引,得到索引文件;
首先根据文本语料库中包含的数据设置索引字段,本发明设置的索引字段包括文档标题、文档发布时间等;然后从文本语料库中读取待索引的字段数据,将其写入到索引文件中;
对输入的问题进行中文分词,去除问题中的停用词,得到问题的关键词;
该步骤使用IKAnalyzer分析器进行中文分词;
根据分词得到的关键词在索引文件进行检索,得到检索结果,并根据匹配程度排序,返回前N条匹配结果作为答案。
在具体实现时,使用基于Java的全文信息检索工具包Lucene。该工具包能够为文本类型的数据建立索引并对文本进行搜索。
参见附图1,本发明实施例还公开了一种智能问答系统,包括:
知识源构建模块,用于构建知识图谱和语料库;
交互模块,用于获取用户输入的问题;
图搜索模块,用于基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案;
交互模块,还用于当成功检索到答案时输出答案。具体可以是Web交互模块。
为了进一步优化上述技术方案,还包括:模板匹配模块和检索模块;
模板匹配模块,用于当基于知识图谱的子图搜索方法和用户输入的问题没有寻找到答案时,将问题与预设模板进行匹配,若匹配到,则通过所述交互模块输出答案。
模板匹配模块需人工构建问答模板,以模板匹配方式回答问题。
检索模块,用于当将问题与预设模板进行匹配没有匹配到答案时,则基于语料库进行检索,通过倒排索引方式返回与问题最接近的答案,并通过所述交互模块输出答案。
检索模块利用倒排索引技术针对文本语料库建立索引,通过筛选与排序检索出与问题最相近的答案。
首先利用知识源构建模块在互联网上采集汽车领域知识,并将获取到的知识存储到数据库中,从而建立汽车领域知识图谱以及文本语料库;接下来Web交互模块捕获用户输入的问题;然后将问题传入到图搜索模块,该模块使用基于知识图谱的子图搜索方法检索答案,若成功检索到答案则将答案显示给用户;如果图搜索模块没有得到答案,则将问题传入到模板匹配模块,该模块将输入问题与预设模板匹配,若成功匹配,则将答案显示给用户;如果模板匹配模块没有匹配到答案,则将问题传入到检索模块,该模块通过倒排索引返回与问题最相近的答案。三种方式相辅相成,互相补充,使得本发明提供的智能问答系统能够回答类型多样的问题,提升了系统的交互能力。
为了进一步优化上述技术方案,所述知识源构建模块具体包括:
爬取单元,用于利用网络爬虫技术爬取数据,其中,爬取的数据包括结构化的三元组知识以及非结构化的文本语料;
预处理单元,用于将爬取到数据存储到数据库中,并对数据库中数据格式进行规整和预处理;
构建单元,用于将数据库中进行规整和预处理后的数据导入到图数据库中,得到知识图谱和语料库。
为了进一步优化上述技术方案,所述图搜索模块具体包括:
构建字典单元,用于构建实体字典、关系字典、停用词字典和分词字典;
构建字典树单元,用于利用字典树保存字典中的全部字符串;
问题预处理单元,用于对输入的问题进行预处理;
匹配单元,用于基于字典树的最长匹配对问题进行匹配,并将匹配到的字符串添加到分词字典中;
分词和词性标注单元,用于对输入的问题进行中文分词,并对分词结果进行词性标注;并将分词结果添加到分词字典中;
依存树建立单元,用于基于词性标注的结果建立依存树;
节点类型判断单元,用于利用字典判断依存树中每个节点的类型;具体方法是:如果节点对应的词出现在停用词典中,则相应地将该节点设置成停用词节点;如果节点对应的词与实体字典或者关系字典中的词的编辑距离相似度大于设定阈值,则将该节点设置成实体查询节点或者关系查询节点;
查询图构建单元,用于去除依存树中的停用词节点,计算实体查询节点与相邻实体查询节点间的最短路径,构建与依存树对应的查询图;具体方法是:如果两实体查询节点直接相连,则在查询图中两节点间的边为空;如果两实体查询节点间的最短路径中包含了关系查询节点,则该关系查询节点出现在边上;
图搜索单元,用于遍历查询图,将查询图中的节点及边与知识图谱中的三元组匹配,得到搜索结果;
答案排序单元,用于对搜索结果按分数排序,将前N个结果作为答案。
为了进一步优化上述技术方案,所述模板匹配模块中包括:
定义单元,用于预先定义问题模板;其中,每个模板设有相应的触发词和相应的模板槽位;
识别单元,用于对问题进行自然语言解析,识别出问句中的触发词和关键信息;
填充单元,用于利用识别出的触发词寻找回答该问题所对应的模板,并将识别出来的关键信息填入到模板槽位中;
查询单元,用于根据填充好的问题模板生成图数据库查询语句,并在存储知识图谱的图数据库中执行查询语句,查询出问题的答案;
所述检索模块中包括:
建立索引文件单元,用于将语料库中的文本建立索引,得到索引文件;
中文分词单元,用于对输入的问题进行中文分词,去除问题中的停用词,得到问题的关键词;
检索排序单元,用于根据分词得到的关键词在索引文件进行检索,得到检索结果,并根据匹配程度排序,返回前N条匹配结果作为答案。
综上所述,本发明提供的智能问答方法和系统具有如下优点:
1)本发明提供的子图搜索方法首先构造了实体字典以及关系字典,并在处理的过程中当中完善字典。之后,通过计算输入问题中的各个词与字典中全部词汇的编辑距离相似度来判断该词所属类别。由于本发明中构建的字典具有较高精度,并且对编辑距离相似度设置了较高阈值,因此,具有较高的识别准确性与可靠性;
2)本发明提供的子图搜索方法对输入问题建立依存树,然后通过依存树构建出查询图,进而将查询图与知识图谱进行子图匹配检索答案。由于本发明使用依存树捕获句子的语义结构信息以及词语间的依存关系,因此,能够解析深层语义,回答复杂问题;
3)本发明基于字典构建了字典树,针对输入问题进行基于字典树的最长匹配,并将最长匹配结果添加到分词字典中。该方法能够提高中文分词的准确性,有效避免因为分词不准而导致无法回答问题的现象;
4)为提高用户体验程度,本发明利用图搜索模块、模板匹配模块以及检索模块三种方式查找问题的答案,三大模块相互补充,相互融合,使得本发明提供的智能问答系统能够回答类型多样的问题,提升了系统交互能力。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (4)

1.一种智能问答方法,其特征在于,包括:
构建知识图谱和语料库;
获取用户输入的问题;
基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案;
还包括:当基于知识图谱的子图搜索方法和用户输入的问题没有寻找到答案时,将问题与预设模板进行匹配,若匹配到,则输出答案;
当将问题与预设模板进行匹配没有匹配到答案时,则基于语料库进行检索,通过倒排索引方式返回与问题最接近的答案,并输出答案;
所述构建知识图谱的方法具体包括:
利用网络爬虫技术爬取数据,其中,爬取的数据包括结构化的三元组知识以及非结构化的文本语料;
将爬取到数据存储到数据库中,并对数据库中数据格式进行规整和预处理;
将数据库中进行规整和预处理后的数据导入到图数据库中,得到知识图谱和语料库;
基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案,若成功检索到答案,则输出答案的步骤具体包括:
构建字典:构建实体字典、关系字典、停用词字典和分词字典;
构建字典树:利用字典树保存字典中的全部字符串;
问题预处理:对输入的问题进行预处理;
基于字典树的最长匹配:基于字典树的最长匹配对问题进行匹配,并将匹配到的字符串添加到分词字典中;
分词和词性标注:对输入的问题进行中文分词,并对分词结果进行词性标注;并将分词结果添加到分词字典中;
建立依存树:基于词性标注的结果建立依存树;
判断节点类型:利用字典判断依存树中每个节点的类型;具体方法是:如果节点对应的词出现在停用词典中,则相应地将该节点设置成停用词节点;如果节点对应的词与实体字典或者关系字典中的词的编辑距离相似度大于设定阈值,则将该节点设置成实体查询节点或者关系查询节点;
构建查询图:去除依存树中的停用词节点,计算实体查询节点与相邻实体查询节点间的最短路径,构建与依存树对应的查询图;具体方法是:如果两实体查询节点直接相连,则在查询图中两节点间的边为空;如果两实体查询节点间的最短路径中包含了关系查询节点,则该关系查询节点出现在边上;
图搜索:遍历查询图,将查询图中的节点及边与知识图谱中的三元组匹配,得到搜索结果;
答案排序:对搜索结果按分数排序,将前N个结果作为答案。
2.根据权利要求1所述的一种智能问答方法,其特征在于,将问题与预设模板进行匹配的具体步骤包括:
预先定义问题模板;其中,每个模板设有相应的触发词和相应的模板槽位;
对问题进行自然语言解析,识别出问句中的触发词和关键信息;
利用识别出的触发词寻找回答该问题所对应的模板,并将识别出来的关键信息填入到模板槽位中;
根据填充好的问题模板生成图数据库查询语句,并在存储知识图谱的图数据库中执行查询语句,查询出问题的答案;
基于语料库进行检索的具体步骤包括:
将语料库中的文本建立索引,得到索引文件;
对输入的问题进行中文分词,去除问题中的停用词,得到问题的关键词;
根据分词得到的关键词在索引文件进行检索,得到检索结果,并根据匹配程度排序,返回前N条匹配结果作为答案。
3.一种智能问答系统,其特征在于,包括:
知识源构建模块,用于构建知识图谱和语料库;
交互模块,用于获取用户输入的问题;
图搜索模块,用于基于知识图谱的子图搜索方法和用户输入的问题寻找问题答案;
所述交互模块,还用于当成功检索到答案时输出答案;
还包括:模板匹配模块和检索模块;
所述模板匹配模块,用于当基于知识图谱的子图搜索方法和用户输入的问题没有寻找到答案时,将问题与预设模板进行匹配,若匹配到,则通过所述交互模块输出答案;
所述检索模块,用于当将问题与预设模板进行匹配没有匹配到答案时,则基于语料库进行检索,通过倒排索引方式返回与问题最接近的答案,并通过所述交互模块输出答案;
所述知识源构建模块具体包括:
爬取单元,用于利用网络爬虫技术爬取数据,其中,爬取的数据包括结构化的三元组知识以及非结构化的文本语料;
预处理单元,用于将爬取到数据存储到数据库中,并对数据库中数据格式进行规整和预处理;
构建单元,用于将数据库中进行规整和预处理后的数据导入到图数据库中,得到知识图谱和语料库;
所述图搜索模块具体包括:
构建字典单元,用于构建实体字典、关系字典、停用词字典和分词字典;
构建字典树单元,用于利用字典树保存字典中的全部字符串;
问题预处理单元,用于对输入的问题进行预处理;
匹配单元,用于基于字典树的最长匹配对问题进行匹配,并将匹配到的字符串添加到分词字典中;
分词和词性标注单元,用于对输入的问题进行中文分词,并对分词结果进行词性标注;
并将分词结果添加到分词字典中;
依存树建立单元,用于基于词性标注的结果建立依存树;
节点类型判断单元,用于利用字典判断依存树中每个节点的类型;具体方法是:如果节点对应的词出现在停用词典中,则相应地将该节点设置成停用词节点;如果节点对应的词与实体字典或者关系字典中的词的编辑距离相似度大于设定阈值,则将该节点设置成实体查询节点或者关系查询节点;
查询图构建单元,用于去除依存树中的停用词节点,计算实体查询节点与相邻实体查询节点间的最短路径,构建与依存树对应的查询图;具体方法是:如果两实体查询节点直接相连,则在查询图中两节点间的边为空;如果两实体查询节点间的最短路径中包含了关系查询节点,则该关系查询节点出现在边上;
图搜索单元,用于遍历查询图,将查询图中的节点及边与知识图谱中的三元组匹配,得到搜索结果;
答案排序单元,用于对搜索结果按分数排序,将前N个结果作为答案。
4.根据权利要求3所述的一种智能问答系统,其特征在于,所述模板匹配模块中包括:
定义单元,用于预先定义问题模板;其中,每个模板设有相应的触发词和相应的模板槽位;
识别单元,用于对问题进行自然语言解析,识别出问句中的触发词和关键信息;
填充单元,用于利用识别出的触发词寻找回答该问题所对应的模板,并将识别出来的关键信息填入到模板槽位中;
查询单元,用于根据填充好的问题模板生成图数据库查询语句,并在存储知识图谱的图数据库中执行查询语句,查询出问题的答案;
所述检索模块中包括:
建立索引文件单元,用于将语料库中的文本建立索引,得到索引文件;
中文分词单元,用于对输入的问题进行中文分词,去除问题中的停用词,得到问题的关键词;
检索排序单元,用于根据分词得到的关键词在索引文件进行检索,得到检索结果,并根据匹配程度排序,返回前N条匹配结果作为答案。
CN201910586368.3A 2019-07-01 2019-07-01 一种智能问答方法和系统 Active CN110399457B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910586368.3A CN110399457B (zh) 2019-07-01 2019-07-01 一种智能问答方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910586368.3A CN110399457B (zh) 2019-07-01 2019-07-01 一种智能问答方法和系统

Publications (2)

Publication Number Publication Date
CN110399457A CN110399457A (zh) 2019-11-01
CN110399457B true CN110399457B (zh) 2023-02-03

Family

ID=68323743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910586368.3A Active CN110399457B (zh) 2019-07-01 2019-07-01 一种智能问答方法和系统

Country Status (1)

Country Link
CN (1) CN110399457B (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110837550B (zh) * 2019-11-11 2023-01-17 中山大学 基于知识图谱的问答方法、装置、电子设备及存储介质
CN113010632A (zh) * 2019-12-20 2021-06-22 中兴通讯股份有限公司 智能问答方法、装置、计算机设备和计算机可读介质
CN111026886B (zh) * 2019-12-26 2023-05-02 成都航天科工大数据研究院有限公司 一种针对专业场景的多轮对话处理方法
CN111125150B (zh) * 2019-12-26 2023-12-26 成都航天科工大数据研究院有限公司 一种工业领域问答系统检索方法
CN113127610B (zh) * 2019-12-31 2024-04-19 北京猎户星空科技有限公司 一种数据处理方法、装置、设备及介质
CN111274371B (zh) * 2020-01-14 2023-09-29 东莞证券股份有限公司 一种基于知识图谱的智能人机对话方法及设备
CN111274332A (zh) * 2020-01-19 2020-06-12 中国科学院计算技术研究所 一种基于知识图谱的专利智能检索方法及系统
CN111291156B (zh) * 2020-01-21 2024-01-12 同方知网(北京)技术有限公司 一种基于知识图谱的问答意图识别方法
CN111339269B (zh) * 2020-02-20 2023-09-26 来康科技有限责任公司 模板自动生成的知识图谱问答训练及应用服务系统
CN111597314B (zh) * 2020-04-20 2023-01-17 科大讯飞股份有限公司 推理问答方法、装置以及设备
CN113626678A (zh) * 2020-05-06 2021-11-09 北京大学 基于动态次优最小生成树的知识图谱数据挖掘与推荐方法
CN111639171B (zh) * 2020-06-08 2023-10-27 吉林大学 一种知识图谱问答方法及装置
CN111737492B (zh) * 2020-06-23 2023-11-03 安徽大学 一种基于知识图谱技术的自主机器人任务规划方法
CN111813914B (zh) * 2020-07-13 2021-07-06 龙马智芯(珠海横琴)科技有限公司 基于字典树的问答方法、装置、识别设备及可读存储介质
CN112148851A (zh) * 2020-09-09 2020-12-29 常州大学 一种基于知识图谱的医药知识问答系统的构建方法
CN112035623B (zh) * 2020-09-11 2023-08-04 杭州海康威视数字技术股份有限公司 智能问答方法、装置、电子设备及存储介质
CN112163076B (zh) * 2020-09-27 2022-09-13 北京字节跳动网络技术有限公司 知识问题库构建方法、问答处理方法、装置、设备和介质
CN112182188A (zh) * 2020-09-30 2021-01-05 珠海格力电器股份有限公司 一种基于知识图谱的问答方法及装置、存储介质
CN112214999A (zh) * 2020-09-30 2021-01-12 内蒙古科技大学 一种基于图模型和词向量相结合的词义消歧方法及装置
CN112269864B (zh) * 2020-10-15 2023-06-23 北京百度网讯科技有限公司 生成播报语音的方法、装置、设备和计算机存储介质
CN112337094B (zh) * 2020-10-27 2022-11-25 四川长虹电器股份有限公司 语音游戏交互方法
CN112632239A (zh) * 2020-12-11 2021-04-09 南京三眼精灵信息技术有限公司 基于人工智能技术的类脑问答系统
CN112733547A (zh) * 2020-12-28 2021-04-30 北京计算机技术及应用研究所 一种利用语义依存分析的中文问句语义理解方法
CN112632225B (zh) * 2020-12-29 2022-08-30 天津汇智星源信息技术有限公司 基于案事件知识图谱的语义搜索方法、装置和电子设备
CN112800316A (zh) * 2021-02-04 2021-05-14 北京易车互联信息技术有限公司 一种基于双数组字典树的搜索关键词提取系统
CN112966075A (zh) * 2021-02-23 2021-06-15 北京新方通信技术有限公司 一种基于特征树的语义匹配问答方法及系统
CN113268563B (zh) * 2021-05-24 2022-06-17 平安科技(深圳)有限公司 基于图神经网络的语义召回方法、装置、设备及介质
CN113505209A (zh) * 2021-07-09 2021-10-15 吉林大学 一种面向汽车领域的智能问答系统
CN113590782B (zh) * 2021-07-28 2024-02-09 北京百度网讯科技有限公司 推理模型的训练方法、推理方法及装置
CN114120166B (zh) * 2021-10-14 2023-09-22 北京百度网讯科技有限公司 视频问答方法、装置、电子设备及存储介质
CN114020885A (zh) * 2021-10-15 2022-02-08 中国石油大学(华东) 一种基于领域知识图谱和斯坦纳树的智能问答方法
CN114416935A (zh) * 2021-12-24 2022-04-29 北京百度网讯科技有限公司 知识问答处理方法及知识问答系统的构建方法、装置
CN117112806B (zh) * 2023-10-12 2024-01-26 北京大学深圳研究生院 一种基于知识图谱的信息结构化方法和装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017041372A1 (zh) * 2015-09-07 2017-03-16 百度在线网络技术(北京)有限公司 基于人工智能的人机交互方法和系统
CN106919655A (zh) * 2017-01-24 2017-07-04 网易(杭州)网络有限公司 一种答案提供方法和装置
CN106934012A (zh) * 2017-03-10 2017-07-07 上海数眼科技发展有限公司 一种基于知识图谱的自然语言问答实现方法和系统
CN107967285A (zh) * 2016-10-20 2018-04-27 富士通株式会社 数据处理方法和数据处理装置
CN108804521A (zh) * 2018-04-27 2018-11-13 南京柯基数据科技有限公司 一种基于知识图谱的问答方法及农业百科问答系统
CN108920599A (zh) * 2018-06-27 2018-11-30 北京计算机技术及应用研究所 一种基于知识本体库的问答系统答案精准定位和抽取方法
CN109241258A (zh) * 2018-08-23 2019-01-18 江苏索迩软件技术有限公司 一种应用税务领域的深度学习智能问答系统
CN109670163A (zh) * 2017-10-17 2019-04-23 阿里巴巴集团控股有限公司 信息识别方法、信息推荐方法、模板构建方法及计算设备
CN109918489A (zh) * 2019-02-28 2019-06-21 上海乐言信息科技有限公司 一种多策略融合的知识问答方法和系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104216913B (zh) * 2013-06-04 2019-01-04 Sap欧洲公司 问题回答方法、系统和计算机可读介质
US10586156B2 (en) * 2015-06-25 2020-03-10 International Business Machines Corporation Knowledge canvassing using a knowledge graph and a question and answer system
CN106202476B (zh) * 2016-07-14 2017-06-06 广州安望信息科技有限公司 一种基于知识图谱的人机对话的方法及装置
CN106776797A (zh) * 2016-11-22 2017-05-31 中国人名解放军理工大学 一种基于本体推理的知识问答系统及其工作方法
CN108399169A (zh) * 2017-02-06 2018-08-14 阿里巴巴集团控股有限公司 基于问答系统的对话处理方法、装置和系统及移动设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017041372A1 (zh) * 2015-09-07 2017-03-16 百度在线网络技术(北京)有限公司 基于人工智能的人机交互方法和系统
CN107967285A (zh) * 2016-10-20 2018-04-27 富士通株式会社 数据处理方法和数据处理装置
CN106919655A (zh) * 2017-01-24 2017-07-04 网易(杭州)网络有限公司 一种答案提供方法和装置
CN106934012A (zh) * 2017-03-10 2017-07-07 上海数眼科技发展有限公司 一种基于知识图谱的自然语言问答实现方法和系统
CN109670163A (zh) * 2017-10-17 2019-04-23 阿里巴巴集团控股有限公司 信息识别方法、信息推荐方法、模板构建方法及计算设备
CN108804521A (zh) * 2018-04-27 2018-11-13 南京柯基数据科技有限公司 一种基于知识图谱的问答方法及农业百科问答系统
CN108920599A (zh) * 2018-06-27 2018-11-30 北京计算机技术及应用研究所 一种基于知识本体库的问答系统答案精准定位和抽取方法
CN109241258A (zh) * 2018-08-23 2019-01-18 江苏索迩软件技术有限公司 一种应用税务领域的深度学习智能问答系统
CN109918489A (zh) * 2019-02-28 2019-06-21 上海乐言信息科技有限公司 一种多策略融合的知识问答方法和系统

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Jose Ortiz Costa ; Anagha Kulkarni.Leveraging Knowledge Graph for Open-Domain Question Answering.《2018 IEEE/WIC/ACM International Conference on Web Intelligence (WI)》.2018, *
Xiaoan Liu ; Tao Peng.A SVM and Co-seMLP Integrated Method for Document-Based Question Answering.《2018 14th International Conference on Computational Intelligence and Security (CIS)》.2018, *
基于中医药知识图谱的智能问答技术研究;陈程等;《中国新通信》;20180120(第02期);全文 *
基于知识图谱的事实型智能问答方法研究;刘泽华;《CNKI》;20210501;全文 *
谢文慧 ; 易荣庆 ; 彭涛.基于键盘距离和依存分析的拼写纠错方法.《吉林大学学报(理学版)》.2018, *

Also Published As

Publication number Publication date
CN110399457A (zh) 2019-11-01

Similar Documents

Publication Publication Date Title
CN110399457B (zh) 一种智能问答方法和系统
CN110502621B (zh) 问答方法、问答装置、计算机设备及存储介质
CN107436864B (zh) 一种基于Word2Vec的中文问答语义相似度计算方法
CN111353030B (zh) 基于旅游领域知识图谱的知识问答检索方法及装置
US8751218B2 (en) Indexing content at semantic level
CN111475623A (zh) 基于知识图谱的案件信息语义检索方法及装置
CN111680173A (zh) 统一检索跨媒体信息的cmr模型
CN112035730B (zh) 一种语义检索方法、装置及电子设备
CN109947952B (zh) 基于英语知识图谱的检索方法、装置、设备及存储介质
CN105045852A (zh) 一种教学资源的全文搜索引擎系统
CN113535917A (zh) 基于旅游知识图谱的智能问答方法及系统
CN113806563A (zh) 面向多源异构建筑人文史料的建筑师知识图谱构建方法
CN113190687B (zh) 知识图谱的确定方法、装置、计算机设备及存储介质
CN111061828B (zh) 一种数字图书馆知识检索方法及装置
CN112328800A (zh) 自动生成编程规范问题答案的系统及方法
CN110888991A (zh) 一种弱标注环境下的分段式语义标注方法
CN113196277A (zh) 用于检索自然语言文档的系统
CN109522396B (zh) 一种面向国防科技领域的知识处理方法及系统
CN111553160A (zh) 一种获取法律领域问句答案的方法和系统
CN111814485A (zh) 一种基于海量标准文献数据的语义解析方法及装置
CN112507089A (zh) 一种基于知识图谱的智能问答引擎及其实现方法
CN112015907A (zh) 一种学科知识图谱快速构建方法、装置及存储介质
Nundloll et al. Automating the extraction of information from a historical text and building a linked data model for the domain of ecology and conservation science
CN115759037A (zh) 建筑施工方案智能审核框架及审核方法
CN111949781B (zh) 一种基于自然语句句法分析的智能交互方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant