《自然语言对话方法及其系统.pdf》由会员分享,可在线阅读,更多相关《自然语言对话方法及其系统.pdf(56页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103077165 A (43)申请公布日 2013.05.01 CN 103077165 A *CN103077165A* (21)申请号 201210592232.1 (22)申请日 2012.12.31 G06F 17/28(2006.01) G06F 17/27(2006.01) (71)申请人 威盛电子股份有限公司 地址 中国台湾新北市 (72)发明人 张国峰 (74)专利代理机构 北京市柳沈律师事务所 11105 代理人 史新宏 (54) 发明名称 自然语言对话方法及其系统 (57) 摘要 一种自然语言对话方法及其系统, 此方法包 括下列步骤 : 接收第一。
2、语音输入, 并解析第一语 音输入中所包括的至少一特征语义, 而获得候选 列表, 其中候选列表具有至少一候选答案。 根据一 特性数据库, 自候选列表中选择候选答案中的其 中之一为回报答案, 并依据回报答案, 输出第一语 音应答。 接收其他多个语音输入, 根据其他多个语 音输入, 撷取用户喜好属性, 并将用户喜好属性储 存至特性数据库。 (51)Int.Cl. 权利要求书 2 页 说明书 36 页 附图 17 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书36页 附图17页 (10)申请公布号 CN 103077165 A CN 103077165 A *C。
3、N103077165A* 1/2 页 2 1. 一种自然语言对话系统, 包括 : 一特性数据库 ; 一语音取样模块, 接收一第一语音输入 ; 以及 一自然语言理解模块, 耦接于该特性数据库及该语音取样模块, 该自然语言理解模块 解析该第一语音输入中所包括的至少一特征语义, 而获得一候选列表, 其中该候选列表具 有至少一候选答案, 该自然语言理解模块依据一特性数据库, 自该候选列表中选择该至少 一候选答案中的其中之一为一回报答案, 且依据该回报答案, 输出一第一语音应答, 该语音 取样模块并接收其他多个语音输入, 该自然语言理解模块根据该其他多个语音输入, 撷取 用户喜好属性, 并将该用户喜好属。
4、性储存至该特性数据库。 2. 如权利要求 1 所述的自然语言对话系统, 其中该自然语言理解模块按照一优先顺序 排列该候选列表中的该至少一候选答案, 以及依据该优先顺序自该候选列表中选择该回报 答案。 3. 如权利要求 2 所述的自然语言对话系统, 还包括该自然语言理解模块依据该特性数 据库所储存的该用户喜好属性, 决定该至少一候选答案的该优先顺序, 该至少一候选答案 相关于一指引信息。 4. 如权利要求 2 所述的自然语言对话系统, 其中该特性数据库更储存用户习惯, 而该 自然语言理解模块依据该用户习惯, 以决定该至少一候选答案的该优先顺序, 该至少一候 选答案相关于一指引信息。 5. 如权利。
5、要求 2 所述的自然语言对话系统, 其中该特性数据库更储存众人使用习惯, 该自然语言理解模块依据该众人使用习惯, 以决定该至少一候选答案的该优先顺序, 该至 少一候选答案相关于一指引信息。 6. 如权利要求 2 所述的自然语言对话系统, 还包括 : 一自然语言数据库, 耦接至该自然语言理解模块, 根据该自然语言数据库, 该自然语言 理解模块查询该第一语音输入的该至少一特征语义在该自然语言数据库中所对应的一应 答信息, 以及选取具有与该应答信息符合的一指引信息的该至少一候选答案, 以做为该回 报答案。 7. 如权利要求 2 所述的自然语言对话系统, 该自然语言理解模块解析一第二语音输 入, 并获。
6、得至少一关键词汇, 其中该第二语音输入于该第一语音输入之前被该语音取样模 块接收, 以及该自然语言理解模块选取具有与该至少一关键词汇符合的一指引信息的该至 少一候选答案, 以做为该回报答案。 8. 如权利要求 1 所述的自然语言对话系统, 适用于一移动通讯装置。 9. 一种自然语言对话方法, 包括 : 接收一第一语音输入 ; 解析第一语音输入中所包括的至少一特征语义, 而获得一候选列表, 其中该候选列表 具有至少一候选答案 ; 依据一特性数据库, 自该候选列表中选择该至少一候选答案中的其中之一为一回报答 案 ; 依据该回报答案, 输出一第一语音应答 ; 接收其他多个语音输入 ; 权 利 要 求。
7、 书 CN 103077165 A 2 2/2 页 3 根据该其他多个语音输入, 撷取用户喜好属性 ; 以及 将该用户喜好属性储存至该特性数据库。 10. 如权利要求 9 所述的自然语言对话方法, 还包括 : 按照一优先顺序排列该候选列表中的该至少一候选答案 ; 以及 依据该优先顺序自该候选列表中选择该回报答案。 11. 如权利要求 10 所述的自然语言对话方法, 还包括 : 依据该特性数据库所储存的该用户喜好属性, 决定该至少一候选答案的该优先顺序, 其中该至少一候选答案相关于一指引信息。 12. 如权利要求 10 所述的自然语言对话系方法, 还包括 : 利用该特定数据库储存用户习惯 ; 以。
8、及 依据该用户习惯, 决定该至少一候选答案的该优先顺序, 其中该至少一候选答案相关 于一指引信息。 13. 如权利要求 10 所述的自然语言对话方法, 还包括 : 利用该特定数据库储存众人使用习惯 ; 以及 依据该众人使用习惯, 决定该至少一候选答案的该优先顺序, 其中该至少一候选答案 相关于一指引信息。 14. 如权利要求 10 所述的自然语言对话方法, 其中该至少一候选答案相关于一指引信 息, 以及在选择该回报答案的步骤包括 : 依照一自然语言数据库, 查询该第一语音输入的该至少一特征语义在该自然语言数据 库中所对应的一应答信息 ; 以及 选取具有与该应答信息符合的该指引信息的该至少一候选。
9、答案, 以做为该回报答案。 15. 如权利要求 10 所述的自然语言对话方法, 其中该至少一候选答案相关于一指引信 息, 以及选择该回报答案步骤还包括 : 解析一第二语音输入, 并获得至少一关键词汇, 其中该第二语音输入于该第一语音输 入之前输入 ; 以及 选取具有与该少一关键词汇符合的该指引信息的该至少一候选答案, 以做为该回报答 案。 16. 如权利要求 9 所述的自然语言对话系统, 适用于一移动通讯装置。 权 利 要 求 书 CN 103077165 A 3 1/36 页 4 自然语言对话方法及其系统 技术领域 0001 本发明涉及一种自然语言对话方法及其系统, 特别是涉及一种根据用户喜。
10、好及使 用习惯决定候选答案的自然语言对话方法及其系统。 背景技术 0002 在计算机的自然语言理解 (Nature Language Understanding) 中, 通常会使用特 定的语法来抓取用户的输入语句的意图或信息。因此, 若数据库中储存有足够多的用户输 入语句的数据, 便能做到合理的判断。 0003 在现有的作法中, 有一种是利用内置的固定词列表来抓取用户的输入语句, 而固 定词列表中包含了特定的意图或信息所使用的特定用语, 而用户需依照此特定用语来表达 其意图或信息, 其意图或信息才能被系统正确识别。 然而, 迫使用户去记住固定词列表的每 个特定用语是相当不人性化的作法。 例如 。
11、: 现有技术使用固定词列表的实施方式, 要求用户 在询问天气的时候必须说 :“上海 ( 或北京) 明天 (或后天) 天气如何? ” , 而若用户使用其他 比较自然的口语化表达也想询问天气状况时, 比如是 “上海明天怎么样啊? ” , 因为语句中 未出现 “天气” , 所以现有技术就会理解成 “上海有个叫明天的地方” , 这样显然没有抓到用 户的真正意图。另外, 用户所使用的语句种类是十分复杂的, 并且又时常有所变化, 甚至有 时用户可能会输入错误的语句, 在此情况下必须要藉由模糊匹配的方式来抓取用户的输入 语句。因此, 仅提供僵化输入规则的固定词列表所能达到的效果就更差了。 0004 此外, 。
12、当利用自然语言理解来处理多种类型的用户意图时, 有些相异的意图的语 法结构却是相同的, 例如当用户的输入语句为 “ 我要看三国演义 “, 其用户意图有可能是想 看三国演义的电影, 或是想看三国演义的书, 因此通常在此情况中, 便会匹配到两种可能意 图来让用户做选择。 然而, 在很多情况下, 提供不必要的可能意图来让用户做选择是十分多 余且没效率的。例如, 当用户的输入语句为 “ 我想看超级星光大道 “ 时, 将使用者的意图匹 配为看超级星光大道的书或者画作是十分没必要的 ( 因为超级星光大道是电视节目 )。 0005 再者, 一般而言, 在全文检索中所获得的搜寻结果是非结构化的数据。 非结构化。
13、数 据内的信息是分散且不具关联的, 例如, 在 google 或百度等搜寻引擎输入关键字后, 所获 得的网页搜寻结果就是非结构化数据, 因为搜寻结果必须通过人为的逐项阅读才能找到当 中的有用信息, 而这样的作法不仅浪费用户的时间, 而且可能漏失想要的信息, 所以在实用 性上会受到很大的限制。 发明内容 0006 本发明提出一种自然语言对话系统, 包括一特性数据库、 一语音取样模块及一自 然语言理解模块, 其中自然语言理解模块耦接于特性数据库及语音取样模块。语音取样模 块接收一第一语音输入, 随后由自然语言理解模块解析第一语音输入中所包括的至少一特 征语义并获得一候选列表, 其中候选列表具有至少。
14、一候选答案 ; 自然语言理解模块依据一 特性数据库, 自候选列表中选择至少一候选答案中的其中之一为一回报答案, 且依据回报 说 明 书 CN 103077165 A 4 2/36 页 5 答案输出一第一语音应答, 语音取样模块并接收其他多个语音输入, 自然语言理解模块再 从中撷取用户喜好属性, 并将用户喜好属性储存至特性数据库。 0007 本发明提出一种自然语言对话方法, 包括下列步骤 : 接收一第一语音输入 ; 解析 第一语音输入中所包括的至少一特征语义并获得一候选列表, 其中候选列表具有至少一候 选答案 ; 依据一特性数据库自候选列表中选择至少一候选答案中的其中之一为一回报答 案 ; 依据。
15、回报答案输出一第一语音应答 ; 接收其他多个语音输入 ; 根据其他多个语音输入 撷取用户喜好属性 ; 以及将用户喜好属性储存至特性数据库。 0008 基于上述, 本发明提出一种自然语言对话方法及其系统, 自然语言对话系统还可 依据众人使用习惯、 用户喜好、 用户习惯或用户所说的前后对话等等方式, 来优先选出较适 当的回报答案, 据以输出语音应答予用户, 藉以增进用户与自然语言对话系统进行对话时 的便利性。 0009 为使本发明的上述特征和优点能更明显易懂, 下文特举实施例, 并结合附图详细 说明如下。 附图说明 0010 图 1 为根据本发明的一实施例的自然语言理解系统的方块图。 0011 图。
16、 2 为根据本发明的一实施例的自然语言处理器对用户的各种请求信息的分析 结果的示意图。 0012 图 3A 是根据本发明的一实施例的结构化数据库所储存的具有特定数据结构的多 个记录的示意图。 0013 图 3B 是根据本发明的另一实施例的结构化数据库所储存的具有特定数据结构的 多个记录的示意图。 0014 图 3C 是根据本发明的另一实施例的指引数据储存装置所储存的指引数据的架构 示意图。 0015 图 4A 为根据本发明的一实施例的检索方法的流程图。 0016 图 4B 为根据本发明的另一实施例的自然语言理解系统工作过程的流程图。 0017 图 5A 是依照本发明一实施例所绘示的自然语言对话。
17、系统的方块图。 0018 图 5B 是依照本发明一实施例所绘示的自然语言理解模块的方块图。 0019 图 5C 是依照本发明另一实施例所绘示的自然语言对话系统的方块图。 0020 图 6 是依照本发明一实施例所绘示的修正语音应答的方法流程图。 0021 图 7A 是依照本发明一实施例所绘示的自然语言对话系统的方块图。 0022 图 7B 是依照本发明另一实施例所绘示的自然语言对话系统的方块图。 0023 图 8 是依照本发明一实施例所绘示的自然语言对话方法流程图。 0024 图 9 为依据本发明一实施例的移动终端装置的系统示意图。 0025 图 10 为依据本发明一实施例的信息系统的系统示意图。
18、。 0026 图 11 为依据本发明一实施例的基于语音识别的选择方法的流程图。 0027 图 12 是依照本发明一实施例所绘示的语音操控系统的方块图。 0028 图 13 所示是语音操控系统的方块图。 0029 图 14 是依照本发明一实施例所绘示的语音操控方法的流程图。 说 明 书 CN 103077165 A 5 3/36 页 6 0030 附图符号说明 0031 100 : 自然语言理解系统 0032 102、 505、 705 : 请求信息 0033 104 : 分析结果 0034 106 : 可能意图语法数据 0035 108 : 关键字 0036 110 : 回应结果 0037 1。
19、12 : 意图数据 0038 114 : 确定意图语法数据 0039 116 : 分析结果输出模块 0040 200 : 检索系统 0041 220 : 结构化数据库 0042 240 : 搜寻引擎 0043 260 : 检索接口单元 0044 280 : 指引数据储存装置 0045 300 : 自然语言处理器 0046 302 : 记录 0047 304 : 标题栏 0048 306 : 内容栏 0049 308 : 分栏 0050 310 : 指引栏 0051 312 : 数值栏 0052 314 : 来源栏 0053 316 : 热度栏 0054 400 : 知识辅助理解模块 0055 。
20、500、 500 、 700、 700 : 自然语言对话系统 0056 501、 701 : 语音输入 0057 503、 703 : 解析结果 0058 507、 707 : 语音应答 0059 509、 709 : 特征语义 0060 510、 710 : 语音取样模块 0061 511、 711 : 候选列表 0062 520、 520 、 720、 720 : 自然语言理解模块 0063 522、 722 : 语音识别模块 0064 524、 724 : 自然语言处理模块 0065 526、 726 : 语音合成模块 0066 702 : 语音综合处理模块 0067 730 : 特性数。
21、据库 0068 740 : 自然语言数据库 说 明 书 CN 103077165 A 6 4/36 页 7 0069 900、 1010 : 移动终端装置 0070 910、 1011 : 语音接收单元 0071 920、 1013 : 数据处理单元 0072 930、 1015 : 显示单元 0073 940 : 存储单元 0074 1000 : 信息系统 0075 1020 : 伺服器 0076 SP1 : 第一语音 0077 SP2 : 第二语音 0078 1200、 1300 : 语音操控系统 0079 1210 : 辅助启动装置 0080 1212、 1222 : 无线传输模块 00。
22、81 1214 : 触发模块 0082 1216 : 无线充电电池 0083 12162 : 电池单元 0084 12164 : 无线充电模块 0085 1220、 1320 : 移动终端装置 0086 1221 : 语音系统 0087 1224 : 语音取样模块 0088 1226 : 语音合成模块 0089 1227 : 语音输出接口 0090 1228 : 通讯模块 0091 1230 : ( 云端 ) 伺服器 0092 1232 : 语音理解模块 0093 12322 : 语音识别模块 0094 12324 : 语音处理模块 具体实施方式 0095 由于现有运用固定词列表的实施方式只能。
23、提供僵化的输入规则, 对于用户多变的 输入语句的判断能力十分不足, 所以常导致对用户的意图判断错误而找不到所需的信息、 或是因为判断力不足而输出不必要的信息给用户等问题。此外, 现有的搜寻引擎只能对用 户提供分散、 且相关不强的搜寻结果, 于是用户还要花时间逐条检视才能过滤出所需信息, 不仅浪费时间而且可能漏失所需信息。 本发明即针对现有技术的前述问题提出一结构化数 据的检索方法与系统, 在结构化数据提供特定的栏位来储存不同类型的数据元素, 俾提供 用户使用自然语音输入信息进行检索时, 能快速且正确地判断用户的意图, 进而提供所需 信息予用户、 或提供更精确讯息供其选取。 0096 图 1 为。
24、根据本发明的一实施例的自然语言理解系统的方块图。如图 1 所示, 自然 语言理解系统 100 包括检索系统 200、 自然语言处理器 300 以及知识辅助理解模块 400, 知 识辅助理解模块 400 耦接自然语言处理器 300 以及检索系统 200, 检索系统 200 还包括结 说 明 书 CN 103077165 A 7 5/36 页 8 构化数据库 220、 搜寻引擎 240 以及检索接口单元 260, 其中搜寻引擎 240 耦接结构化数据 库 220 以及检索接口单元 260。在本实施例中, 检索系统 200 包括有检索接口单元 260, 但 非以限定本发明, 某些实施例中可能没有检索。
25、接口单元 260, 而以其他方式使搜寻引擎 240 对结构化数据库 220 进行全文检索。 0097 当用户对自然语言理解系统 100 发出请求信息 102 时, 自然语言处理器 300 可分 析请求信息 102, 并在将所分析的可能意图语法数据 106 送往知识辅助理解模块 400, 其中 可能意图语法数据 106 包含关键字 108 与意图数据 112。随后, 知识辅助理解模块 400 取出 可能意图语法数据 106 中的关键字 108 并送往检索系统 200 并将意图数据 112 储存在知识 辅助理解模块 400 内部, 而检索系统 200 中的搜寻引擎 240 将依据关键字 108 对。
26、结构化数 据库 220 进行全文检索之后, 再将全文检索的回应结果 110 回传至知识辅助理解模块 400。 接着, 知识辅助理解模块 400 依据回应结果 110 对所储存的意图数据 112 进行比对, 并将所 求得的确定意图语法数据114送往分析结果输出模块106, 而分析结果输出模块116再依据 确定意图语法数据 114, 传送分析结果 104 至伺服器, 随后在查询到用户所需的数据后将其 送给用户。 0098 上述的分析结果输出模块 116 可视情况与其他模块相结合, 例如在一实施例中可 并入知识辅助理解模块 400 中、 或是在另一实施例中分离于自然语言理解系统 100 而位于 伺服。
27、器 ( 包含自然语言理解系统 100 者 ) 中, 于是伺服器将直接接收意图语法数据 114 再 进行处理。此外, 知识辅助理解模块 400 可将意图数据 112 储存在模块内部的储存装置中、 在自然语言理解系统 100 中、 伺服器中 ( 包含自然语言理解系统 100 者 )、 或是在任何可供 知识辅助理解模块 400 可以撷取到的储存器中, 本发明对此并不加以限定。再者, 自然语言 理解系统100包括检索系统200、 自然语言处理器300以及知识辅助理解模块400可以用硬 件、 软件、 固件、 或是上述方式的各种结合方式来构筑, 本发明亦未对此进行限制。 0099 前述自然语言理解系统 1。
28、00 可以位于云端伺服器中, 也可以位于区域网路中的伺 服器, 甚或是位于个人计算机、 移动计算机装置 ( 如笔记型计算机 ) 或移动通讯装置 ( 如手 机)等。 自然语言理解系统100或检索系统200中的各构件也不一定需设置在同一机器中, 而可视实际需要分散在不同装置或系统通过各种不同的通讯协定来连结。例如, 自然语言 理解处理器 300 及知识辅助理解模块 400 可配置于同一智能型手机内, 而检索系统 200 可 配置在另一云端伺服器中 ; 或者是, 检索接口单元 260、 自然语言理解处理器 300 及知识辅 助理解模块 400 可配置于同一笔记型计算机内, 而搜寻引擎 240 及结构。
29、化数据库 220 可配 置于区域网路中的另一伺服器中。此外, 当自然语言理解系统 100 皆位于伺服器时 ( 不论 是云端伺服器或区域网路伺服器 ), 可以将检索系统 200、 自然语言理解处理器 300、 以及知 识辅助理解模块 400 配置不同的计算机主机中, 并由伺服器主系统来统筹其相互间的讯息 与数据的传送。当然, 检索系统 200、 自然语言理解处理器 300、 以及知识辅助理解模块 400 亦可视实际需求而将其中两者或全部合并在一计算机主机中, 本发明并不对这部分的配置 进行限制。 0100 在本发明的实施例中, 用户可以用各种方式来向自然语言处理器 300 发出请求信 息, 例如。
30、用说话的语音输入或是文字描述等方式来发出请求信息。 举例来说, 若自然语言理 解系统100是位于云端或区域网路中的伺服器(未显示)内, 则用户可先藉由移动装置(例 如手机、 PDA、 平板计算机或类似系统 ) 来输入请求信息 102, 接着再通过电信系统业者来将 说 明 书 CN 103077165 A 8 6/36 页 9 请求信息102传送至伺服器中的自然语言理解系统100, 来让自然语言处理器300进行请求 信息102的分析, 最后伺服器于确认用户意图后, 再通过分析结果输出模块116将对应的分 析结果 104 通过伺服器的处理后, 将用户所请求的信息传回用户的移动装置。举例来说, 请 。
31、求信息 102 可以是用户希望藉由自然语言理解系统 100 来求得答案的问题 ( 例如 “ 明天上 海的天气怎么样啊 “), 而自然语言理解系统 100 在分析出用户的意图是查询上海明天的天 气时, 将通过分析结果输出模块 116 将所查询的天气数据作为输出结果 104 送给用户。此 外, 若用户对自然语言理解系统 100 所下的指令为 “ 我要看让子弹飞 “、 “ 我想听一起走过 的日子 “ 时, 因为 “让子弹飞” 或 “一起走过的日子” 可能包含不同的领域, 所以自然语言处 理器300会将用户的请求信息102分析成一个或一个以上的可能意图语法数据106, 此可能 意图语法数据106包括有。
32、关键字108及意图数据112, 然后再经由对检索系统220中的结构 化数据 240 进行全文检索后, 进而确认用户的意图。 0101 进一步来说, 当用户的请求信息 102 为 “ 明天上海怎么样啊 ?“ 时, 自然语言处理 器 300 经过分析后, 可产生一个可能意图语法数据 106 : 0102 “,= 上海 ,= 明天 “。 0103 在一实施例中, 如果自然语言理解系统 100 认为用户的意图已相当明确, 便可以 直接将用户的意图 ( 亦即查询明天上海的天气 ) 通过分析结果输出模块 116 输出分析结果 104 至伺服器, 而伺服器可在查询到用户所指定的天气候传送给用户。又例如, 当。
33、用户的请 求信息 102 为 “ 我要看三国演义 “ 时, 自然语言处理器 300 经过分析后, 可产生出三个可能 意图语法数据 106 : 0104 “,= 三国演义 “ ; 0105 “,= 三国演义 “ ; 以及 0106 “,= 三国演义 “。 0107 这是因为可能意图语法数据 106 中的关键字 108( 亦即 “三国演义” ) 可能属于不 同的领域, 亦即书籍 ()、 电视剧 ()、 以及电影 () 三个领 域, 所以一个请求信息 102 可分析成多个可能意图语法数据 106, 因此需要通过知识辅助理 解模块 400 做进一步分析, 来确认用户的意图。再举另一个例子来说, 若用户。
34、输入 “ 我要看 让子弹飞 “ 时, 因其中的 “ 让子弹飞 “ 有可能是电影名称或是书名称, 所以也可能出现至少 以下两个可能意图语法数据 106 : 0108 “,= 让子弹飞 “ ; 以及 0109 “,= 让子弹飞 “ ; 0110 其分别属于书籍与电影两个领域。上述的可能意图语法数据 106 随后需通过知识 辅助理解模块 400 做进一步分析, 并从中求得确定意图语法数据 114, 来表达用户的请求信 息的明确意图。当知识辅助理解模块 400 分析可能意图语法数据 106 时, 知识辅助理解模 块 400 可通过检索接口 206 传送关键字 108( 例如上述的 “三国演义” 或 “。
35、让子弹飞” ) 给检 索系统 200。检索系统 200 中的结构化数据库 220 储存了具有特定数据结构的多个记录, 而搜寻引擎 240 能藉由检索接口单元 260 所接收的关键字 108 来对结构化数据库 220 进行 全文检索, 并将全文检索所获得的回应结果回传给知识辅助理解模块 400, 随后知识辅助理 解模块 400 便能藉由此回应结果 110 来求得确定意图语法数据 114。至于对结构化数据库 220 进行全文检索以确定意图语法数据 114 的细节, 将在后面通过图 3A、 图 3B 与相关段落 说 明 书 CN 103077165 A 9 7/36 页 10 做更详细的描述。 01。
36、11 在本发明的概念中, 自然语言理解系统 100 能先撷取用户的请求信息 102 中的关 键字 108, 并藉由结构化数据库 220 的全文检索结果来判别关键字 108 的领域属性, 例如上 述输入 “我要看三国演义” 时, 会产生分别属于书籍、 电视剧、 电影三个领域的可能意图语法 数据106, 随后再进一步分析并确认用户的明确意图。 因此用户能够很轻松地以口语化方式 来表达出其意图或信息, 而不需要特别熟记特定用语, 例如现有作法中关于固定词列表的 特定用语。 0112 图2为根据本发明的一实施例的自然语言处理器300对用户的各种请求信息的分 析结果的示意图。 0113 如图 2 所示,。
37、 当用户的请求信息 102 为 “ 明天上海的天气怎么样啊 “ 时, 自然语言 处理器 300 经过分析后, 可产生出可能意图语法数据 106 为 : 0114 “,= 上海 ,= 明天 “ 0115 其 中 意 图 数 据 112 为 “、 而 关 键 字 108 为 “ 上 海 “ 与 “ 明 天 “。由于经自然语言处理器 300 的分析后只取得一组意图语法数据 106( 查询天气 ), 因此在一实施例中, 知识辅助理解模块400可直接取出关键字108“上海 “ 与 “ 明天 “ 作为分析结果 104 送往伺服器来查询天气的信息 ( 例如查询明天上海天气概 况、 包含气象、 气温等信息 )。
38、, 而不需要对结构化数据库 220 进行全文检索来判定用户意 图。当然, 在一实施例中, 仍可对结构化数据库 220 进行全文检索做更精确的用户意图判 定, 本领域技术人员可依据实际需求进行变更。 0116 此外, 当用户的请求信息 102 为 “ 我要看让子弹飞 “ 时, 因为可产生出两个可能意 图语法数据 106: 0117 “,= 让子弹飞 “ ; 以及 0118 “,= 让子弹飞 “ ; 0119 与两个对应的意图数据 112“ 与 “、 以及两个相同的关 键字 108“ 让子弹飞 “, 来表示其意图可能是看 “ 让子弹飞 “ 的书籍或是看 “ 让子弹飞 “ 的 电影。为进一步确认用户。
39、的意图, 将通过知识辅助理解模块 400 传送关键字 108“ 让子弹飞 “ 给检索接口单元 260, 接着搜寻引擎 240 便藉由此关键字 108“ 让子弹飞 “ 来对结构化数 据库 220 进行全文检索, 以确认 “ 让子弹飞 “ 应该是书名称或是电影名称, 藉以确认用户的 意图。 0120 再者, 当用户的请求信息 102 为 “ 我想听一起走过的日子 “ 时, 可产生出两个可能 意图语法数据 106 : 0121 “,= 一起走过 ,= 日子 “ ; “,= 一起走过的日子 “ 0122 两个对应的相同的意图数据 112“、 以及两组对应的关键字 108“ 一 起走过 “ 与 “ 日子。
40、 “ 及 “ 一起走过的日子 “, 来分别表示其意图可能是听歌手 “ 一起走过 “ 所唱的歌曲 “ 日子 “、 或是听歌曲 “ 一起走过的日子 “, 此时知识辅助理解模块 400 可传送 第一组关键字 108“ 一起走过 “ 与 “ 日子 “ 以及第二组关键字 “ 一起走过的日子 “ 给检索 接口单元 260, 来确认是否有 “ 一起走过 “ 这位歌手来唱的 “ 日子 “ 这首歌 ( 第一组关键字 所隐含的用户意图)、 或是否有“一起走过的日子“这首歌(第二组关键字所隐含的用户意 说 明 书 CN 103077165 A 10 8/36 页 11 图 ), 藉以确认用户的意图。然而, 本发明并。
41、不限于在此所表示的各可能意图语法数据与意 图数据所对应的格式与名称。 0123 图 3A 是根据本发明的一实施例的结构化数据库 220 所储存的具有特定数据结构 的多个记录的示意图。 0124 一般而言, 在一些现有的全文检索作法中, 所获得的搜寻结果是非结构化的数据 (例如通过google或百度所搜寻的结果), 因其搜寻结果的各项信息是分散且不具关联的, 所以用户必须再对各项信息逐一检视, 因此造成实用性的限制。然而, 在本发明的概念中, 能藉由结构化数据库来有效增进检索的效率与正确性。 因为本发明所揭示的结构化数据库 中的每个记录内部所包含的数值数据相互间具有关联性, 且这些数值数据共同用。
42、以表达来 自用户的请求信息对该记录的意图。于是在搜寻引擎对结构化数据库进行一全文检索时, 可在记录的数值数据被匹配时, 输出对应于该数值数据的指引数据以确认该请求信息的意 图。这部分的实施细节将通过下列实例作更进一步的描述。 0125 在本发明的实施例中, 结构化数据库 220 所储存的每个记录 302 包括标题栏 304 及内容栏 306, 标题栏 304 内包括多个分栏 308, 各分栏包括指引栏 310 以及数值栏 312, 所 述多个记录302的指引栏310用以储存指引数据, 而所述多个记录302的数值栏用312以储 存数值数据。在此以图 3A 所示的记录 1 来举例说明, 记录 1 。
43、的标题栏 304 中的各分栏 308 分别储存了 : 0126 “singerguid : 刘德华 “、 0127 “songnameguid : 一起走过的日子 “ ; 及 “songtypeguid : 港台, 粤语, 流行 “ ; 0128 各分栏 308 的指引栏 310 分别储存了指引数据 “singerguid“、 “songnameguid“ 及 “songtypeguid“、 而其对应分栏 308 的数值栏 312 则分别储存了数值数据 “ 刘德华 “、 “ 一 起走过的日子 “ 及 “ 港台, 粤语, 流行 “。指引数据 “singerguid“ 代表数值数据 “ 刘德华 “。
44、 的领域种类为歌手名称(singer), 指引数据“songnameguid“代表数值数据“一起走过的日 子“的领域种类为歌曲名称(song), 指引数据“songtypeguid“代表数值数据“港台, 粤语, 流行 “ 的领域种类为歌曲类型 (song type)。在此的各指引数据实际上可分别用不同的特 定一串数字或字符来表示, 在本发明中不以此为限。记录 1 的内容栏 306 则是储存了 “ 一 起走过的日子“这首歌的歌词内容或储存其他的数据(例如作曲/词者等), 然而各记录 的内容栏 306 中的真实数据并非本发明所强调的重点, 因此在图 3A 中仅示意性地来描述。 0129 前述的实施。
45、例中, 每个记录包括标题栏 304 及内容栏 306, 且标题栏 304 内的分栏 308 包括指引栏 310 以及数值栏 312, 但非以限定本发明, 某些实施例中也可以没有内容栏 306, 甚或是有些实施例中可以没有指引栏 310。 0130 除此之外, 在本发明的实施例中, 于各分栏 308 的数据间储存有第一特殊字符来 分隔各分栏 308 的数据, 于指引栏 310 与该数值栏 312 的数据间储存有第二特殊字符来 分隔指引栏与数值栏的数据。举例来说, 如图 3A 所示, “singerguid“ 与 “ 刘德华 “ 之间、 “songnameguid“ 与 “ 一起走过的日子 “ 之。
46、间、 以及 “songtypeguid“ 与 “ 港台, 粤语, 流行 “ 之间是利用第二特殊字符 “ : “ 来做分隔, 而记录 1 的各分栏 308 间是利用第一特殊字符 “|来做分隔, 然而本发明并不限于以 “ : “ 或 “|来做为用以分隔的特殊字符。 0131 另一方面, 在本发明的实施例中, 标题栏 304 中的各分栏 308 可具有固定位数, 例 如各分栏 308 的固定位数可以是 32 个字符, 而其中的指引栏 310 的固定位数可以是 7 或 说 明 书 CN 103077165 A 11 9/36 页 12 8 个位 ( 最多用来指引 128 或 256 种不同的指引数据 。
47、), 此外, 因第一特殊字符与第二特殊 字符所需要的位数可以是固定的, 所以分栏 308 的固定位数在扣除指引栏 310、 第一特殊字 符、 第二特殊字符所占去的位数后, 剩下的位数便可悉数用来储存数值栏 312 的数值数据。 再者, 由于分栏 308 的位数固定, 加上分栏 308 储存数据的内容可如图 3A 所示依序为指引 栏310(指引数据的指标)、 第一特殊字符、 数值栏312的数值数据、 第二特殊字符, 而且如前 所述, 这四个数据的位数量也是固定的, 于是在实作上可跳过指引栏310的位(例如跳过前 7 或 8 个位 )、 以及第二特殊字符的位数 ( 例如再跳过 1 个字符, 亦即 。
48、8 个位 ) 后, 再扣掉第 一特殊字符所占的位数 ( 例如最后 1 个字符、 8 个位 ) 之后, 最后便可直接取得数值栏 312 的数值数据 ( 例如在记录 1 的第一个分栏 308 中直接取出数值数据 “刘德华” ), 接着再进 行所需的领域种类判断即可。于是, 在目前所取出的数值数据比对完毕后 ( 不论是否比对 成功与否), 可以再依据上述取出数值数据的方式取出下一个分栏308的数值数据(例如在 记录 1 的第二个分栏 308 中直接取出数值数据 “一起走过的日子” ), 来进行比对领域种类 的比对。上述取出数值数据的方式可以从记录 1 开始进行比对, 并在比对完记录 1 所有的 数值。
49、数据后, 再取出记录 2 的标题栏 308 中第一个分栏 308 的数值数据 ( 例如 “冯小刚” ) 进行比对。上述比对程序将持续进行, 直到所有记录的数值数据都被比对过为止。 0132 应注意的是, 上述的分栏 308 的位数、 以及指引栏 310、 第一特殊字符、 第二特殊字 符个使用的位数可依实际应用改变, 本发明对此并未加以限制。前述利用比对来取出数值 数据的方式只是一种实施例, 但非用以限定本发明, 另一实施例可以使用全文检索的方式 来进行。此外, 上述跳过指引栏 310、 第二特殊字符、 第一特殊字符的实作方式, 可以使用位 平移(例如除法)来达成, 此部分的实施可以用硬件、 软件、 或两者搭配的方式进行, 本领域 技术人员可。