CN110147358B - 自动问答知识库的建设方法及建设系统 - Google Patents

自动问答知识库的建设方法及建设系统 Download PDF

Info

Publication number
CN110147358B
CN110147358B CN201711172161.9A CN201711172161A CN110147358B CN 110147358 B CN110147358 B CN 110147358B CN 201711172161 A CN201711172161 A CN 201711172161A CN 110147358 B CN110147358 B CN 110147358B
Authority
CN
China
Prior art keywords
answer
attribute information
automatic question
answering
question
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
CN201711172161.9A
Other languages
English (en)
Other versions
CN110147358A (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.)
Shanghai Xiaoi Robot Technology Co Ltd
Original Assignee
Shanghai Xiaoi Robot Technology Co Ltd
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 Shanghai Xiaoi Robot Technology Co Ltd filed Critical Shanghai Xiaoi Robot Technology Co Ltd
Priority to CN201711172161.9A priority Critical patent/CN110147358B/zh
Priority to US16/106,533 priority patent/US20190147100A1/en
Publication of CN110147358A publication Critical patent/CN110147358A/zh
Application granted granted Critical
Publication of CN110147358B publication Critical patent/CN110147358B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种自动问答知识库的建设方法及建设系统,所述建设方法包括:获取动态数据库表;从表头中确定所述表体对应的两个以上属性信息;根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目;将所述动态数据库表对应数据库的链接信息、所述自动问答知识点及所述属性信息存储到知识库中。本发明实施例实现了根据动态数据库表自动生成知识点,并建立对应的知识库,减少了操作人员工作量并减少了人为犯错的可能,提高了生成的知识点的准确性和生成效率。

Description

自动问答知识库的建设方法及建设系统
技术领域
本发明实施例涉及自动问答技术,尤其涉及一种自动问答知识库的建设方法、自动问答知识库、自动问答方法、自动问答系统、自动问答知识库的建设系统、终端设备以及计算机存储介质。
背景技术
在自动问答系统中,有一些知识点不是从简单的自动问答对而来,而是来自于一些动态数据库表结构实现的结构化数据,结构化数据的数据量很庞大,如表1所示的理财表对应着约8*5条知识点(如增利系列九十天的年利率是多少),知识点包括问题和答案,知识量很大,而且每条知识点都需要操作人员手动整理。
表1理财表
如果表中内容一旦大批量修改,操作人员就需要找到对应的知识点的答案一一做变更,不但工作量大,而且容易出差错。
发明内容
有鉴于此,本发明实施例提供一种自动问答知识库的建设方法、自动问答知识库、自动问答方法、自动问答系统、自动问答知识库的建设系统、终端设备以及计算机存储介质,以实现自动生成知识点,减少操作人员工作量并提高知识点的准确性。
本发明实施例提供了一种自动问答知识库的建设方法,包括:
获取动态数据库表,所述动态数据库表包括题目、表头和表体,所述表头为第一行,所述表体为第一行之外的其它行;
从表头中确定所述表体对应的两个以上属性信息,当多列数据的表头内容对应的属性相同时,将所述多列数据的表头内容归纳为一个所述属性信息,当仅一列数据的表头内容对应一个属性时,直接将该列数据的表头内容作为一个所述属性信息;
根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目;
将所述动态数据库表对应数据库的链接信息、所述自动问答知识点及所述属性信息存储到知识库中。
可选地,所述方法还包括:
建立所述属性信息与对应的表体中内容或表头内容的包含关系;
将所述包含关系存储到知识库中。
可选地,所述方法还包括:
为所述表头或/和所述表体中的词语建立词类,所述词语作为对应词类的词类名,所述词类包括所述词语以及所述词语的同义词;
建立所述属性信息与对应的表体中内容的包含关系包括:建立所述属性信息与对应的表体或表头中词类名的包含关系;
将所述包含关系存储到知识库中还包括:将所述词类存储到知识库中。
可选地,根据所述属性信息生成一个或多个自动问答知识点包括:
根据至少两个所述属性信息自动生成一个初始知识点;
对每个所述初始知识点进行调整,得到所述自动问答知识点。
本发明实施例还提供了一种采用上述的自动问答知识库的建设方法建设的自动问答知识库。
本发明实施例还提供了一种基于上述自动问答知识库的自动问答方法,包括:
在接收到用户的请求信息时,根据所述请求信息匹配知识库中的自动问答知识点;
根据匹配到的自动问答知识点对应的所述题目,查找对应的动态数据库表对应数据库的链接信息,并获取查找到的动态数据库表;
根据所述请求信息在所述动态数据库表中查找对应的答案,根据查找到的答案以及确定的答案表达式生成最终答案,将所述最终答案返回给所述用户。
本发明实施例还提供了一种基于上述自动问答知识库的自动问答系统,包括:
请求匹配模块,用于在接收到用户的请求信息时,根据所述请求信息匹配知识库中的问答知识点;
数据获取模块,用于根据匹配到的问答知识点对应的所述题目,查找对应的动态数据库表对应数据库的链接信息,并根据所述链接信息获取对应的动态数据库表;
答案生成模块,根据所述请求信息在所述动态数据库表中查找对应的答案,根据查找到的答案以及确定的答案表达式生成最终答案;
答案返回模块,用于将所述最终答案返回给所述用户。
本发明还提供了一种自动问答知识库的建设系统,包括:
数据获取模块,用于获取动态数据库表,所述动态数据库表包括题目、表头和表体,所述表头为第一行,所述表体为第一行之外的其它行;
属性确定模块,从表头中确定所述表体对应的两个以上属性信息,当多列数据的表头内容对应的属性相同时,将所述多列数据的表头内容归纳为一个所述属性信息,当仅一列数据的表头内容对应一个属性时,直接将该列数据的表头内容作为一个所述属性信息;
知识点生成模块,根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目;
存储模块,用于将所述动态数据库表对应数据库的链接信息、所述自动问答知识点及所述属性信息存储到知识库中。
本发明实施例还提供了一种终端设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述自动问答知识库的建设方法或上述自动问答方法。
本发明实施例还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述自动问答知识库的建设方法或上述自动问答方法。
本发明实施例的技术方案,通过获取动态数据库表,从动态数据库表的表头中确定表体对应的两个以上属性信息,根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目,将动态数据库表、自动问答知识点及属性信息存储到知识库中,实现了根据动态数据库表自动生成知识点,并建立对应的知识库,不再需要操作人员根据动态数据库表手动整理知识点,减少了操作人员的工作量,并减少了人为犯错的可能,提高了生成的知识点的准确性和生成效率。而且在对动态数据库表进行修改时,可以不必像现有技术那样对手动整理生成的每条知识点进行修改,只需修改变化的属性信息对应的自动问答知识点,大大减少了操作人员的工作量。
附图说明
图1是本发明实施例一提供的一种自动问答知识库的建设方法的流程图;
图2为本发明实施例一提供的自动问答知识库的建设方法中的对表1的主键列建立词类的示意图;
图3为本发明实施例一提供的自动问答知识库的建设方法中的对表1的其他列的列题目建立词类的示意图;
图4是本发明实施例三提供的一种自动问答方法的流程图;
图5是本发明实施例四提供的一种自动问答系统的结构示意图;
图6是本发明实施例五提供的一种自动问答知识库的建设系统的结构示意图;
图7为本发明实施例六提供的一种终端设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
为了便于理解本发明实施例的内容,先介绍一下自动问答中常用到的名词:
1知识点
知识库中的基本知识点最原始和最简单的形式就是平时常用的FAQ,一般的形式是“问-答”对。例如,“彩铃的资费”就是表达清晰的标准问描述。这里的“问”不应被狭义地理解为“询问”,而应广义地来理解一“输入”,该“输入”具有对应的“输出”。例如,对于用于控制系统的语义识别而言,用户的一个指令,例如“打开收音机”也应可以被理解为是一个“问”,此时对应的“答”可以是用于执行相应控制的控制程序的调用。
用户在向机器输入时,最理想的情况是使用标准问,则机器的智能语义识别系统马上能够理解用户的意思。然而,用户往往并非使用的是标准问,而是标准问的一些变形的形式。例如,若对于收音机的电台切换的标准问形式是“换一个电台”,那么用户可能使用的命令是“切换一个电台”,机器也需要能够识别用户表达的是同一个意思。
对于智能语义识别而言,知识库里需要有标准问的扩展问,该扩展问与标准问表达形式有略微差异,但是表达相同的含义。
因此,知识库中包括多个知识点,每个知识点包括问题和答案,问题包括标准问和多个扩展问。
2词类
词类是按照词的语义进行划分的,把一组相关的词组织在一起形成一个树状结构的词类库,在这个树状结构中的任意一个非叶子结点都称作一个词类(广义词类),其中直接包含词的第一级词类称为狭义词类。定义词类的目的主要是为了分词、构造语义表达式以及使用其携带的语义信息进行语义相似度计算。
2.1词类的组成
词类(狭义词类)是对一组相关词的汇总,词类由词类名和一组相关词所组成。词类名是在这组相关词中具有标签作用的词,即词类的代表。一个词类中至少包含一个词(即词类名本身)。词类名一般需要符合以下规则:词类名应简单明了,通俗易懂,能突出重点;一组词里有拼音、英文、网络流行语、方言和书面语等词,这种情况下可以常用普通话作为词类名;设词类名中不应带有任何符号(如/,?等)。
2.2词类的语义标注
词类如果仅仅以一类词来使用,那其意义也就大打折扣。要对词类进行更好的应用,就需要在其上定义其默认的语义信息,以及标注其他的语义信息。有了这些语义信息,才可以在后续的语义分析中进行各种运算。标注的语义具有继承特性,即子类继承父类的标注语义。
2.2.1无标注词类
默认无任何标注时定义语义为“相似”,可理解为同义词,这种类型的词类对后续语义计算起到了很大的帮助,语义表达式中大量使用的都是这类词类。例如:“开通”这个词类,包含“开通”、“定制”、“开启”等词。
2.2.2集合词(#)
可以使用“#”标注为“不相似”。这时词类的主要作用是进行语义表达式的表示,其一般表现为同一类型的词,有一定的语义相关性,但是并非同义,称之为集合词类。例如:“操作系统”这个词类,包含“wince”、“linux”、“IOS”、“Android”、“palm”、“Symbian”等词。
2.2.3重要词(*n)
可以使用“*”或“*n”标注为“重要”(其中n表示重要度)。这类词相对其他词应该在计算相似度过程中提高权重。一般业务类名词都需要在语义上标注的更为重要以加强相似度计算中的权重。例如:“彩铃”这个词类,包含“七彩铃音”、“彩铃”等词。
2.2.4名称(%n)
可以使用“%n”标注一些专业词的词性。这类词一般在领域中有特定的意思,词性标注时很容易判断错误,因此需要通过人工标注来校正。通过准确的词性可以在后续句型分析及相似度计算中起到重要的作用。例如:“彩信珍藏夹”这个词类,包含的“彩信珍藏夹”、“彩信收藏夹”等词。
2.2.5动词(%v)
可以使用“%v”标注一些动词的词性。
2.2.6拼音纠错词(@)
可以使用“@”标注一些专业词的词类可以进行拼音纠错。如果在全部词库中进行拼音纠错,往往由于同音词原因纠错的正确率较低。通过对指定部分的词进行部分纠错虽然纠错范围变小了,但是纠错准确率可以大大的提升。“纠错”的标注一般是针对领域内的专业名词,其长度往往比常用词长,而且一般没有同音词,纠错效果明显。由于专业名词中往往包含有一些其他词,因此自动纠错的原则是纠错后对分词结果个数的影响不能增大。比如“悦读会会员包”这个词,用户往往由于输入法原因错误输入为“阅读会会员包”通过拼音纠错就可以避免这类由于用户输入错误造成的对用户问题的无法理解。
需要说明的是,上面标注仅是举例说明,如:其中的标注符号和/或对应关系等都可以发生变化,其不影响本发明的保护范围。
3语义表达式
语义表达式主要由词、词类以及他们的“或”关系构成,其核心依赖于“词类”,词类简单的理解即为一组有共性的词,这些词在语义上可以相似也可以不相似,这些词也可以被标注为重要或不重要。语义表达式与用户问句关系与传统的模板匹配有了很大的不同,在传统模板匹配中,模板和用户问句只是匹配与未匹配的关系,而语义表达式与用户问句之间关系是通过量化的值(相似度)来表示,同时这个量化的值与相似问句和用户问句之间的相似度是可以互相比较的。由于语义表达式要和相似问句一起参与相似度计算,所以模板语法的定义不宜复杂,但又要有足够的能力表达语义,以下举例说明语义表达式的具体组成和符号的表示。
3.1语义表达式中的符号
3.1.1词类的表示([])
为区分表达式中的词与词类,规定词类必须出现在方括号“[]”中,方括号中出现的词类一般为“狭义词类”,但是也可通过配置系统参数以支持“广义词类”。下面是一些简单表达式的示例:[飞信][如何][开通]、[介绍][彩信][业务]、[飞信]的[登录][方法]、[来电提醒][如何][收费]。
3.1.2或关系的表示(|)
在方括号中的词类可以通过“或”关系出现多次,这些“或”关系的词类会在计算相似度的时候以“展开”的方式单独计算。“展开”主要是根据“或”的意义将语义表达式展开成多个简单表达式的过程。如:[彩铃][开通]的[方法|步骤]可展开成“[彩铃][开通]的[步骤]”和“[彩铃][开通]的[方法]”两个简单的语义表达式。这类语义表达式的示例如下:[彩铃][开通]的[方法|步骤]、[怎样][查询|知道][PUK码]、[退订|撤销|关闭|停用][IP|17951][国内长途优惠包]、[来电提醒][功能费|月租费|信息费|通信费]。
3.1.3非必要的表示(?)
在方括号中的词类可以在结尾加入“?”表示可出现也可以不出现,即非必要的关系,这种非必要关系的词类也同样会在计算相似度的时候以“展开”的方式单独计算。“展开”主要是将语义表达式中含有非必要的词类(或词类的“或组合”)展开成包含和不包含这个词类的两个简单语义表达式的过程。
如:[介绍][手机视频][军事栏目][内容][什么?]可展开成“[介绍][手机视频][军事栏目][内容]”和“[介绍][手机视频][军事栏目][内容][什么]”两个简单语义表达式。
本发明中的问题表达式及答案表达式就是用表达式形式表示的问题和答案。
实施例一
图1是本发明实施例一提供的一种自动问答知识库的建设方法的流程图,本实施例可适用于对动态数据库表建设自动问答知识库的情况,该方法可以由建设自动问答知识库的装置来执行,该装置可以由软件和/或硬件来实现,一般可集成在终端设备中,该方法具体包括如下步骤:
步骤110,获取动态数据库表,所述动态数据库表包括题目、表头和表体。
其中,动态数据库表是由二维表结构来逻辑表达和实现的数据,遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理,其包括题目(如表1的题目“理财表”)、表头(如表1的第一行)和表体(除第一行外的数据)。
本实施例通过动态数据库表的链接信息,加载动态数据库表并显示。
步骤120,从表头中确定所述表体对应的两个以上属性信息,每个所述属性信息与一列或多列的表头内容对应。
动态数据库表的表头中表示了每列数据的属性,一般,主键列具有一个属性,其他列数据的属性可以相同,也可以不同,根据每列数据的属性,可以确定表体对应的至少两个属性信息,且每个所述属性信息与一列或多列的表头内容对应。
其中,主键列是在一张表中可以用来唯一标识一行数据的列,如表1中的第一列可以标识每行表示的具体理财产品,该列即为主键列。
具体实施时,根据表头内容确定每列数据的属性,选定其中的主键列(如表1的第一列和表2的第一列),根据主键列确定一个属性信息,再根据其他列的表头内容确定一个或多个属性信息(如表1中其他列的表头内容均是具体的天数,可归纳为一个属性信息,而表2中其他列的表头内容不能归纳为一个属性信息,可将每一列作为一个属性信息),还需要根据确定的属性信息判断加载的动态数据库表可否构建为一个知识点,如,在具有两个属性信息时只能构建一个知识点,在具有多于两个的属性信息时可以构建多个知识点。例如,表1可构建为一个知识点,表2可构建为多个知识点,包括:xx书的价格、xx书的作者及xx书的简介等,其中,xx统称为所有的书。
表2书籍表
可选的,从表头中确定所述表体对应的两个以上属性信息包括:
当多列数据的表头内容对应的属性相同时,将所述多列数据的表头内容归纳为一个所述属性信息;
当仅一列数据的表头内容对应一个属性时,直接将该列数据的表头内容作为一个所述属性信息。
比较多列数据的表头内容,判断多列数据的表头内容对应的属性是否相同,在相同时,将多列数据的表头内容归纳为一个属性信息(如表1中除第一列外的其他各列的表头内容均是具体的天数,可归纳为一个属性信息,该属性信息可以为理财期限);当只有一列数据的表头内容对应一个属性时,直接将该列数据的表头内容作为一个属性信息,例如,主键列会具有一个单独的属性,该列的表头内容可作为一个属性信息(如表1中的第一列对应一个属性信息,该属性信息可以为理财产品),当然,其他列中也可能仅一列数据的表头内容对应一个属性(如表2中的第二列的属性是作者,第三列的属性是价格,不能归纳为同一属性信息,即每列分别对应一个属性信息)。通过归纳属性信息,为自动生成自动问答知识点提供依据,从而可以自动生成较少的自动问答知识点,提高生成知识点的效率,而且节省存储空间。
步骤130,根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目。
当只有两个属性信息时,生成一个自动问答知识点;当有M个属性信息时(M大于等于3),则可以根据其中的任意两个属性信息生成一个自动问答知识点,也可以根据其中的任意三个属性信息生成一个自动问答知识点,还可以根据其中任意N个属性信息生成一个自动问答知识点(N大于3且小于等于M)。即,根据两个以上属性信息,可以生成一个自动问答知识点,也可以通过对属性信息的组合生成多个自动问答知识点。
本发明实施例中的自动问答知识点中的答案表达式包括动态数据库表的题目,用于在与用户交互时查找与该题目对应的动态数据库表并获取答案。
步骤140,将所述动态数据库表对应数据库的链接信息、所述自动问答知识点及所述属性信息存储到知识库中。
知识库中除了上述动态数据库表对应数据库的链接信息、自动问答知识点和属性信息外,还包括普通知识点,普通知识点包括问题表达式和答案表达式,答案表达式中不存在所述题目。
本实施例的技术方案,通过获取动态数据库表对应数据库的链接信息,从动态数据库表的表头中确定表体对应的两个以上属性信息,根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目,将动态数据库表对应数据库的链接信息、自动问答知识点及属性信息存储到知识库中,实现了根据动态数据库表自动生成知识点,并建立对应的知识库,减少了操作人员工作量,并减少了人为犯错的可能,提高了生成的知识点的准确性和效率。
在上述技术方案的基础上,还可选包括:
建立所述属性信息与对应的表体中内容或表头内容的包含关系;
将所述包含关系存储到知识库中。
在将一列数据的表头内容作为一个属性信息时,建立该属性信息与对应的表体内容的包含关系(如建立属性信息与主键列的表体中内容的包含关系);在将多列数据的表头内容归纳为一个属性信息时,该属性信息可以是多列数据的表头内容的共性,从而建立属性信息与对应的表头内容的包含关系。将所述属性信息与对应的表体中内容的包含关系以及属性信息与对应的表头内容的包含关系存储到知识库中,便于在与用户进行自动问答交互中快速查找对应的知识点。
在上述技术方案的基础上,可选的,还包括:
为所述表头或/和所述表体中的词语建立词类,所述词语作为对应词类的词类名,所述词类包括所述词语以及所述词语的同义词;
建立所述属性信息与对应的表体中内容的包含关系包括:建立所述属性信息与对应的表体或表头中词类名的包含关系;
将所述包含关系存储到知识库中还包括:将所述词类存储到知识库中。
为了在与用户交互时更加快速的匹配到知识点,还可以为表头或/和表体中的词语建立词类,将所述词语作为对应词类的词类名,并确定所述词语的同义词,将所述词语连同对应的同义词一同放在所述词类下。在建立属性信息与对应的表体中内容的包含关系时,建立属性信息与对应的表体或表头中词类名的包含关系即可,记录的包含关系较为简单。在存储包含关系时连同建立的词类一同存储到知识库中。
以表1为例,首先,根据表头内容选择主键列,将主键列的列题目作为一个属性信息,属性信息为理财产品,而将该列下的值作为属性信息下的词类名,并添加对应的同义词丰富其语义信息,生成词类,也即对表体中的第一列中的词语建立词类,并建立属性信息与对应的表体中词类名的包含关系,如图2所示为本发明实施例提供的自动问答知识库的建设方法中的对表1的主键列建立词类的示意图。通过判断,确定除主键列以外的列的表头内容均为具体的天数,对应的属性相同,对其他列的列题目进行归纳命名,作为一个属性信息,属性信息为理财期限,将其他列的列题目作为该属性信息下的词类名,并添加对应的同义词,生成与其他列的列数量相同的词类,也即对其他列的表头中的词语建立词类,并建立属性信息与对应的表头中词类名的包含关系,如图3所示为本发明实施例提供的自动问答知识库的建设方法中的对表1的其他列的列题目建立词类的示意图。将建立的词类和包含关系一同存储到知识库中。
以表2为例,首先,根据表头内容选择主键列,将第一列作为主键列,将主键列的列题目作为一个属性信息,而将该列下的值作为属性信息下的词类名,并添加对应的同义词丰富其语义信息,生成词类,也即对表体中的第一列中的词语建立词类,并建立属性信息与对应的表体中词类名的包含关系。通过判断,确定除主键列外的其他列对应的属性均不同,即每列对应一个属性,对其他列中每列的列题目进行归纳命名,作为一个属性信息,比如“作者”这一列生成的属性信息可以为“作者名称”或“作者”,对应的列题目作为该属性信息下的词类名,同时将对应的表体中词语也作为该属性信息下的词类名,建立多个词类,也即对表头和表体中每一列中的词语建立词类,并建立属性信息与对应的表头和表体中词类名的包含关系。根据表2的列题目可以额外生成如表3所示的四个词类名:价格、简介、作者和书。
表3词类
在上述技术方案的基础上,可选的,根据所述属性信息生成一个或多个自动问答知识点包括:
根据至少两个所述属性信息自动生成一个初始知识点;
对每个所述初始知识点进行调整,得到所述自动问答知识点。
将至少两个所述属性信息合并,自动生成一个初始知识点,再对每个初始知识点进行调整,得到自动问答知识点。例如,表1中可以归纳为两个属性信息,即理财产品和理财期限,自动生成一个初始知识点,如下:
为该初始知识点生成初始问题表达式:[理财产品][理财期限]
为该初始知识点生成初始答案表达式:$[理财产品]的$[理财期限]是{ds.理财表}
对于上述自动生成的初始知识点,操作人员可以对其进行修改调整,得到自动问答知识点,如下:
修改后的问题表达式:[理财产品][理财期限][年利率][多少?]
修改后的答案表达式:$[理财产品]的$[理财期限]$[年利率]是{ds.理财表}
例如,表2中可以归纳为多个属性信息,可以根据主键列的属性信息和其他列中一列的属性信息生成初始知识点,生成的初始知识点如下(省略了答案表达式):知识点1、生成的问题表达式:[书籍名称][作者]
知识点2、生成的问题表达式:[书籍名称][价格]
知识点3、生成的问题表达式:[书籍名称][简介]
对于上述知识点,操作人员对其进行简单修改,如知识点3无需修改,知识点1和知识点2可以修改如下:
知识点1、修改后的问题表达式:[书籍名称][作者][谁?]
知识点2、修改后的问题表达式:[书籍名称][价格][多少?]
还可以根据其他列中一列的属性信息和主键列的属性信息生成初始知识点,可以为(省略了答案表达式):
样例:路遥出过哪些书?
生成的问题表达式:[作者名称][书]
操作人员可以修改如下:
修改后的问题表达式:[作者名称][写过|出版][书]
可见,根据动态数据库表中对应的属性信息可以自动生成初始知识点,操作人员只需简单调整就可以得到标准的自动问答知识点,大大减少了操作人员的工作量。
当采用本实施例技术方案处理表1时,只需生成一个自动问答知识点即可,从而不再需要生成40条知识点,大大节省了存储空间,并减少了操作人员的工作量。
此外,本实施例只需获得动态数据库表的链接信息即可,无需直接存储动态数据库表,从而可以进一步节省存储空间。
实施例二
本发明实施例二提供了自动问答知识库,该自动问答知识库通过实施例一提供的自动问答知识库的建设方法建设的,也即,自动问答知识库包括:
一个或多个动态数据库表对应数据库的链接信息;
与一个所述动态数据库表对应的两个以上属性信息;
多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括一个所述题目。
所述知识库还可选包括:
所述属性信息与对应的表体中内容或表头内容的包含关系。
可选的,在建立所述知识库时,为所述表头或/和所述表体中的词语建立词类,所述词语作为对应词类的词类名,所述词类包括所述词语以及所述词语的同义词;
所述包含关系为所述属性信息与对应的表体或表头中词类名的包含关系;
所述知识库还包括:所述词类。
自动问答知识库还存储普通自动问答知识点,普通自动问答知识点包括问题表达式和答案表达式,答案表达式中不会包括动态数据库表的题目。
本实施例的技术方案,直接存储动态数据库表对应数据库的链接信息及对应的自动问答知识点,自动问答知识点是通过总结动态数据库表的共有属性得到的,涵盖了多个问题及答案,在与用户交互时,可以根据具体情况返回对应的答案。
实施例三
图4是本发明实施例三提供的一种自动问答方法的流程图,本实施例所述的自动问答方法的基础是本发明任一实施例所述的自动问答知识库,本实施例可适用于对动态数据库表存储的数据进行自动问答的情况,该方法可以由自动问答装置来执行,该装置可以由软件和/或硬件来实现,一般可集成在服务器中,该方法具体包括如下步骤:
步骤410,在接收到用户的请求信息时,根据所述请求信息匹配知识库中的自动问答知识点。
所述请求信息可以是语音信息,也可以是文本信息。当所述请求信息是语音信息时,可以先将语音信息转换为对应的文本信息。
在接收到用户的请求信息时,根据语义相似度计算将用户的请求信息与知识库中的自动问答知识点进行匹配,选取相似度大于预设阈值且相似度最高一个或多个的自动问答知识点,为匹配到的自动问答知识点。值得说明的是,这里的自动问答知识点可以是和动态数据库表对应的自动问答知识点,此时自动问答知识点的答案表达式中包括动态数据库表的题目,自动问答知识点还可以是普通知识点,此时自动问答知识点的答案表达式中不包括所述题目。
具体进行相似度计算时,可以先对请求信息进行分词处理,得到分词结果,将分词结果基于建立的词类来计算相似度。
当匹配到的自动问答知识点是普通知识点时,直接获取匹配到的知识点的答案并将所述答案返回给用户即可。需要说明的是,当答案为文本信息时,既可以直接将该文本信息返回给用户,也可以将该文本信息转换为语音信息后再返回给用户,其不影响本发明的保护范围。
而当匹配到的自动问答知识点是和动态数据库表对应的自动问答知识点时,则需要继续执行下面的步骤。
步骤420,根据匹配到的自动问答知识点对应的所述题目,查找对应的动态数据库表对应数据库的链接信息,并获取查找到的动态数据库表。
步骤420具体可以包括以下内容:
根据所述题目,查找对应的动态数据库表对应数据库的链接信息;
获取查找到的动态数据库表。
步骤430,根据所述请求信息在所述动态数据库表中查找对应的答案,根据查找到的答案以及确定的答案表达式生成最终答案,将所述最终答案返回给所述用户。
根据所述请求信息在相似度计算时匹配到的词类名,查找动态数据库表中的所述词类名,获取对应的数据,作为答案,并根据查找到的答案以及匹配到的自动问答知识点中的答案表达式生成最终答案,将最终答案返回给所述用户。
例如,结合表1,用户的请求信息为“点石成金系列九十天的年利率是多少?”,通过相似度计算匹配到问题表达式为“[理财产品][理财期限][年利率][多少?]”,答案表达式为“$[理财产品]的$[理财期限]$[年利率]是{ds.理财表}”的自动问答知识点,答案表达式中包括动态数据库表的题目“理财表”,根据动态数据库表的题目,直接获取该动态数据库表对应数据库的链接信息,并获取对应的动态数据库表,在该动态数据库表中查找点石成金系列与九十天对应的具体数据,经查找,得到点石成金系列与九十天对应的具体数据是4.46,代入所述答案表达式,得到最终答案为“点石成金系列九十天的年利率是4.46”,将该最终答案返回给用户或将该最终答案转换为对应的语音信息并返回给用户。
本实施例的技术方案,通过在接收到用户的请求信息时,匹配知识库中的自动问答知识点,如果匹配到的自动问答知识点的答案表达式不包括动态数据库表的题目,可以直接返回对应的答案,如果匹配到的自动问答知识点的答案表达式包括所述题目,则获取对应的动态数据库表,在动态数据库表中查找对应的答案,并根据答案表达式生成最终答案,返回给所述用户,从而根据知识库中存储的链接信息对应的动态数据库表及对应的自动问答知识点查找到与用户的请求信息对应的最终答案,从而在存储动态数据库表对应的自动问答知识点时,只需存储与动态数据库表的属性信息对应的自动问答知识点,不必像现有技术那样存储对应的很多条知识点,大大节省了知识库的存储空间,而且在根据用户的请求信息匹配知识库中的自动问答知识点时,由于待匹配的自动问答知识点较少,提高了匹配速度,从而提高了获取答案的速度。
实施例四
图5是本发明实施例四提供的一种自动问答系统的结构示意图,本实施例所述的自动问答装置的基础是本发明任一实施例所述的自动问答知识库,本实施例可适用于对动态数据库表存储的数据进行自动问答的情况,该装置可以由软件和/或硬件来实现,一般可集成在服务器中,该装置包括:请求匹配模块510、数据获取模块520、答案生成模块530和答案返回模块540。
其中,请求匹配模块510,用于在接收到用户的请求信息时,根据所述请求信息匹配知识库中的自动问答知识点;
数据获取模块520,用于根据匹配到的自动问答知识点对应的所述题目,查找对应的动态数据库表对应数据库的链接信息,并根据所述链接信息获取对应的动态数据库表;
答案生成模块530,用于根据所述请求信息在所述动态数据库表中查找对应的答案,根据查找到的答案以及确定的答案表达式生成最终答案;
答案返回模块540,用于将所述最终答案返回给所述用户。
可选的,所述数据获取模块包括:
查找单元,用于根据所述题目,查找对应的动态数据库表对应的链接信息;
数据获取单元,用于根据所述链接信息获取查找到的动态数据库表。
上述自动问答系统可执行本发明任意实施例所提供的自动问答方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例三提供的自动问答方法。
实施例五
图6是本发明实施例五提供的一种自动问答知识库的建设系统的结构示意图,本实施例可适用于对动态数据库表建设自动问答知识库的情况,该系统可以由软件和/或硬件来实现,一般可集成在终端设备中,该系统包括:数据获取模块610、属性确定模块620、知识点生成模块630和存储模块640。
其中,数据获取模块610,用于获取动态数据库表,所述动态数据库表包括题目、表头和表体;
属性确定模块620,用于从表头中确定所述表体对应的两个以上属性信息,每个所述属性信息与一列或多列的表头内容对应;
知识点生成模块630,用于根据所述属性信息生成一个或多个自动问答知识点,每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目;
存储模块640,用于将所述动态数据库表、所述自动问答知识点及所述属性信息存储到知识库中。
可选的,所述存储模块包括:
动态数据库表存放单元,用于存储所述动态数据库表的链接信息。
可选的,所述属性确定模块包括:
判断单元,用于判断多列数据的表头内容对应的属性是否相同;
归纳单元,用于根据判断单元的判断结果将属性相同的多列数据的表头内容归纳为一个所述属性信息;
输出单元,用于将归纳单元得到的属性信息以及当仅一列数据的表头内容对应一个属性时的该列数据的表头内容进行输出。
可选的,所述系统还包括:
包含关系建立模块,用于建立所述属性信息与对应的表体中内容的包含关系;
包含关系存储模块,用于将所述包含关系存储到知识库中。
可选的,所述系统还包括:
词类建立模块,用于为所述表头或/和所述表体中的词语建立词类,所述词语作为对应词类的词类名,所述词类包括所述词语以及所述词语的同义词;
所述包含关系建立模块具体用于:建立所述属性信息与对应的表体或表头中词类名的包含关系;
所述包含关系存储模块还用于:将所述词类存储到知识库中。
可选的,所述知识点生成模块包括:
初始知识生成单元,用于根据至少两个所述属性信息自动生成一个初始知识点;
知识点调整单元,用于对每个所述初始知识点进行调整,得到所述自动问答知识点。
上述自动问答知识库的建设系统可执行本发明任意实施例所提供的自动问答知识库的建设方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例一提供的自动问答知识库的建设方法。
实施例六
图7为本发明实施例六提供的一种终端设备的结构示意图,如图7所示,该终端设备包括处理器710、存储装置720、输入装置730和输出装置740;终端设备中处理器710的数量可以是一个或多个,图7中以一个处理器710为例;终端设备中的处理器710、存储装置720、输入装置730和输出装置740可以通过总线或其他方式连接,图7中以通过总线连接为例。
存储装置720作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的自动问答知识库的建设方法和/或自动问答方法对应的程序指令/模块(例如,自动问答知识库的建设装置中的数据获取模块610、属性确定模块620、知识点生成模块630和存储模块640)。处理器710通过运行存储在存储装置720中的软件程序、指令以及模块,从而执行终端设备的各种功能应用以及数据处理,即实现上述的自动问答知识库的建设方法和/或自动问答方法。
存储装置720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置720可进一步包括相对于处理器710远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置730可用于接收输入的数字或字符信息,以及产生与终端设备的用户设置以及功能控制有关的键信号输入。输出装置740可包括显示屏等显示设备。
实施例七
本发明实施例七还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种自动问答知识库的建设方法和/或自动问答方法。
所述自动问答知识库的建设方法具体可以参考实施例一,在此不再赘述。
所述自动问答方法具体可以参考实施例三,在此不再赘述。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的自动问答知识库的建设方法和/或自动问答方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (9)

1.一种自动问答知识库的建设方法,其特征在于,包括:
获取动态数据库表,所述动态数据库表包括题目、表头和表体,所述表头为第一行,所述表体为第一行之外的其它行;
从表头中确定所述表体对应的两个以上属性信息,当多列数据的表头内容对应的属性相同时,将所述多列数据的表头内容归纳为一个所述属性信息,当仅一列数据的表头内容对应一个属性时,直接将该列数据的表头内容作为一个所述属性信息;
根据所述属性信息生成一个或多个自动问答知识点,包括:根据至少两个所述属性信息自动生成一个初始知识点,对每个所述初始知识点进行调整,得到所述自动问答知识点;每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目;
将所述动态数据库表对应数据库的链接信息、所述自动问答知识点及所述属性信息存储到知识库中。
2.如权利要求1所述的方法,其特征在于,还包括:
建立所述属性信息与对应的表体中内容或表头内容的包含关系;
将所述包含关系存储到知识库中。
3.根据权利要求2所述的方法,其特征在于,还包括:
为所述表头或/和所述表体中的词语建立词类,所述词语作为对应词类的词类名,所述词类包括所述词语以及所述词语的同义词;
建立所述属性信息与对应的表体中内容的包含关系包括:建立所述属性信息与对应的表体或表头中词类名的包含关系;
将所述包含关系存储到知识库中还包括:将所述词类存储到知识库中。
4.一种通过如权利要求1-3任一所述的自动问答知识库的建设方法建设的自动问答知识库。
5.一种基于权利要求4所述的自动问答知识库的自动问答方法,其特征在于,包括:
在接收到用户的请求信息时,根据所述请求信息匹配知识库中的自动问答知识点;
根据匹配到的自动问答知识点对应的所述题目,查找对应的动态数据库表对应数据库的链接信息,并获取查找到的动态数据库表;
根据所述请求信息在所述动态数据库表中查找对应的答案,根据查找到的答案以及确定的答案表达式生成最终答案,将所述最终答案返回给所述用户。
6.一种基于权利要求4所述的自动问答知识库的自动问答系统,其特征在于,包括:
请求匹配模块,用于在接收到用户的请求信息时,根据所述请求信息匹配知识库中的问答知识点;
数据获取模块,用于根据匹配到的问答知识点对应的所述题目,查找对应的动态数据库表对应数据库的链接信息,并根据所述链接信息获取对应的动态数据库表;
答案生成模块,根据所述请求信息在所述动态数据库表中查找对应的答案,根据查找到的答案以及确定的答案表达式生成最终答案;
答案返回模块,用于将所述最终答案返回给所述用户。
7.一种自动问答知识库的建设系统,其特征在于,包括:
数据获取模块,用于获取动态数据库表,所述动态数据库表包括题目、表头和表体,所述表头为第一行,所述表体为第一行之外的其它行;
属性确定模块,从表头中确定所述表体对应的两个以上属性信息,当多列数据的表头内容对应的属性相同时,将所述多列数据的表头内容归纳为一个所述属性信息,当仅一列数据的表头内容对应一个属性时,直接将该列数据的表头内容作为一个所述属性信息;
知识点生成模块,根据所述属性信息生成一个或多个自动问答知识点,包括:根据至少两个所述属性信息自动生成一个初始知识点,对每个所述初始知识点进行调整,得到所述自动问答知识点;每个自动问答知识点包括问题表达式和答案表达式,所述答案表达式包括所述题目;
存储模块,用于将所述动态数据库表对应数据库的链接信息、所述自动问答知识点及所述属性信息存储到知识库中。
8.一种终端设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3或5中任一所述的方法。
9.一种计算机存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-3或5中任一所述的方法。
CN201711172161.9A 2017-11-10 2017-11-22 自动问答知识库的建设方法及建设系统 Active CN110147358B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711172161.9A CN110147358B (zh) 2017-11-22 2017-11-22 自动问答知识库的建设方法及建设系统
US16/106,533 US20190147100A1 (en) 2017-11-10 2018-08-21 Method and apparatus for establishing intelligent question answering repository, and intelligent question answering method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711172161.9A CN110147358B (zh) 2017-11-22 2017-11-22 自动问答知识库的建设方法及建设系统

Publications (2)

Publication Number Publication Date
CN110147358A CN110147358A (zh) 2019-08-20
CN110147358B true CN110147358B (zh) 2024-05-17

Family

ID=67588092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711172161.9A Active CN110147358B (zh) 2017-11-10 2017-11-22 自动问答知识库的建设方法及建设系统

Country Status (1)

Country Link
CN (1) CN110147358B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543550B (zh) * 2019-09-04 2022-05-06 上海智臻智能网络科技股份有限公司 自动生成试题的方法和装置
CN113284378B (zh) * 2021-04-12 2022-06-21 东营职业学院 一种智能化数学教学辅助方法、装置及智能教学系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912600A (zh) * 2016-04-05 2016-08-31 上海智臻智能网络科技股份有限公司 问答知识库及其建立方法、智能问答方法和系统
KR101662450B1 (ko) * 2015-05-29 2016-10-05 포항공과대학교 산학협력단 다중 소스 하이브리드 질의응답 방법 및 시스템
CN107247726A (zh) * 2017-04-28 2017-10-13 北京神州泰岳软件股份有限公司 适用于多业务场景的智能机器人的实现方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10339453B2 (en) * 2013-12-23 2019-07-02 International Business Machines Corporation Automatically generating test/training questions and answers through pattern based analysis and natural language processing techniques on the given corpus for quick domain adaptation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101662450B1 (ko) * 2015-05-29 2016-10-05 포항공과대학교 산학협력단 다중 소스 하이브리드 질의응답 방법 및 시스템
CN105912600A (zh) * 2016-04-05 2016-08-31 上海智臻智能网络科技股份有限公司 问答知识库及其建立方法、智能问答方法和系统
CN107247726A (zh) * 2017-04-28 2017-10-13 北京神州泰岳软件股份有限公司 适用于多业务场景的智能机器人的实现方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于同义扩展的在线百科中实体属性抽取;刘倩;刘冰洋;贺敏;伍大勇;刘悦;程学旗;;中文信息学报(01);全文 *
联合虚拟参考咨询中的自动问答系统设计与实现;姚占雷;郭金龙;许鑫;;现代图书情报技术(09);全文 *

Also Published As

Publication number Publication date
CN110147358A (zh) 2019-08-20

Similar Documents

Publication Publication Date Title
CN107798123B (zh) 知识库及其建立、修改、智能问答方法、装置及设备
CN109284363B (zh) 一种问答方法、装置、电子设备及存储介质
CN104252533B (zh) 搜索方法和搜索装置
CN109670163B (zh) 信息识别方法、信息推荐方法、模板构建方法及计算设备
Mendes et al. DBpedia spotlight: shedding light on the web of documents
WO2018149326A1 (zh) 一种自然语言问句答案的生成方法、装置及服务器
JP6014725B2 (ja) 単文/複文構造の自然言語クエリに対する検索および情報提供方法並びにシステム
WO2021174783A1 (zh) 近义词推送方法、装置、电子设备及介质
CN109726274B (zh) 问题生成方法、装置及存储介质
CN103268313B (zh) 一种自然语言的语义解析方法及装置
WO2018000272A1 (zh) 一种语料生成装置和方法
CN101167075B (zh) 专有表现抽取装置、方法以及程序
CN106776532B (zh) 一种知识问答方法及装置
CN111046656B (zh) 文本处理方法、装置、电子设备及可读存储介质
CN109947952B (zh) 基于英语知识图谱的检索方法、装置、设备及存储介质
US20190147100A1 (en) Method and apparatus for establishing intelligent question answering repository, and intelligent question answering method
CN102567509B (zh) 视觉信息辅助的即时通信方法及系统
WO2014160379A1 (en) Dimensional articulation and cognium organization for information retrieval systems
CN110647618A (zh) 对话查询应答系统
US20120323905A1 (en) Ranking data utilizing attributes associated with semantic sub-keys
US20110119261A1 (en) Searching using semantic keys
CN111553138B (zh) 用于规范内容结构文档的辅助写作方法及装置
CN104391969A (zh) 确定用户查询语句句法结构的方法及装置
CN110147358B (zh) 自动问答知识库的建设方法及建设系统
CN113190692B (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