自然语言理解方法及系统的制作方法

文档序号:6637431阅读:243来源:国知局
自然语言理解方法及系统的制作方法
【专利摘要】本发明公开了一种自然语言理解方法及系统,该方法包括:预先构建排序模型;对待解析的自然语言信息进行语义解析,得到多个语义解析结果;提取所述语义解析结果的相关度特征;将所述相关度特征输入所述排序模型,得到所述排序模型输出的各语义解析结果的排序得分;根据排序得分选取其中的一个或多个语义解析结果作为自然语言理解的结果。利用本发明,可以有效提高自然语言理解的可靠性和准确性。
【专利说明】自然语言理解方法及系统

【技术领域】
[0001] 本发明涉及人工智能【技术领域】,具体涉及一种自然语言理解方法及系统。

【背景技术】
[0002] 自然语言作为人类表达自己思想最为方便、自然的方式,近年来,已逐渐成为人机 交互中最主流的方式。因自然语言的多样性、复杂性等特点,实现其准确地机器理解一直是 人工智能领域中研究的热点和难点。现有人机交互中自然语言理解的方法多为:系统首先 对用户自然语言输入进行分类,确定其语义场景类型,再在其语义场景下进行自然语言解 析,得到自然语言理解结果。该方法通过预先进行语义场景分类,然后再在各场景下解析得 到自然语言理解结果,在一定程度上解决了因自然语言多样、复杂而难以理解的问题,但其 理解结果准确性过于依赖预先语义场景判定的正误,对于多样、开放的用户自然语言信息 输入,在根据识别词是否匹配、识别词匹配数等信息进行语义场景类型判定时,可能会因为 用户表达不准确、语音识别不准确、自然语言本身存在多义和/或歧义等原因导致判定错 误,就会使整个系统进入无法逆转的错误。例如"北京遇上西雅图"是一部电影名称,作为 "电影"场景的识别词。"北京"、"西雅图"是城市名,可以作为"航班"场景的识别词。用户 想查询"北京遇上西雅图"这部电影,但对电影名称记得不准确,表达为"北京爱上西雅图"。 则无法匹配语义场景类型"电影"的识别词,匹配上语义场景类型"航班"中的识别词,从而 错误的确定语义场景类型为"航班",导致最终解析结果错误。同样,在单一语义场景下,对 进行自然语言解析,也可能会得到多个自然语言理解结果,而如何从中选出最准确的结果, 也是值得研究的一项课题。


【发明内容】

[0003] 本发明实施例提供一种自然语言理解方法及系统,以提高自然语言理解的可靠性 和准确性。
[0004] 为此,本发明实施例提供如下技术方案:
[0005] 一种自然语言理解方法,包括:
[0006] 预先构建排序模型;
[0007] 对待解析的自然语言信息进行语义解析,得到多个语义解析结果;
[0008] 提取所述语义解析结果的相关度特征;
[0009] 将所述相关度特征输入所述排序模型,得到所述排序模型输出的各语义解析结果 的排序得分;
[0010] 根据排序得分选取其中的一个或多个语义解析结果作为自然语言理解的结果。 [0011] 优选地,采用基于机器学习的排序方法训练得到排序模型,并在训练过程中将用 户查询字串的重要性通过加权方式加入到训练目标函数中。
[0012] 优选地,构建排序模型的过程包括:
[0013] 收集用户查询字串,并将所述查询字串作为训练数据;
[0014] 对所述训练数据进行业务标注,得到训练样本;
[0015] 对所述训练数据进行语义解析,得到语义解析结果;
[0016] 提取所述语义解析结果的相关度特征;
[0017] 利用所述训练样本及所述相关度特征训练得到排序模型。
[0018] 优选地,所述相关度特征包括以下特征中的一种或多种:语义解析结果所能理解 的词数、核心元素数、核心元素内容的热度;
[0019] 所述词数表示所述语义解析结果与其对应的训练数据针对同一语义场景共同出 现的词数;
[0020] 所述核心元素数表示所述语义解析结果与其对应的训练数据针对同一业务共同 出现的核心元素数;
[0021 ] 所述核心元素内容的热度表示核心元素内容在本场景下的热门程度。
[0022] 优选地,所述对待解析的自然语言信息进行语义解析,得到多个语义解析结果包 括:
[0023] 对待解析的自然语言信息分别在预先设定的多种不同语义场景下进行语义解析, 得到对应各语义场景的语义解析结果;
[0024] 所述方法还包括:
[0025] 在构建排序模型的过程中,在预先设定的多种不同语义场景下对所述训练数据进 行语义解析,得到对应各语义场景的语义解析结果;
[0026] 在排序模型训练过程中将语义场景类型的重要性通过加权方式加入到训练目标 函数中;
[0027] 所述相关度特征还包括:包含关系,所述包含关系表示所述语义解析结果与其它 业务类型的语义解析结果间的相互包含关系。
[0028] 优选地,在不同语义场景下采用相同或不同的方法对所述自然语言信息进行语义 解析。
[0029] 优选地,所述根据排序得分选取其中的一个或多个语义解析结果作为自然语言理 解的结果包括:
[0030] 依排序得分从高到低选择预设数量的语义解析结果作为自然语言理解的结果;或 者,
[0031] 选择排序得分大于预设阈值的语义解析结果作为自然语言理解的结果。
[0032] 优选地,所述自然语言信息为语音信息;所述方法还包括:
[0033] 在对所述自然语言信息进行语义解析之前,通过语音识别将所述自然语言信息转 换为文本信息。
[0034] 一种自然语言理解系统,包括:
[0035] 排序模型构建模块,用于预先构建排序模型;
[0036] 语义解析模块,用于对待解析的自然语言信息进行语义解析,得到多个语义解析 结果;
[0037] 特征提取模块,用于提取所述语义解析结果的相关度特征;
[0038] 排序模块,用于将所述相关度特征输入所述排序模型,得到所述排序模型输出的 各语义解析结果的排序得分;
[0039] 输出模块,用于根据排序得分选取其中的一个或多个语义解析结果作为自然语言 理解的结果。
[0040] 优选地,所述排序模型构建模块采用基于机器学习的排序方法训练得到排序模 型,并在训练过程中将用户查询字串的重要性通过加权方式加入到训练目标函数中。
[0041] 优选地,所述排序模型构建模块包括:
[0042] 训练数据获取单元,用于收集用户查询字串,并将所述用户查询字串作为训练数 据;
[0043] 标注单元,用于对所述训练数据进行业务标注,得到训练样本;
[0044] 语义解析单元,用于对所述训练数据进行语义解析,得到语义解析结果;
[0045] 特征提取单元,用于提取所述语义解析结果的相关度特征;
[0046] 训练单元,用于利用所述训练样本及所述相关度特征训练得到排序模型。
[0047] 优选地,所述语义解析模块,具体用于对待解析的自然语言信息分别在预先设定 的多种不同语义场景下进行语义解析,得到对应各语义场景的语义解析结果;
[0048] 相应地,所述语义解析单元,具体用于在预先设定的多种不同语义场景下对所述 训练数据进行语义解析,得到对应各语义场景的语义解析结果;
[0049] 相应地,所述排序模型构建模块在排序模型训练过程中还将语义场景类型的重要 性通过加权方式加入到训练目标函数中。
[0050] 优选地,所述语义解析模块在不同语义场景下采用相同或不同的方法对所述自然 语目息进行语义解析。
[0051] 优选地,所述输出模块,具体用于依排序得分从高到低选择预设数量的语义解析 结果作为自然语言理解的结果,或者选择排序得分大于预设阈值的语义解析结果作为自然 语言理解的结果。
[0052] 优选地,所述自然语言信息为语音信息;所述系统还包括:
[0053] 语音识别模块,用于在所述语义解析模块对所述自然语言信息进行语义解析之 前,通过语音识别将所述自然语言信息转换为文本信息。
[0054] 本发明实施例提供的自然语言理解方法及系统,对用户输入的自然语言进行解 析,得到多个语义解析结果,再根据排序学习对多个语义解析结果进行排序,进而得到自然 语言理解结果。
[0055] 进一步地,本发明方案解决了传统方法存在的因语义场景类型判断错误,进而使 整个自然语言理解系统进入无法挽回错误的问题,充分利用了语义解析结果信息,实现语 义结果选取,最终得到自然语言理解结果,大大提高了自然语言理解的可靠性和准确性。

【专利附图】

【附图说明】
[0056] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一 些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0057] 图IA是本发明实施例自然语言理解方法的一种流程图;
[0058] 图IB是本发明实施例自然语言理解方法的另一种流程图;
[0059] 图2是本发明实施例构建排序模型的一种流程图;
[0060] 图3是本发明实施例自然语言理解系统的一种结构示意图;
[0061] 图4是本发明实施例中排序模型构建模块的一种结构示意图。

【具体实施方式】
[0062] 为了使本【技术领域】的人员更好地理解本发明实施例的方案,下面结合附图和实施 方式对本发明实施例作进一步的详细说明。
[0063] 如图IA所示,是本发明实施例自然语言理解方法的一种流程图,包括以下步骤:
[0064] 步骤111,预先构建排序模型。
[0065] 本发明实施例的排序模型,利用机器学习的方法学习出参数权重,实现基于统计 的排序方法,对语义解析结果与用户输入的自然语言之间的相关度进行排序。
[0066] 步骤112,对待解析的自然语言信息进行语义解析,得到多个语义解析结果。
[0067] 需要说明的是,在实际应用中,所述自然语言信息可以是用户以文本输入的信息, 也可以是用户以语音形式输入的信息,当然还可以同时包含文本信息和语音信息。如果用 户所输入的自然语言信息中不仅有文本信息还有语音信息,或者所输入的自然语言信息均 为语音信息,则还需要通过语音识别技术先将语音信息转换为对应的文本信息。
[0068] 由于语义解析方式多种多样,因此,在实际应用中,可以采用一种或多种方式对所 述自然语言信息进行语义解析。比如,语义解析方式可以采用基于句法语义分析、基于文法 规则网络、敏感词匹配等任意解析方式中的一种或者多种,对此本发明实施例不做限定。而 且,每种解析方式可以取其中的一个或多个解析结果。
[0069] 步骤113,提取所述语义解析结果的相关度特征。
[0070] 所述语义解析结果的相关度特征用于反映该语义解析结果与进行本次语义解析 时对应的语义场景的相关度。所述相关度特征包括以下特征中的一种或多种:语义解析结 果所能理解的词数、核心元素数、核心元素内容的热度。其中:
[0071] 所述词数表示所述语义解析结果与所述自然语言信息针对同一语义场景共同出 现的词数;
[0072] 所述核心元素数表示所述语义解析结果与所述自然语言信息针对同一业务共同 出现的核心元素数;
[0073] 所述核心元素内容的热度表示核心元素内容在本场景下的热门程度。
[0074] 当然,还可以有其它用于反映语义解析结果与语义场景相关度的特征,对此本发 明实施例不做限定。
[0075] 步骤114,将所述相关度特征输入所述排序模型,得到所述排序模型输出的各语义 解析结果的排序得分。
[0076] 也就是说,排序模型的输入为上述提取的语义解析结果的相关度特征,输出是各 语义解析结果的排序得分。
[0077] 步骤115,根据排序得分选取其中的一个或多个语义解析结果作为自然语言理解 的结果。
[0078] 具体地,可以依排序得分从高到低选择预设数量的语义解析结果作为自然语言理 解的结果;或者选择排序得分大于预设阈值的语义解析结果作为自然语言理解的结果。
[0079] 本发明实施例中的排序模型可以采用包含大量用户实际说法的、覆盖多种意图和 参数组合的大规模训练数据通过离线训练得到,该大规模数据能较为真实地反映用户说法 在语义方面的特征,从而使得该排序模型能够全面、准确地体现各语义解析结果与不同场 景的相关度,有效地提高了自然语言理解的可靠性和准确性。
[0080] 需要说明的是,上述排序模型不仅可以应用于单一语义场景下对多个语义解析结 果的排序,而且同样适用于对多语义场景下的不同语义解析结果的排序。
[0081] 如图IB所示,是本发明实施例自然语言理解方法的另一种流程图,包括以下步 骤:
[0082] 步骤121,预先构建排序模型。
[0083] 本发明实施例的排序模型,利用机器学习的方法学习出参数权重,实现基于统计 的排序方法,对多场景语义解析结果与用户输入的自然语言之间的相关度进行排序。
[0084] 步骤122,对待解析的自然语言信息分别在预先设定的多种不同语义场景下进行 语义解析,得到对应各语义场景的语义解析结果。
[0085] 需要说明的是,在实际应用中,所述自然语言信息可以是用户以文本输入的信息, 也可以是用户以语音形式输入的信息,当然还可以同时包含文本信息和语音信息。如果用 户所输入的自然语言信息中不仅有文本信息还有语音信息,或者所输入的自然语言信息均 为语音信息,则还需要通过语音识别技术先将语音信息转换为对应的文本信息。
[0086] 在本发明实施例中,可以预先设置多种语义场景类型,以便能够对用户输入的自 然语言信息,在多个语义场景下进行全方位的语义解析,从而防止语义场景类型判断错误 而导致的语义解析错误。具体地,对用户输入的自然语言信息,可以在每种预设的语义场景 下分别进行语义解析,从而可以得到多个语义解析结果。其中,在每种语义场景下都可以得 到至少一种语义解析结果,当然该语义解析结果可以是匹配成功的语义解析结果也可以是 匹配失败的语义解析结果。每种语义场景对应的语义解析方式,可以由系统预先设定,也可 以由用户根据不同的应用需要来选择,对此本发明实施例不做限定。
[0087] 由于语义解析方式多种多样,在每种语义场景下可以采用相同或不同的语义解析 方式进行语义解析,其中,语义场景和语义解析方式之间的对应关系可以事先设定好,例如 以映射表的方式存在,也即,在某种特定的语义场景下可以采用事先选定的一种或多种语 义解析方式。其中,语义解析方式可以采用例如基于句法语义分析、基于文法规则网络、敏 感词匹配等任意解析方式中的一种或者多种,本发明实施例不做具体限定。
[0088] 以采用文法规则网络进行语义解析为例,在特定的语义场景下,可以对应多种文 法规则网络,即不同语句形式对应不同的文法规则网络,其中,文法规则网络优选采用基于 文法规则编译成的WFST(加权有限状态机)网络。具体地,语义解析可以是对自然语言信 息通过动态规划算法,对文法规则网络进行路径匹配解析,通过回溯匹配路径,得到相应的 语义信息。对于同时匹配若干路径的,取得分最高的一条路径作为语义解析结果。
[0089] 对应各语义场景的语义解析结果可以包括各语义场景解析成功的一个或多个解 析结果,可根据实际应用情况或经验决定。
[0090] 步骤123,提取所述语义解析结果的相关度特征。
[0091] 所述语义解析结果的相关度特征用于反映该语义解析结果与进行本次语义解析 时对应的语义场景的相关度。
[0092] 在该应用情况下,所述相关度特征不仅包括前面提到的以下特征中的一种或多 种:语义解析结果所能理解的词数、核心元素数、核心元素内容的热度,而且还可进一步包 括以下特征:包含关系。
[0093] 所述包含关系表示本业务类型的语义解析结果与其它业务类型的语义解析结果 间的包含关系。
[0094] 当然,还可以有其它用于反映语义解析结果与语义场景相关度的特征,对此本发 明实施例不做限定。
[0095] 步骤124,将所述相关度特征输入所述排序模型,得到所述排序模型输出的各语义 解析结果的排序得分。
[0096] 也就是说,排序模型的输入为上述提取的语义解析结果的相关度特征,输出是各 语义解析结果的排序得分。
[0097] 步骤125,根据排序得分选取其中的一个或多个语义解析结果作为自然语言理解 的结果。
[0098] 具体地,可以依排序得分从高到低选择预设数量的语义解析结果作为自然语言理 解的结果;或者选择排序得分大于预设阈值的语义解析结果作为自然语言理解的结果。 [0099] 可见,本发明实施例提供的自然语言理解方法,不对用户输入的自然语言信息预 先判定语义场景类型,而是对用户输入的自然语言在各语义场景下进行解析,得到多个语 义解析结果,再根据排序学习对多个语义解析结果进行排序,进而得到自然语言理解结果。 本发明方案解决了传统方法存在的因语义场景类型判断错误,进而使整个自然语言理解系 统进入无法挽回错误的问题,充分利用了多个语义场景下的语义解析结果,实现语义结果 选取,最终得到自然语言理解结果,大大提高了自然语言理解的可靠性和准确性。
[0100] 本发明实施例中的排序模型可以采用包含大量用户实际说法的、覆盖多种意图和 参数组合的大规模训练数据通过离线训练得到,该大规模数据能较为真实地反映用户说法 在语义方面的特征,从而使得该多场景语义解析排序模型能够全面、准确地体现各语义解 析结果与不同场景的相关度。
[0101] 需要说明的是,不论是单一语义场景下还是多语义场景下,排序模型的构建原理 及过程是类似的,具体可以采用基于机器学习的排序方法训练得到多场景语义解析排序模 型,并在训练过程中将用户查询字串的重要性通过加权方式加入到训练目标函数中,对于 多语义场景,还可进一步将语义场景类型的重要性通过加权方式加入到训练目标函数中。
[0102] 下面以多语义场景下的应用为例,说明排序模型的构建过程。
[0103] 如图2所示,是本发明实施例构建多场景语义解析排序模型的一种流程图,包括 以下步骤:
[0104] 步骤201,收集用户查询字串,并将所述用户查询字串作为训练数据。
[0105] 所述训练数据可以来源于海量的用户日志,能较为真实地反映用户说法在语义方 面的特征。
[0106] 步骤202,对所述训练数据进行业务标注,得到训练样本。
[0107] 具体可以通过人工或机器自动对每句训练数据(即用户查询字串)对应的业务信 息进行标注,例如,将"用英文说再见"标注为"翻译",将"上淘宝网站"标注为"网站"等。
[0108] 步骤203,在预先设定的多种不同语义场景下对所述训练数据进行语义解析,得到 对应各语义场景的语义解析结果。
[0109] 如果是针对单一语义场景下的应用,则只需在该单一语义场景下对所述训练数据 进行语义解析,得到多个语义解析结果。同样,在进行语义解析时,可以采用一种或多种方 式,对此本发明实施例不做限定。
[0110] 步骤204,提取所述语义解析结果的相关度特征。
[0111] 该相关度特征反映了语义解析结果与对应的语义场景的相关度,包括但不限于: 语义解析结果所能理解的词数、语义解析结果所能理解的核心元素数、语义解析结果核心 元素内容的热度、语义解析结果与其它业务类型的语义解析结果相互包含关系等。其提取 方法如下:
[0112] 1.语义解析结果所能理解的词数
[0113] 根据语义解析的结果,统计其与用户输入的自然语言信息共同出现的词数,也即 本语义场景类型语义所能理解的词数。
[0114] 例如,"从西安到北京的航班",导航业务类型能理解的词数为4( "从","西安", "到","北京"),而机票查询业务类型能理解的词数为5 ( "从","西安","到","北京","航 班")。在这一特征上,导航业务劣于机票查询业务。
[0115] 2.语义解析结果所能理解的核心元素数
[0116] 根据语义解析的结果,统计其与用户输入的自然语言信息共同出现的核心元素 数,也即本业务类型语义所能理解的核心元素数。其中,本业务类型的核心元素,可以根据 本业务下的海量数据离线统计和挖掘所得,也可根据先验知识人工补充得到。
[0117] 例如,"打开音乐播放器",音乐业务类型能理解的核心元素数为1( "音乐"),而软 件管家业务类型能理解的核心元素数为2 ( "打开","播放器")。在这一特征上,软件管家 业务要优于音乐业务。
[0118] 3.语义解析结果核心元素内容的热度
[0119] 根据语义解析的结果,统计其与用户输入的自然语言信息共同出现的核心元素, 然后统计这些核心元素内容的热度。其中,核心元素内容的热度,可以根据该场景相关的垂 直类页面相关条目的热度信息、相关条目在多个垂直站点中的分布数、用户查询数、相关条 目的时效性等综合分析计算得到。
[0120] 例如,"听天龙八部",听书业务类型中的"天龙八部"作为小说的热度为中,视频业 务类型中的"天龙八部"作为视频资源的热度为高。在本特征上,听书业务劣于视频业务,因 此也可看出,用户输入的自然语言信息最终的实际意图,并不由某一点或几点特征来决定, 还需要大量的其它信息综合分析。
[0121] 4.语义解析结果与其它业务类型的语义解析结果相互包含关系
[0122] 根据语义解析的结果,统计其与其它业务类型的语义解析结果间的相互包含关 系。具体来说,一些业务类型,比如短信业务、翻译业务、搜索业务等,它们的业务特性使得 其操作对象(比如短信的具体内容、翻译的具体内容、搜索的具体信息等)可以涵盖其它业 务类型。具体统计时可以根据文法规则匹配路径之间的关系或句法树之间的关系,来判断 是否有包含关系。
[0123] 例如,"翻译宫保鸡丁",菜谱业务类型的解析结果"宫保鸡丁"作为菜名,被翻译业 务类型的翻译内容所包含。又如,"百度我是歌手",视频业务中"我是歌手"作为视频名称, 被搜索业务的搜索内容所包含。在上述两个例子中,本特征上翻译业务优于菜谱业务,搜索 业务优于视频业务。
[0124] 需要说明的是:以上阐述的相关度特征,只是从语料在不同语义场景下的语义解 析结果中可以抽取的一部分特征,上述举例是为了更加详细和直观的说明,但在实际应用 中,所述相关度特征并不局限于此。比如,还可以将业务类型匹配结果元素的N-gram(n元 语法)、句法分析的概率等作为所述相关度特征中的一种特征。
[0125] 步骤205,利用所述训练样本及所述相关度特征训练得到排序模型。
[0126] 具体地,可以采用Learning To Rank(基于机器学习的排序方法,L2R)的方 式,选择合适的算法训练模型,例如Ranking SVM(基于支持向量机的排序学习算法)、 RankBoost、RankNet 等。
[0127] 如,采用基于pairwise (对方式)的Ranking SVM,其原因是:
[0128] 1.实际业务中各个业务类型之间的排序是弱排序,即,业务类型集合中并不是每 两个业务类型间都存在相关度的强弱排序。比如,"科大讯飞的股票",火车票查询业务和天 气查询业务之间就不存在针对此查询信息的相关度强弱排序关系。
[0129] 2.基于海量的用户日志,可以通过点击等用户行为记录,挖掘出大量pairwise的 业务间的相关度强弱关系,用于Ranking SVM中。
[0130] 与传统Ranking SVM算法训练模型不同的是,本发明实施例中,将不同业务类型 (即语义场景类型)的重要程度和不同用户查询的重要程度,通过加权的方式加入到训练 目标函数中,使得机器学习的离线模型训练更好地反映实际业务需求和提升用户体验。一 般越重要的业务类型及用户查询,其在目标函数中的权重越高,从而训练出的模型会倾向 于重要业务类型和重要用户查询的正确率。
[0131] 其中,不同业务类型的重要程度:可以利用用户日志进行挖掘,业务类型下的查询 信息数目,以及一段时间内该查询信息数目的上升值,计算出此业务的绝对重要程度;再根 据各个业务类型在绝对重要程度值的相对比例,计算出各个业务类型的重要程度。同时,也 可以人工配置业务类型的重要程度,以反映实际应用的需求。不同用户查询的重要程度: 首先将用户日志中的相同业务类型下的各个查询信息用文法规则或句法分析进行语义解 析,,对相同语义结构进行统计,计算出前N个语义解析结果的语义结构;再将此语义结构 中涉及查询内容的元素(如视频名、小说名)的内容进行统计,结合垂直数据的热门信息, 得到热门的用户查询信息,打上标识并加入到训练样本中。
[0132] 以Ranking SVM算法为例,使用linear kernel (线性核函数),那么pairwise Ranking SVM的损失函数是:

【权利要求】
1. 一种自然语言理解方法,其特征在于,包括: 预先构建排序模型; 对待解析的自然语言信息进行语义解析,得到多个语义解析结果; 提取所述语义解析结果的相关度特征; 将所述相关度特征输入所述排序模型,得到所述排序模型输出的各语义解析结果的排 序得分; 根据排序得分选取其中的一个或多个语义解析结果作为自然语言理解的结果。
2. 根据权利要求1所述的方法,其特征在于,采用基于机器学习的排序方法训练得到 排序模型,并在训练过程中将用户查询字串的重要性通过加权方式加入到训练目标函数 中。
3. 根据权利要求1所述的方法,其特征在于,构建排序模型的过程包括: 收集用户查询字串,并将所述查询字串作为训练数据; 对所述训练数据进行业务标注,得到训练样本; 对所述训练数据进行语义解析,得到语义解析结果; 提取所述语义解析结果的相关度特征; 利用所述训练样本及所述相关度特征训练得到排序模型。
4. 根据权利要求3所述的方法,其特征在于,所述相关度特征包括以下特征中的一种 或多种:语义解析结果所能理解的词数、核心元素数、核心元素内容的热度; 所述词数表示所述语义解析结果与其对应的训练数据针对同一语义场景共同出现的 词数; 所述核心元素数表示所述语义解析结果与其对应的训练数据针对同一业务共同出现 的核心元素数; 所述核心元素内容的热度表示核心元素内容在本场景下的热门程度。
5. 根据权利要求3所述的方法,其特征在于,所述对待解析的自然语言信息进行语义 解析,得到多个语义解析结果包括: 对待解析的自然语言信息分别在预先设定的多种不同语义场景下进行语义解析,得到 对应各语义场景的语义解析结果; 所述方法还包括: 在构建排序模型的过程中,在预先设定的多种不同语义场景下对所述训练数据进行语 义解析,得到对应各语义场景的语义解析结果; 在排序模型训练过程中将语义场景类型的重要性通过加权方式加入到训练目标函数 中; 所述相关度特征还包括:包含关系,所述包含关系表示所述语义解析结果与其它业务 类型的语义解析结果间的相互包含关系。
6. 根据权利要求5所述的方法,其特征在于,在不同语义场景下采用相同或不同的方 法对所述自然语言信息进行语义解析。
7. 根据权利要求1至6任一项所述的方法,其特征在于,所述根据排序得分选取其中的 一个或多个语义解析结果作为自然语言理解的结果包括: 依排序得分从高到低选择预设数量的语义解析结果作为自然语言理解的结果;或者, 选择排序得分大于预设阈值的语义解析结果作为自然语言理解的结果。
8. 根据权利要求1至6任一项所述的方法,其特征在于,所述自然语言信息为语音信 息;所述方法还包括: 在对所述自然语言信息进行语义解析之前,通过语音识别将所述自然语言信息转换为 文本信息。
9. 一种自然语言理解系统,其特征在于,包括: 排序模型构建模块,用于预先构建排序模型; 语义解析模块,用于对待解析的自然语言信息进行语义解析,得到多个语义解析结 果; 特征提取模块,用于提取所述语义解析结果的相关度特征; 排序模块,用于将所述相关度特征输入所述排序模型,得到所述排序模型输出的各语 义解析结果的排序得分; 输出模块,用于根据排序得分选取其中的一个或多个语义解析结果作为自然语言理解 的结果。
10. 根据权利要求9所述的系统,其特征在于,所述排序模型构建模块采用基于机器学 习的排序方法训练得到排序模型,并在训练过程中将用户查询字串的重要性通过加权方式 加入到训练目标函数中。
11. 根据权利要求9所述的系统,其特征在于,所述排序模型构建模块包括: 训练数据获取单元,用于收集用户查询字串,并将所述用户查询字串作为训练数据; 标注单元,用于对所述训练数据进行业务标注,得到训练样本; 语义解析单元,用于对所述训练数据进行语义解析,得到语义解析结果; 特征提取单元,用于提取所述语义解析结果的相关度特征; 训练单元,用于利用所述训练样本及所述相关度特征训练得到排序模型。
12. 根据权利要求11所述的系统,其特征在于, 所述语义解析模块,具体用于对待解析的自然语言信息分别在预先设定的多种不同语 义场景下进行语义解析,得到对应各语义场景的语义解析结果; 所述语义解析单元,具体用于在预先设定的多种不同语义场景下对所述训练数据进行 语义解析,得到对应各语义场景的语义解析结果;; 所述排序模型构建模块在排序模型训练过程中还将语义场景类型的重要性通过加权 方式加入到训练目标函数中。
13. 根据权利要求12所述的系统,其特征在于,所述语义解析模块在不同语义场景下 采用相同或不同的方法对所述自然语言信息进行语义解析。
14. 根据权利要求9至13任一项所述的系统,其特征在于, 所述输出模块,具体用于依排序得分从高到低选择预设数量的语义解析结果作为自然 语言理解的结果,或者选择排序得分大于预设阈值的语义解析结果作为自然语言理解的结 果。
15. 根据权利要求9至13任一项所述的系统,其特征在于,所述自然语言信息为语音信 息;所述系统还包括: 语音识别模块,用于在所述语义解析模块对所述自然语言信息进行语义解析之前,通 过语音识别将所述自然语言信息转换为文本信息。
【文档编号】G06F17/27GK104360994SQ201410735412
【公开日】2015年2月18日 申请日期:2014年12月4日 优先权日:2014年12月4日
【发明者】黄鑫, 陈志刚, 张丹, 胡国平, 胡郁, 刘庆峰 申请人:科大讯飞股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1