首页> 中国专利> 中文问答系统知识标记语言的表示方法及中文问答系统

中文问答系统知识标记语言的表示方法及中文问答系统

摘要

本发明提供一种中文问答系统知识标记语言的表示方法及中文问答系统,该方法包括:所述中文问答系统知识标记语言的表示方法包括:知识的基本表示方法,知识的语义表示方法,知识模板的表示和实例化方法,知识的引用与关联方法,知识中命名实体的表示和消歧方法,知识中表情、数学、超文本符号和时间的表示方法,本发明还提供了一种所述中文问答系统使用上述的表示方法。本发明以推动中文问答系统在科研界和企业界的进一步研究和应用。

著录项

  • 公开/公告号CN105630887A

    专利类型发明专利

  • 公开/公告日2016-06-01

    原文格式PDF

  • 申请/专利权人 北京中科汇联科技股份有限公司;

    申请/专利号CN201510958742.X

  • 发明设计人 游世学;杜新凯;王丙栋;

    申请日2015-12-18

  • 分类号G06F17/30(20060101);

  • 代理机构北京庆峰财智知识产权代理事务所(普通合伙);

  • 代理人李文军

  • 地址 100094 北京市海淀区东北旺西路8号9号楼二区305

  • 入库时间 2023-12-18 15:46:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-07-21

    著录事项变更 IPC(主分类):G06F17/30 变更前: 变更后: 申请日:20151218

    著录事项变更

  • 2017-06-16

    授权

    授权

  • 2016-07-13

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20151218

    实质审查的生效

  • 2016-06-01

    公开

    公开

说明书

技术领域

本发明涉及自然语言处理领域,尤其是一种中文问答系统知识标记语言的 表示方法及中文问答系统。

背景技术

近年来,随着移动互联网的迅猛发展和人工智能技术的持续创新,国内外 IT公司纷纷推出各种智能机器人产品,如以苹果Siri,GOOGLENow,微软小冰, 百度语音助手为代表的聊天机器人,可以满足人们日常生活和聊天情感方面的 需要;以中科汇联微喂和爱客服为代表的客服机器人,可以满足政府、企业为 用户提供准确、便捷、低成本的专业服务的需要。智能机器人的纷纷涌现和广 泛应用,使得智能机器人技术,与基因工程,纳米科学一起被并称为21世纪三 大尖端技术,成为基础性、战略性的技术,能够对生产生活方式产生革命性的 影响。智能机器人技术的基础核心为自然语言处理领域中的问答系统相关技术。 通用的问答系统有四个主要组成部分:知识库,问题理解,知识检索和答案生 成。知识库存放了问答系统的所有知识,是问答系统的中枢;问题理解实现对 用户提问的语义层次的解析和表示;知识检索实现从知识库中检索与用户提问 语义相关的候选知识;答案生成基于候选知识,经过分析、推理生成最终的答 案。这四个部分都与问答系统的知识表示息息相关。然而,科研界和企业界尚 未提出一种针对中文领域问答系统的知识表示方法。这种现状,制约了中文问 答系统技术的深入研究与广泛应用。

因此,有必要提出一种新的技术方案。

发明内容

针对上述问题,本发明提出一种中文问答系统知识标记语言的表示方法, 用于中文问答系统的知识表示,以推动中文问答系统在科研界和企业界的进一 步研究和应用。

本发明提供一种中文问答系统知识标记语言的表示方法,所述中文问答系 统知识标记语言的表示方法包括:知识的基本表示方法,知识的语义表示方法, 知识模板的表示和实例化方法,知识的引用与关联方法,知识中命名实体的表 示和消歧方法,知识中表情、数学、超文本符号和时间的表示方法。

进一步的,所述知识的基本表示方法包括:知识主要由ID、参数和知识体 构成,知识的ID使用“<实例名_属性名>”表示,ID后面的“{}”内部为知识 体定义,所述知识体包括问题域和答案域,问题域在先,以“<#q>”开头,答 案域在后,以“<#a>”开头,所述知识中的注释以“//”开头到本行行尾,如 果是多行注释,每行都要以“//”开头。

进一步的,所述知识的语义表示方法包括:是将知识组织成一排有序的语 义表达式词块,词块之间以单个空格分隔;简单词块是句子的分词,复杂词块 是通过在分词上添加语义表达式标记构成,所述复杂词块包括关键词、同义词 和语序相关;

关键词使用“[]”表示;

如果关键词语序与语句的语义强相关,则使用“{}”将这些语序相关的关 键词包括起来;

在答案内部,使用答案变量来表示变化的内容,答案变量的表示方法是 “${变量名}”;

在问题域和答案域中,多个问题或答案之间用“<|>”隔开;

如果问题域中有多个问题,则第一个问题为标准问题,后续问题为扩展问 题,所述扩展问题即标准问题的其它问法;

如果答案域中多个答案,则第一个答案为标准答案,后续答案为扩展答案, 每个答案都正确,在无特定条件限制时问答系统随机给出答案;

同一个问题,在特定条件限制下,有特定的答案,对于这类答案,通过“[]” 表示特定条件,通过“:”表示条件及其答案之间的分隔符;当无法确定提问满 足的条件时,问答系统支持反问或者枚举。

进一步的,所述知识模板的表示和实例化方法包括:知识模板的表示方法 是在知识的表示方法的基础上增加了对模板参数的表示,知识模板的ID使用“< 实例名_属性名|模板参数1,模板参数2,...>”表示,多个模板参数之间使用英 文半角“,”隔开,在实例名、属性名和知识体中,使用“%模板参数名%”表示 对模板参数的引用;

实例化方法包括:在ID和知识体之间,用“()”括起来的部分表示对模板 的继承和对模板参数的实例化,如果新的知识没有将模板中所有的参数都实例 化,或者又引入了新的模板参数,则新的知识依然为模板,并在ID中列出需要 实例化的模板参数,从模板派生的知识,继承了原模板的问答域和答案域,并 能进行改写,在改写时,能通过“${super.q}”和“${super.a}”分别引用原 问题和答案。

进一步的,知识的引用与关联方法包括:在答案域中,通过“%{知识ID}” 能引用其它的知识的答案,如果用户提问的知识中引用了其它知识,则在生成 答案时,结合上下文嵌入所引知识的答案;

在答案域中,通过“{标签:知识ID}”能链接其它知识的问题;问答系统 在显示答案时,如果答案中包含链接,则将链接的标签展示给用户,用户点击 链接,问答系统给所链接知识的答案。

进一步的,知识中命名实体的表示和消歧方法包括:对于存在歧义的命名实 体,通过“#命名实体本体类#”的方式进行消歧,“##”中间表示命名实体, 所述命名实体包括人名,地名,机构名,品牌名,产品型号,上下位词;

在本体资源描述文件和实例资源描述文件中对“##”表示的命名实体进行 进一步的描述,所述命名实体包括实体的具体类别、本体的属性、实例的属性 值。

进一步的,知识中表情、数学、超文本符号和时间的表示方法包括:

使用“:)表情的拼音首字母缩写)”表示表情;

对时间的表示方法如下:

年月日:YYYY年MM月DD日;

时分秒:HH时MM分SS秒;

星期:周一,周二,周三,周四,周五,周六,周日;

其它:今日,明日,昨日。

本发明还提供一种中文问答系统,所述系统使用上述的知识标记语言的表 示方法,

所述系统包括:

问题输入模块,用于输入用户提出的问题;

问题提交模块,用于提交用户输入的问题;

问题归一化处理模块,用于对提交的问题进行问题归一化处理;

搜索模块,用于搜索知识并进行问题匹配,获得与问题相匹配的答案;

处理答案模块,用于处理答案中的语义表达式,生成答案,并将结果返回 至问答系统界面,若不存在与问题相匹配的答案,则直接将结果返回至问答系 统界面;

查找链接模块,用于在问答系统界面显示的结果中查找链接,若返回的结 果中不存在链接,则将结果显示在问答系统界面;

答案转换模块,用于将结果中的链接转换为HTML组件。

进一步的,采用问题归一化处理模块对问题归一化处理的步骤如下:

S11、删除问句中的HTML标签;

S12、将emoli表情符号转换为所述标记语言的表情;

S13、将中文数字和数学运算归一化为通用数学符号表示;

S14、将各种格式的时间归一化为所述标记语言的时间表示,

采用处理答案模块处理答案中的语义表达式的步骤如下:

S21、分析答案个数;

S22、优选答案,获得合适的答案;

S23、获取引用知识的答案;

S24、嵌入引用知识的答案并替换步骤S22中的答案,若不存在引用知识的 答案,则直接替换答案中的变量;

S25、将答案中的链接缓存在会话上下文中,若步骤S22中没有找到合适的 答案,则根据各答案的条件生成反问句,将答案中的链接缓存在会话上下文中,

其中,从所述步骤S23到步骤S21之间建立递归调用算法,

采用答案转换模块将答案中的链接转换为HTML组件的步骤包括:

步骤S31、分析返回的答案中的链接;

步骤S32、将答案中的链接转换为HTML组件,并添加点击提问的事件,获 得最终答案,若答案中不存在链接,则直接获得最终答案。

本发明的中文问答系统知识标记语言的表示方法及中文问答系统,其具有 如下优点:

(1)便于计算机对知识的识别和理解;

(2)使用模板简化了知识的维护工作量;

(3)支持知识间的链接和引用;

(4)使用关键词和语序相关语义表达式降低了知识被错误匹配的概率;

(5)使用同义词语义表达式提高了知识的识别率;

(6)使用答案变量支持答案的动态生成;

(7)通过在标准问题上扩展相似问题,支持相同语义的多个问法;

(8)使用随机答案提高了问题系统与用户交互的趣味性和人性化;

(9)使用条件答案、问题链接来引导和支持用户进行多轮对话。

附图说明

为了更清楚地说明本发明的技术方案,下面将对实施例或现有技术描述中 所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提 下,还可以根据这些附图获得其它附图。

图1是本发明中问答过程中对知识标记语言的处理示意图;

图2是本发明中问题归一化处理的示例图;

图3是本发明中处理答案中的语义表达式的示例图;

图4是本发明中将答案中的链接转换为HTML组件的示例图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

一种中文问答系统知识标记语言的表示方法,该方法包括:知识的基本表 示;知识的语义表示;知识模板的表示和实例化;知识的引用与关联;知识中 命名实体的表示和消歧;知识中表情、数学、超文本符号和时间的表示。

以上表示方法的详细描述如下:

知识的唯一ID和基本表示:知识主要由ID、参数和知识体构成。知识的 ID使用“<实例名_属性名>”表示,此ID全局唯一。紧跟ID后面的“{}”内 部为具体的知识体定义,知识体包括问题和答案两个通用知识域,问题域在先, 以“<#q>”开头,答案域在后,以“<#a>”开头。知识中的注释以“//”开头 到本行行尾,如果是多行注释,每行都要以“//”开头。例如,知识“北京户 口的办理条件”的基本表示如下:

<户口_办理条件>//知识ID

{//知识体开始标记

<#q>户口的办理条件是什么?//知识域:问题

<#a>申请人未违反人口和计划生育法律法规和相关政策规定。//知识域:

答案

}//知识体结束标记

知识的语义表示:简单的知识是普通的一问一答语句。对简单的问句,可以 将其组织成一排有序的语义表达式词块来增强语义的表达。词块之间以单个空 格分隔,简单词块是句子的分词,复杂词块是通过在分词上添加语义表达式标 记构成。所述复杂词块包括关键词、同义词和语序相关。关键词使用“[]”表 示,一条语句的所有关键词可以唯一确定该语句的语义,例如“请问[打印机] 的[保修][条件]是什么”,[打印机][保修][条件]三个关键词确定了 这条语句的语义。在“[]”内部,可以对关键词进行同义词扩展,同义词之间 使用英文半角“,”隔开,非关键词无需进行同义词扩展。如果关键词语序与语 句的语义强相关(语序如果发生变化,会改变语句的语义),则使用“{}”将这些 语序相关的关键词包括起来。另外,在答案内部,可以使用答案变量来表示变 化的内容,答案变量的表示方法是“${变量名}”,例如“公司的电话是${联系 电话},现有员工${员工数}人”。对同一条知识,通常有多个不同的问法,还可 能有多个正确的答案。在问题域和答案域中,多个问题或答案之间用“<|>”隔 开。如果问题域中有多个问题,则第一个问题为标准问题,后续问题为扩展问 题(即标准问题的其它问法)。如果答案域中多个答案,则第一个答案为标准答 案,后续答案为扩展答案,每个答案都正确,在无特定条件限制时问答系统随 机给出答案。同一个问题,在特定条件限制下,可能有特定的答案,对于这类 答案,通过“[]”表示特定条件,通过“:”表示条件及其答案之间的分隔符, 当无法确定提问满足的条件时,问答系统应该支持反问或者枚举。例如,对于 如下知识:

<北京户口_办理地点>

{

<#q>去哪办理北京户口<|>北京户口在哪办理

<#a>[海淀]:到海淀公安分局办理。<|>[昌平]:到昌平公安分局办 理。

}

当用户提问“去哪办理北京户口”时,如果问答系统获知用户的地理位置是 “海淀”,则回答“到海淀公安分局办理。”;如果不能获知用户的地理位置或用 户的地理位置不在条件中,则给出反问“您想问的是:海淀、昌平”或回答“海 淀:到海淀公安分局办理。昌平:到昌平公安分局办理”。

知识模板的表示和实例化:知识模板的表示方法是在知识的表示方法基础 上增加了对模板参数的表示。知识模板的ID使用“<实例名_属性名|模板参数 1,模板参数2,...>”表示,多个模板参数之间使用英文半角“,”隔开。在实例 名、属性名和知识体中,使用“%模板参数名%”表示对模板参数的引用。下面 以“办理条件”模板为例,来说明知识模板的表示:

<%X%_办理条件|X,Y>

{

<#q>%X%的办理条件是什么<|>办理%X%的条件是什么

<#a>申请人未违反%Y%和相关政策规定。

}

通过对上面的知识模板参数赋值,令X=户口,Y=人口和计划生育法律法规, 得到“户口办理条件”知识,表示方法如下:

<户口_办理条件>

(<%X%_办理条件|X=户口,Y=人口和计划生育法律法规>)

{

<#a>${super.a}还需要满足当地的规定要求。

}

上面的表示方法中,在ID和知识体之间,用“()”括起来的部分表示对模 板的继承和对模板参数的实例化。如果新的知识没有将模板中所有的参数都实 例化,或者又引入了新的模板参数,则新的知识依然为模板,并在ID中列出需 要实例化的模板参数。从模板派生的知识,继承了原模板的问答域和答案域, 并能进行改写,在改写时,能通过“${super.q}”和“${super.a}”分别引用 原问题和答案。

知识的引用与关联:在答案域中,通过“%{知识ID}”能引用其它的知识的 答案。如果用户提问的知识中引用了其它知识,则在生成答案时,结合上下文 嵌入所引知识的答案。在答案域中,通过“{标签:知识ID}”能链接其它知识 的问题。问答系统在显示答案时,如果答案中包含链接,则将链接的标签展示 给用户,用户点击链接,问答系统给所链接知识的答案。例如:知识“<中科 汇联_介绍>”引用了知识“<中科汇联_联系方式>”,链接了知识“<爱客服_ 介绍>”,表示方法如下:

<中科汇联_介绍>

{

<#q>中科汇联的介绍

<#a>中科汇联是一家致力于计算机软件开发、管理咨询与服务的高新技 术企业,%{中科汇联_联系方式},它的智能客服机器人产品是{爱客服:爱 客服_介绍}。

}

知识中命名实体的表示和消歧:对于存在歧义的命名实体,通过“#命名实 体本体类#”的方式进行消歧。“##”中间表示命名实体,包括但不限于:人名, 地名,机构名,品牌名,产品型号,上下位词等。如“#苹果公司#”表示此处 的苹果是苹果公司而不是苹果水果。可以在本体资源描述文件和实例资源描述 文件中对“##”表示的命名实体进行进一步的描述,包括但不限于实体的具体 类别(是本体类还是实例)、本体的属性、实例的属性值。

知识中表情、数学、超文本符号和时间的表示:使用“:)表情的拼音首字母 缩写)”表示表情,例如闭嘴:)bz)、害羞:)hx)。本标记语言兼容通用数学符号, 答案域兼容HTML5规范(例如HTML超链接)。另外,对时间的表示方法如下:

年月日:YYYY年MM月DD日(例如2015年07月11日);

时分秒:HH时MM分SS秒(例如14时00分00秒);

星期:周一,周二,周三,周四,周五,周六,周日;

其它:今日,明日,昨日。

问答系统对真实用户提问进行归一化处理,删除问句中的HTML标签,将中 文数字和数学运算归一化为通用数学符号表示,并将各种格式的时间归一化为 上述时间表示。

在一个实施例中,本发明还提供一种中文问答系统,所述系统使用上述的 知识标记语言的表示方法。请参阅图1至图4,图1是本发明中问答过程中对知 识标记语言的处理示意图;图2是本发明中问题归一化处理的示例图;图3是 本发明中处理答案中的语义表达式的示例图;图4是本发明中将答案中的链接 转换为HTML组件的示例图。所述系统包括问题输入模块、问题提交模块、问题 归一化处理模块、搜索模块、处理答案模块、查找链接模块和答案转换模块。

所述问题输入模块,用于输入用户提出的问题;

所述问题提交模块,用于提交用户输入的问题;

所述问题归一化处理模块,用于对提交的问题进行问题归一化处理;

所述搜索模块,用于搜索知识并进行问题匹配,获得与问题相匹配的答案;

所述处理答案模块,用于处理答案中的语义表达式,生成答案,并将结果 返回至问答系统界面,若不存在与问题相匹配的答案,则直接将结果返回至问 答系统界面;

所述查找链接模块,用于在问答系统界面显示的结果中查找链接,若返回 的结果中不存在链接,则将结果显示在问答系统界面;

所述答案转换模块,用于将结果中的链接转换为HTML组件。

请参阅图2,如图2所示,采用问题归一化处理模块对问题归一化处理的步 骤如下:

S11、删除问句中的HTML标签;

S12、将emoli表情符号转换为所述标记语言的表情;

S13、将中文数字和数学运算归一化为通用数学符号表示;

S14、将各种格式的时间归一化为所述标记语言的时间表示,

请参阅图3,如图3所示,采用处理答案模块处理答案中的语义表达式的步 骤如下:

S21、分析答案个数;

S22、优选答案,获得合适的答案;

S23、获取引用知识的答案;

S24、嵌入引用知识的答案并替换步骤S22中的答案,若不存在引用知识的 答案,则直接替换答案中的变量;

S25、将答案中的链接缓存在会话上下文中,若步骤S22中没有找到合适的 答案,则根据各答案的条件生成反问句,将答案中的链接缓存在会话上下文中,

其中,从所述步骤S23到步骤S21之间建立递归调用算法。

请参阅图4,如图4所示,采用答案转换模块将答案中的链接转换为HTML 组件的步骤包括:

步骤S31、分析返回的答案中的链接;

步骤S32、将答案中的链接转换为HTML组件,并添加点击提问的事件,获 得最终答案,若答案中不存在链接,则直接获得最终答案。

本发明的中文问答系统知识标记语言的表示方法及中文问答系统,其具有 如下优点:

(1)便于计算机对知识的识别和理解;

(2)使用模板简化了知识的维护工作量;

(3)支持知识间的链接和引用;

(4)使用关键词和语序相关语义表达式降低了知识被错误匹配的概率;

(5)使用同义词语义表达式提高了知识的识别率;

(6)使用答案变量支持答案的动态生成;

(7)通过在标准问题上扩展相似问题,支持相同语义的多个问法;

(8)使用随机答案提高了问题系统与用户交互的趣味性和人性化;

(9)使用条件答案、问题链接来引导和支持用户进行多轮对话。

以上所揭露的仅为本发明的几种较佳实施例而已,当然不能以此来限定本 发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖 的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号