自然语言理解方法及装置、交通工具及介质

文档序号:170853 发布日期:2021-10-29 浏览:31次 >En<

阅读说明:本技术 自然语言理解方法及装置、交通工具及介质 (Natural language understanding method and device, vehicle and medium ) 是由 李晨延 赵耀 翁志伟 易晖 于 2021-07-07 设计创作,主要内容包括:本申请公开了一种自然语言理解方法,包括:接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本,在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本,将预测文本进行处理以得到第一理解结果,在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。可对用户的语音请求进行识别以及自然语言理解,同时,通过提前预测及NLU处理,可在超时等待的时间中提前完成NLU处理。本申请还公开了一种自然语言理解装置、交通工具和存储介质。(The application discloses a natural language understanding method, which comprises the following steps: the method comprises the steps of receiving a voice request, carrying out frame-by-frame identification on the voice request to obtain a frame text and an identification text, predicting the frame text by using a prediction model in the frame-by-frame identification process to obtain a predicted text, processing the predicted text to obtain a first understanding result, matching the identification text with the predicted text after the frame-by-frame identification process is finished, and outputting the first understanding result as a natural language understanding result of the voice request under the condition that the identification text is matched with the predicted text. The voice request of the user can be identified and natural language understanding can be carried out, and meanwhile, through the advance prediction and NLU processing, the NLU processing can be completed in advance in the time of overtime waiting. The application also discloses a natural language understanding device, a vehicle and a storage medium.)

自然语言理解方法及装置、交通工具及介质

技术领域

本申请涉及交通领域,特别涉及一种自然语言理解方法、自然语言理解装置、交通工具及计算机可读存储介质。

背景技术

随着自然语言理解(Natural Language Processing,NLU)技术的发展,对于输入的语音往往通过ASR技术框架逐帧识别并实时返回识别结果,在检测到句尾标识后,引入一个持续倾听等待超时机制,当等待超时结束后再对ASR识别结果进行NLU处理。这种传统的自然语言理解方法耗时较长,且与ASR无法高效并行。

发明内容

有鉴于此,本申请实施方式提供了一种自然语言理解方法、自然语言理解装置、交通工具及计算机可读存储介质。

本申请提供了一种自然语言理解方法,包括:

接收语音请求并对所述语音请求进行逐帧识别以得到帧文本和识别文本,所述识别文本为所述语音请求的全部帧的识别结果;

在所述逐帧识别过程中,利用预测模型对所述帧文本进行预测以得到预测文本,所述预测模型根据用户语言习惯训练得到;

将所述预测文本进行处理以得到第一理解结果;

在所述逐帧识别过程结束后,将所述识别文本与所述预测文本进行匹配,在所述识别文本和所述预测文本匹配的情况下,将所述第一理解结果作为所述语音请求的自然语言理解结果输出。

在某些实施方式中,所述将所述预测文本进行处理以得到第一理解结果前还包括:

判断所述帧文本是否满足预设的终止条件;

所述将所述预测文本进行处理以得到第一理解结果包括:

在满足所述预设的终止条件的情况下,将所述预测文本进行所述处理以得到所述第一理解结果。

在某些实施方式中,所述预测模型包括第一预测模型与至少一个第二预测模型,所述利用预测模型对所述帧文本进行预测以得到预测文本包括:

利用所述第一预测模型对所述帧文本进行预测以得到第一预测文本,所述第一预测模型基于包含用户语言习惯的第一数据训练生成;

利用所述至少一个第二预测模型对所述帧文本进行预测以得到第二预测文本,所述第二预测模型基于包含应用领域的第二数据训练深度学习模型生成;

根据所述第一预测文本及所述第二预测文本确定所述预测文本。

在某些实施方式中,所述第一数据包括包含所述用户语言习惯的预定时间内的语言数据,所述第一预测模型通过以下步骤生成包括:

获取所述语言数据以生成语料库并对所述语料库进行预处理;

根据预处理后的所述语料库生成用户字典;

根据所述用户字典生成频率分布表以得到所述第一预测模型;

所述利用所述第一预测模型对所述帧文本进行预测以得到第一预测文本包括:

根据所述帧文本将所述频率分布表中概率最大的输出结果确定为所述第一预测文本。

在某些实施方式中,所述预测模型还包括融合器,所述根据所述第一预测文本及所述第二预测文本确定所述预测文本包括:

利用所述融合器中预设的权重策略对所述第一预测文本及所述第二预测文本进行处理以确定所述预测文本。

在某些实施方式中,所述利用所述融合器中预设的权重策略对所述第一预测文本及所述第二预测文本进行处理以确定所述预测文本包括:

获取所述第一预测文本与所述第一预测文本在所述第一预测模型中的第一置信度,及所述第二预测文本与所述第二预测文本在所述第二预测模型中的第二置信度;

根据所述融合器的第一权重与第二权重、所述第一置信度与所述第二置信度确定所述预测文本,其中,所述第一权重预先根据所述第一预测模型的第一模型精度确定,所述第二权重预先根据所述第二预测模型的第二模型精度确定。

在某些实施方式中,所述利用所述融合器中预设的权重策略对所述第一预测文本及所述第二预测文本进行处理以确定所述预测文本还包括:

根据所述识别文本、所述第一预测文本及所述第二预测文本利用预设的权重更新公式对所述第一权重及第二权重进行优化并根据所述优化结果更新所述第一权重与所述第二权重;

将所述更新后的第一权重及所述更新后的第二权重分别进行归一化处理并以所述处理结果替换所述第一权重及所述第二权重。

在某些实施方式中,所述权重更新公式为:

其中,η表示学习率,pi表示所述第一权重或所述第二权重,γi表示所述第一预测文本或所述第二预测文本,ω表示所述识别文本,λ(γi,ω)表示所述识别文本与所述第一预测文本或与所述第二预测文本的向量距离。

本申请还提供了一种自然语言理解装置,包括:

识别模块,用于接收语音请求并对所述语音请求进行逐帧识别以得到帧文本和识别文本,所述识别文本为所述语音请求的全部帧的识别结果;

预测模块,用于在所述逐帧识别过程中,利用预测模型对所述帧文本进行预测以得到预测文本,所述预测模型根据用户语言习惯训练得到;

处理模块,用于将所述预测文本进行处理以得到第一理解结果;

匹配模块,用于在所述逐帧识别过程结束后,将所述识别文本与所述预测文本进行匹配,在所述识别文本和所述预测文本匹配的情况下,将所述第一理解结果作为所述语音请求的自然语言理解结果输出。

本申请还提供了一种交通工具,所述交通工具包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述任一项所述的自然语言理解方法。

本申请还提供一种非易失性计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,实现上述任一项实施例中所述的自然语言理解方法。

本申请通过接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本,识别文本为语音请求的全部帧的识别结果,在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本,预测模型根据用户语言习惯训练得到,将预测文本进行处理以得到第一理解结果,在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。可对用户的语音请求进行识别以及自然语言理解。同时,本申请在ASR识别过程中且识别未结束时,通过在先训练的预测模型对获取的帧文本进行预测得到预测文本,相当于提前预测识别文本,并对预测文本进行NLU处理,相较于传统的自然语言理解,需要等待ASR全部识别结束后并经过超时等待结束后再对ASR结果进行NLU处理,本申请通过提前预测及NLU处理,可在超时等待的时间中提前完成NLU处理。同时本申请在预测模型上进行了改进,相较于传统的语言统计模型,使用包含用户个人的语言习惯数据进行训练的预测模型,尤其对于有特殊语言习惯的用户,可针对其特殊性进行实时训练更新,有效地提高了预测的精准度,一定程度上实现了千人千面或私人订制的能力,针对不同用户输出个性化预测结果。

本申请实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请的上述和/或附加的方面和优点可以从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:

图1是本申请某些实施方式的自然语言理解方法的流程示意图;

图2是本申请某些实施方式的自然语言理解装置的模块示意图;

图3是本申请某些实施方式的自然语言理解方法的流程示意图;

图4是本申请某些实施方式的自然语言理解装置的流程示意图;

图5是本申请某些实施方式的自然语言理解装置的模块示意图;

图6是本申请某些实施方式的自然语言理解方法的流程示意图;

图7是本申请某些实施方式的自然语言理解方法的示例图;

图8是本申请某些实施方式的自然语言理解装置的流程示意图;

图9是本申请某些实施方式的自然语言理解装置的流程示意图;

图10是本申请某些实施方式的自然语言理解装置的流程示意图;

图11是本申请某些实施方式的自然语言理解装置的模块示意图。

具体实施方式

下面详细描述本申请的实施方式,实施方式的示例在附图中示出,其中,相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请的实施方式,而不能理解为对本申请的实施方式的限制。

请参阅图1,本申请提供了一种自然语言理解方法,包括:

01:接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本,识别文本为语音请求的全部帧的识别结果;

02:在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本,预测模型根据用户语言习惯训练得到;

03:将预测文本进行处理以得到第一理解结果;

04:在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。

相应地,请参阅图2,本申请实施方式还提供了一种自然语言理解装置100,本申请实施方式的自然语言理解方法可以由自然语言理解装置100实现。自然语言理解装置100包括识别模块110、预测模块120、处理模块130及匹配模块140。步骤01可以由识别模块110实现,步骤02可以由预测模块120实现,步骤03可以由处理模块130实现,步骤04可以由匹配模块140实现。或者说,识别模块110用于接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本。预测模块120用于在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本。处理模块130用于将预测文本进行处理以得到第一理解结果。匹配模块140用于在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。

本申请实施方式还提供了一种交通工具。交通工具包括存储器和处理器。存储器中存储有计算机程序,处理器用于接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本,在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本,将预测文本进行处理以得到第一理解结果,在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。

具体地,交通工具可包括电动车、汽车、飞行汽车、飞机、高速列车等可进行自然语言理解的交通工具。以下为便于描述,以车辆为例进行实施例展开。

具体地,在步骤01中,接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本。其中,语音请求可包括语音音频,如用户与车辆进行自然语言理解时发出的语音音频指令“打开空调”,或智能设备播放的音频等。

当接收到语音请求后,对语音请求如语音音频进行逐帧识别以得到帧文本和识别文本,识别文本为语音请求的全部帧的识别结果。其中,识别可通过自动语音识别技术(Automatic Speech Recognition,ASR)对语音音频进行逐帧识别。ASR对接收到的语音音频或声音进行逐帧识别,可以理解,声音分帧,也就是把声音切开成一小段一小段,每一小段称为一帧,使用移动窗函数来实现,各帧之间一般是有交叠的。ASR通过逐帧识别并在每一时刻返回起点帧至当前帧的识别结果即帧文本和识别文本。如,在T1时刻的逐帧识别的帧文本为:打,T2时刻:打开,T3时刻:打开空,T4时刻:打开空调。而当ASR识别到尾帧后,得到识别文本:打开空调。可知,帧文本可包括识别的以“字”为单位的文本,如声音“打开空调”中的“打”、“打开”或“打开空”。而识别文本包括语音请求的全部帧的识别结果如“打开空调”。

步骤02中,在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本,预测模型根据用户语言习惯训练得到。在逐帧识别过程中,即就是对音频识别已经开始但还未结束之前。过程的初始状态可包括已经得到包含数据的帧文本,或已经开始逐帧识别但还未得到帧文本,以及还未识别完全部帧得到识别结果之前。

在逐帧识别过程中,利用预测模型对得到的帧文本进行预测得到预测文本。其中,预测模型根据用户语言习惯训练得到,其中,包含用户语言习惯,在某些实施方式中,可包括使用车辆的用户的个人的用户语言习惯,如包含组词习惯、方言、语音顺序等。在某些实施方式中,还可包括特定时间的语言等。而用于训练的第一数据可包括个人用户真实的数据,如使用个人用户过去三个月的数据,每三个月更新一次数据从而更新一次对第一预测模型的训练。

预测模型可包括多个机器学习模型,如可利用GPT2,UNILM,BART等模型。并通过在先理解学习或利用相关数据进行训练。相关数据包含有用户个人的语言习惯。对帧文本进行预测包括对已经识别出的帧文本进行预测以得到帧文本的相关联的下一个文本内容如单词或字。

在一个例子中,接收到用户的语音“打”,进而识别出当前帧文本为“打”,通过预测模型预测到“打”的预测文本为“打开”、“打开空调”等。

在某些实施方式中,预测模型开始预测的时机可包括从识别开始进行,当识别到一个因素或一个字时即开始对识别到的字即帧文本进行预测。

在某些实施方式中,预测模型开始预测的时机也可包括从满足预设条件的帧文本开始预测,如当识别出两个字开始,或当识别完动词开始,而对未满足预设条件的帧文本不进行预测。可在一定程度上避免不必要的预测,提高预测的效率。

优选地,请参阅图3,在某些实施方式中,预测模型包括第一预测模型与至少一个第二预测模型,利用预测模型对帧文本进行预测以得到预测文本包括:

021:利用第一预测模型对帧文本进行预测以得到第一预测文本,第一预测模型基于包含用户语言习惯的第一数据训练生成;

022:利用至少一个第二预测模型对帧文本进行预测以得到第二预测文本,第二预测模型基于包含应用领域的第二数据训练深度学习模型生成;

023:根据第一预测文本及第二预测文本确定预测文本。

在某些实施方式中,步骤021-023可以由预测模块120来实现。或者说,预测模块120用于利用第一预测模型对帧文本进行预测以得到第一预测文本。

在某些实施方式中,处理器用于利用第一预测模型对帧文本进行预测以得到第一预测文本。

具体地,预测模型包括第一预测模型与至少一个第二预测模型。第一预测模型基于包含用户语言习惯的第一数据训练生成,第二预测模型基于包含应用领域的第二数据训练深度学习模型生成。其中,包含用户语言习惯,在某些实施方式中,可包括使用车辆的用户的个人的用户语言习惯,如包含组词习惯、方言、语音顺序等。在某些实施方式中,还可包括特定时间的语言等。而用于训练的第一数据可包括个人用户真实的数据,如使用个人用户过去三个月的数据,每三个月更新一次数据从而更新一次对第一预测模型的训练。

需要说明的是,第一预测模型使用的第一数据对个人用户数据进行脱敏处理以保护隐私,可在数据分析过程中,所有用户数据均进行脱敏处理,即用户ID均映射到特定数字,因此无法通过用户ID锁定到车,进而锁定到个人。另外,所有敏感词均经过离线过滤处理,确保上传的用户数据不存在个人身份信息或敏感信息。且用户数据仅保存在线上工作站,通过特定技术实现数据仅可于模型训练,定期删除,确保无法下载。

第一预测模型可基于语言统计模型如N-gram模型,并以第一数据进行定期训练。当接收到帧文本时,利用第一预测模型对帧文本进行预测以得到第一预测文本。

同时,第二预测模型基于包含应用领域的第二数据训练深度学习模型生成。其中,包含应用领域的第二数据包括所应用的技术领域的相关数据,如应用于车辆,则应用领域的第二数据可来自于所有用户与车辆进行自然语言理解的历史数据或模拟数据如“打开空调、打开广播、调低音量”,再例如,应用于高速列车,则应用领域的第二数据可来自于列车司机与列车的自然语言理解历史数据或模拟数据如“呼叫调度、打开闸门”等。第二数据相较于第一预测模型的第一数据包括用户的有限的历史数据,第二数据可基于海量的应用领域的训练数据,拥有大量的学习数据。第二数据可包括第一数据,也可不包括第一数据,二者并无相关性。

第二预测模型可基于海量的第二数据生成,如拥有大量参数的深度学习模型,深度学习模型具有强大的语言建模能力,如可基于大型的车辆语音语料,可以准确预测用户的语音指令。深度学习模型可包括Transformer结构为主的模型Transformer seq2seq、GPT2,UNILM,BART,MASS,LSTM或RNN等模型。第二预测模型可有一个或多个,多个第二预测模型时,可使用相同类型的模型,也可使用不同类型的模型。可以理解,多个第二预测模型相较于一个预测模型可在一定程度上提高预测模型的预测精准度,一个预测模型相较于多个第二预测模型可在平衡预测模型的预测精准度与预测时间。

在利用第二数据对第二预测模型进行训练时,可首先将数据中的语音指令随机切分成数据和标签,然后利用分词器将训练数据,标签转换成模型输入向量,将处理后的训练数据输入模型并通过计算相应的损失来优化模型参数。当接收到帧文本时,利用第二预测模型对帧文本进行预测以得到第二预测文本。第二预测文本与第一预测文本的输入均为相同的帧文本,第一预测文本为第一预测模型的输出,第二预测文本为第二预测模型的输出,不同预测模型输出的结果可能相同,也可能不同。

当得到第一预测文本及第二预测文本后,根据二者确定最终的预测文本。确定方式包括但不限于根据各预测模型的模型精度,选择较高模型精度的预测结果确定为最终的预测文本,或将多个预测模型进行加权融合处理。

如此,本实施方式的预测模型通过基于用户习惯语言的第一预测模型,以及基于海量应用领域的第二预测模型,并综合处理二者的预测结果确定为最终的预测文本。在一定程度上实现了根据不完整的帧文本进行预测以提前理解输入的不完整的语音。同时相较于传统的语言统计模型,使用第一预测模型基于用户个人的语言数据进行训练,尤其对于有特殊语言习惯的用户,可针对其特殊性进行实时训练更新,有效地提高了预测的精准度,一定程度上实现了千人千面或私人订制的能力,针对不同用户输出个性化预测结果。

优选地,请参阅图4,在某些实施方式中,第一数据包括包含用户语言习惯的预定时间内的语言数据,第一预测模型通过以下步骤生成:

001:获取语言数据以生成语料库并对语料库进行预处理;

002:根据预处理后的语料库生成用户字典;

003:根据用户字典生成频率分布表以得到第一预测模型;

相应地,步骤021包括:

0211:根据帧文本将频率分布表中概率最大的输出结果确定为第一预测文本。

请参阅图5,在某些实施方式中,自然语言理解装置100还包括训练模块150。步骤001-003可以由训练模块150来实现,步骤0211可以由预测模块120来实现。或者说,训练模块150用于获取语言数据以生成语料库并对语料库进行预处理,根据预处理后的语料库生成用户字典,根据用户字典生成频率分布表以得到第一预测模型。预测模块120用于根据帧文本将频率分布表中概率最大的输出结果确定为第一预测文本。

在某些实施方式中,处理器用于获取语言数据以生成语料库并对语料库进行预处理,根据预处理后的语料库生成用户字典,根据用户字典生成频率分布表以得到第一预测模型,及根据帧文本将频率分布表中概率最大的输出结果确定为第一预测文本。

具体地,第一数据包括包含用户语言习惯的预定时间内的语言数据。如获取三个月的预定时间内的用户个人的语音音频并根据语音音频生成语言数据,语言数据可包括语音音频的识别文本,生成时间等信息。

进一步地,根据获取的语言数据生成语料库。语料库可包括所有预定时间内收集的用户语音音频的识别文本相关的如拼音字符等、记录时间、固定时间内的识别文本出现的次数等信息。

当生成语料库后,对语料库进行预处理。其中,预处理包括但不限于筛选、去重等处理。如清洗语料库中的特殊字符等无用的字符,将语料库中重复的分词进行去重处理。

进一步地,根据预处理后的语料库创建用户字典。用户字典包括预定时间内的有效的用户个人语音音频的识别文本及相关信息。当用户字典创建后,利用用户字典构建频率分布表,频率分布表包括用户字典中的每个字符及其与其它字符相关联的频率。

在一个例子中,请参阅下图,图为一个频率分布表,可见“打”后面出现“空”的概率为p(空|打)=0.0028,“空”后面出现“调”的概率为p(调|空)=0.66。

在对帧文本进行预测时,帧文本作为输入,将频率分布表中概率最大的输出结果确定为第一预测文本。请再次参阅下图,当当前帧文本为“打开空”时,根据频率分布表,p(调|空)=0.66,p(气|空)=0.46,p(调|空)的概率大于p(气|空)的概率,则预测的第一预测文本可为“调”,补全为“打开空调”。

0.002 0.87 0.0028 0 0 0 0
0.0001 0.11 0.42 0.0011 0.152 0.231 0.0036
0 0.22 0 0.66 0.46 0 0
0 0.33 0.0023 0 0.0032 0 0
0 0.0017 0.041 0.101 0.0005 0.432 0
0.0001 0.0027 0 0 0.102 0 0
0.0036 0.22 0.089 0.101 0.1123 0.142 0

优选地,请参阅图6,在某些实施方式中,预测模型还包括融合器,步骤023包括:

0231:利用融合器中预设的权重策略对第一预测文本及第二预测文本进行处理以确定预测文本。

在某些实施方式中,步骤0231可以由预测模块120来实现。或者说,预测模块120用于利用融合器中预设的权重策略对第一预测文本及第二预测文本进行处理以确定预测文本。

在某些实施方式中,处理器用于利用融合器中预设的权重策略对第一预测文本及第二预测文本进行处理以确定预测文本。

具体地,预测模型中预设有融合器,融合器包括预设权重策略,对第一预测模型输出的第一预测文本以及第二预测模型输出的第二预测文本进行融合处理最终输出处理后的结果即为预测文本。其中权重策略包括对每个第一预测模型及第二预测模型设置不同的权重,将第一预测文本与第二预测文本分别进行权重的加权平均,最后将计算出的最优的第一预测文本或第二预测文本作为最终的预测文本。

本实施方式中的预测模型包括第一预测模型、第二预测模型及融合器。在训练模型阶段,使用包含应用领域的不用区分用户的海量的第二数据训练第二预测模型,可在一定程度上保证预测的有效性。使用包含用户语言习惯的第一数据训练第一预测模型,可在一定程度上保证预测的结果更贴近于用户语言习惯。同时,使用离线数据分析各预测模型的预测结果,与最终的真实结果进行对比分析,人工设置融合器中对应各预测模型的权重,或使用实时预测结果与真实结果的损失优化融合器中对应各预测模型的权重。

请参阅图7,图为一个预测模型的结构示例,用户发出语音请求,通过ASR进行逐帧识别,在识别过程中通过预测模型进行预测,最终输出预测文本,其中,预测模型包含一个第一预测模型、多个第二预测模型及融合器。

对于权重策略的确定方式,优选地,请参阅图8,在某些实施方式中,步骤0231包括:

02311:获取第一预测文本与第一预测文本在第一预测模型中的第一置信度,及第二预测文本与第二预测文本在第二预测模型中的第二置信度;

02312:根据融合器的第一权重与第二权重、第一置信度与第二置信度确定预测文本,其中,第一权重根据第一预测模型的第一模型精度确定,第二权重根据第二预测模型的第二模型精度确定。

在某些实施方式中,步骤02311和02312可以由预测模块120来实现。或者说,预测模块120用于获取第一预测文本与第一预测文本在第一预测模型中的第一置信度,及第二预测文本与第二预测文本在第二预测模型中的第二置信度,根据融合器的第一权重与第二权重、第一置信度与第二置信度确定预测文本,其中,第一权重根据第一预测模型的第一模型精度确定,第二权重根据第二预测模型的第二模型精度确定。

在某些实施方式中,处理器用于获取第一预测文本与第一预测文本在第一预测模型中的第一置信度,及第二预测文本与第二预测文本在第二预测模型中的第二置信度,根据融合器的第一权重与第二权重、第一置信度与第二置信度确定预测文本,其中,第一权重根据第一预测模型的第一模型精度确定,第二权重根据第二预测模型的第二模型精度确定。

具体地,对应于第一预测模型的第一权重根据第一预测模型的第一模型精度确定,对应于第二预测模型的第二权重根据第二预测模型的第二模型精度确定。其中,第一模型精度Acc(C1)与第二模型精度Acc(C2)根据离线分析各个预测模型的模型表现确定,以及根据后期预测准确度进行调整。模型预测准确度越高,其模型精度越高。而第一权重W1与第二权重W2可根据下列计算公式确定:

在一个例子中,第一模型精度Acc(C1)=0.8,第二模型精度Acc(C2)=0.7,则第一权重W1=0.8/(0.8+0.7)=0.53,第二权重W2=0.7/(0.8+0.7)=0.46。

预先确定好第一权重和第二权重后,当融合器接收到输入的第一预测文本及第二预测文本时,融合器获取第一预测文本与第一预测文本在第一预测模型中的第一置信度,及第二预测文本与第二预测文本在第二预测模型中的第二置信度。其中,第一置信度与第二置信度包括在频率分布表中的第一预测文本或第二预测文本中的包括的单词或字符所对应概率。

具体地,融合器获取当前时刻t,多个第一预测模型及第二预测模型C1,...,Cn的输出,即第一预测文本、第二预测文本的字符V1,...,Vn,以及对应的置信度P1,...,Pn。然后使用对应的权重W1,...,Wn分别乘以置信度P1,...,Pn,即Si=Pi*Wi,得到各字符V1,...,Vn对应的分数S1,...,Sn。进而从中选取最大分数Sm对应的单词Vm,作为当前时刻输出即最终的预测文本。

如此,通过定期或不定期离线分析各预测模型的模型表现及预测精准度,人工设置权重策略,可针对用户个人的语言习惯进行人工调整,从而得到更优的理解用户个人语言的预测模型。同时通过模型精度及置信度对分数进行计算从而选择最高分数的预测文本作为最终的预测结果,一定程度上简化了实现逻辑,提高了预测的速度。

优选地,请参阅图9,在某些实施方式中,步骤0231还包括:

02313:根据识别文本、第一预测文本及第二预测文本利用预设的权重更新公式对第一权重及第二权重进行优化并根据优化结果更新第一权重与第二权重;

02314:将更新后的第一权重及更新后的第二权重分别进行归一化处理并以处理结果替换第一权重及第二权重。

在某些实施方式中,步骤02313和02314可以由预测模块120来实现。或者说,预测模块120用于根据识别文本、第一预测文本及第二预测文本利用预设的权重更新公式对第一权重及第二权重进行优化并根据优化结果更新第一权重与第二权重,将更新后的第一权重及更新后的第二权重分别进行归一化处理并以处理结果替换第一权重及第二权重。

在某些实施方式中,处理器用于根据识别文本、第一预测文本及第二预测文本利用预设的权重更新公式对第一权重及第二权重进行优化并根据优化结果更新第一权重与第二权重,将更新后的第一权重及更新后的第二权重分别进行归一化处理并以处理结果替换第一权重及第二权重。

具体地,预先根据第一预测模型的第一模型精度确定第一权重,根据第二预测模型的第二模型精度确定第二权重。然后在预测时根据第一权重与第二权重、第一置信度与第二置信度确定预测文本,且最终得到真实的识别文本后,根据识别文本、第一预测文本及第二预测文本利用预设的权重更新公式对第一权重及第二权重进行优化并根据优化结果更新第一权重与第二权重。

可以理解,识别文本为真实结果,第一预测文本与第二预测文本为预测结果。相较于上述离线人工更新权重策略,本实施方式可通过预设的权重更新公式根据真实结果与预测结果之间的差异进行权重自动调整。其中,预设的权重更新公式可通过损失函数方式计算真实与预测结果之间的损失来优化输入的原始权重,得到优化后的权重,如可通过Aggregating专家算法等计算方法。

在某些实施方式中,第一权重与第二权重的初始值可为任意设置值,而无需根据第一模型精度与第二模型精度进行计算求解。因后期可根据真实结果进行优化更新,故基于简化计算的提高预测效率的,可将第一权重与第二权重的初始值设为任意值,如各预测模型的初始值为相同的权重值等。

进一步地,将更新后的第一权重及更新后的第二权重分别进行归一化处理并以处理结果替换第一权重及第二权重。因预测模型为多个第一预测模型及第二预测模型,最终更新的所有第一权重及第二权重之和可能不为1,则将更新后的所有权重进行归一化处理,如更新后的权重为Wi′,则通过如下归一化公式得到最终的权重:

对于更新公式,优选地,在某些实施方式中,权重更新公式包括:

其中,η表示学习率,pi表示所述第一权重或所述第二权重,γi表示所述第一预测文本或所述第二预测文本,ω表示所述识别文本,λ(γi,ω)表示所述识别文本与所述第一预测文本或与所述第二预测文本的向量距离。

λ(γi,ω)中第一预测文本或第二预测文本的文本内容可通过在融合器中预设的字向量库word2vec中获取到对应的向量值,从而可通过λ(γi,ω)表示识别文本与第一预测文本或与第二预测文本的向量距离。λ(γi,ω)的表达式可包括欧式距离、曼哈顿距离或切比雪夫距离等,此处不对具体表达式展开赘述。

在一个例子中,预测模型包括1个第一预测模型E1及2个第二预测模型E2、E3,预设学习率η=0.2,原始的权重为W1=0.4,W2=0.4,W3=0.2。输入帧文本为“打开空”,最终的识别文本为“打开空调”,ω为1,E1的第一预测文本为“打开空调”,E2的第二预测文本为“打开空气”,E3的第二预测文本为“打开空中”,γ1=1,γ2=0.7,γ3=0.2。λ(γi,ω)=(γi-ω)2,则经过上述权重更新公式gi(ω)的计算可得到更新后的:

g1(ω)=0.4*e-0.2*(1-1)2=0.4;

g2(ω)=0.4*e-0.2*(0.7-1)2=0.39;

g3(ω)=0.2*e-0.2*(0.2-1)2=0.18。

进一步地,当得到更新后的权重后,将更新后的第一权重及更新后的第二权重分别进行归一化处理。

g’1(ω)=0.4/(0.4+0.39+0.18)=0.41;

g’2(ω)=0.39/(0.4+0.39+0.18)=0.40;

g’3(ω)=0.18/(0.4+0.39+0.18)=0.19;

最终,将原来的权重W1=0.4,W2=0.4,W3=0.2更新为W1′=0.41,W2′=0.40,W3′=0.19。

如此,对最终获取的真实的识别文本与预测文本进行损失计算,并通过计算结果更新原来的权重,可使得融合器的权重策略可进行动态的自适应调整,在实时预测的过程中通过真实的结果实时优化各预测模型的权重以使得最终的预测结果的精准度更高。

优选地,请参阅图10,在某些实施方式中,将预测文本进行处理以得到第一理解结果前还包括:

05:判断帧文本是否满足预设的终止条件;

将预测文本进行处理以得到第一理解结果包括:

031:在满足预设的终止条件的情况下,将预测文本进行处理以得到第一理解结果。

请参阅图11,在某些实施方式中,自然语言理解装置100还包括判断模块160,步骤05可以由判断模块160来实现,步骤031可以由处理模块130来实现。或者说,判断模块160用于判断帧文本是否满足预设的终止条件,在满足预设的终止条件的情况下,处理模块130用于将预测文本进行处理以得到第一理解结果。

在某些实施方式中,处理器用于判断帧文本是否满足预设的终止条件,将识别文本与预测文本进行匹配包括,在满足预设的终止条件的情况下,将预测文本进行处理以得到第一理解结果。

具体地,当融合器对第一预测文本与第二预测文本进行权重处理后,可判断当前帧文本是否满足预设的终止条件,其中预设的终止条件包括但不限于是否出现预设的终止符,或是否达到预设的预测长度。即就是当前的预测是否可以停止。当终止符出现或已经达到预设的预测长度后,将预测文本进行处理以得到第一理解结果。

进一步地,在得到最终的预测文本后,步骤03中,将预测文本进行处理以得到第一理解结果。其中,对预测文本进行处理包括自然语言理解(Natural Language Processing,NLU)处理,包括通过人工智能的机器学习基于NER、句法分析、意图识别、语义槽填充等等环节理解预测文本中的语言内容。并得到的第一理解结果进行缓存等处理,等待最终逐帧识别过程结束。

步骤04中,在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。通过ASR对语音请求的逐帧识别过程结束后,可得到识别文本,将识别文本与预测文本进行匹配两者文本内容是否一致,或者说预测的结果是否与真实的ASR结果一致,当匹配结果为一致的情况下,将预测文本的第一理解结果作为最终的自然语言理解结果输出。而当匹配结果为不一致的情况下,或者说预测文本的内容与ASR结果不一致,预测结果不对,则忽略此次预测,将ASR的结果即识别文本进行NLU处理。

本申请实施方式还提供了一种计算机可读存储介质。一个或多个存储有计算机程序的非易失性计算机可读存储介质,当计算机程序被一个或多个处理器执行时,实现上述任一实施方式的自然语言理解方法。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的软件来完成。程序可存储于一非易失性计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。

如此,本申请通过接收语音请求并对语音请求进行逐帧识别以得到帧文本和识别文本,识别文本为语音请求的全部帧的识别结果,在逐帧识别过程中,利用预测模型对帧文本进行预测以得到预测文本,预测模型根据用户语言习惯训练得到,将预测文本进行处理以得到第一理解结果,在逐帧识别过程结束后,将识别文本与预测文本进行匹配,在识别文本和预测文本匹配的情况下,将第一理解结果作为语音请求的自然语言理解结果输出。至少具有以下有益效果:

一、可对用户的语音请求进行识别以及自然语言理解。

二、本申请在ASR识别过程中且识别未结束时,通过在先训练的预测模型对获取的帧文本进行预测得到预测文本,相当于提前预测识别文本,并对预测文本进行NLU处理,相较于传统的自然语言理解,需要等待ASR全部识别结束后并经过超时等待结束后再对ASR结果进行NLU处理,本申请通过提前预测及NLU处理,可在超时等待的时间中提前完成NLU处理。

三、进一步地,本申请对预测模型进行了改进,通过包含有用户语言习惯的第一预测模型,及包含有应用领域的海量训练数据的第二预测模型,以及将第一预测模型及第二预测模型进行权重融合处理以筛选出最优的预测结果。第二预测模型通过海量的训练数据在一定程度上保证了预测的有效性。同时,使用第一预测模型基于用户个人的语言数据进行训练,尤其对于有特殊语言习惯的用户,可针对其特殊性进行实时训练更新,有效地提高了预测的精准度,一定程度上实现了千人千面或私人订制的能力,针对不同用户输出个性化预测结果。

四、融合器通过定期或不定期离线分析各预测模型的模型表现及预测精准度,人工设置权重策略,可针对用户个人的语言习惯进行人工调整,从而得到更优的理解用户个人语言的预测模型。同时通过模型精度及置信度对分数进行计算从而选择最高分数的预测文本作为最终的预测结果,一定程度上简化了实现逻辑,提高了预测的速度。

五、融合器对最终获取的真实的识别文本与预测文本进行损失计算,并通过计算结果更新原来的权重,可使得融合器的权重策略可进行动态的自适应调整,在实时预测的过程中通过真实的结果实时优化各预测模型的权重以使得最终的预测结果的精准度更高。

在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。同时,参考术语“第一”、“第二”等的描述意在将同类或相似操作区别开来,“第一”与“第二”之间在某些实施方式中具有前后逻辑关系,在某些实施方式中并不一定具有逻辑或前后关系,需要根据实际实施例进行判定,不应该仅通过字面意思进行判定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

尽管上面已经示出和描述了本申请的实施方式,可以理解的是,上述实施方式是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施方式进行变化、修改、替换和变型。

27页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:地址确定方法、装置、电子设备及可读存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!