信息识别方法、装置、电子设备及存储介质与流程
本申请涉及信息处理领域,具体而言,涉及一种信息识别方法、装置、电子设备及存储介质。
背景技术:
以网约车场景为例,为了进一步保证乘客的乘车安全,一般可以获取乘客在乘车过程中与司机之间的对话来判断司机和乘客之间是否产生矛盾,但是由于在乘车过程中获取到司机和乘客的对话通常参杂有其他的一些杂音,如司机在行程过程中开启了导航,导航会产生导航播放音,或者司机若在放歌或者在听广播,这些额外的声音也会参杂在司机和乘客的对话中,所以为了获取司机和乘客之间的对话来分析司机和乘客之间是否产生矛盾,需要将这些杂音进行剔除。
目前是采用模板匹配的方式来识别这些杂音,例如,若要识别其中的导航音,则需预先人工配置大量的导航音模板,若模板量不足,可能无法对有的导航音进行正确匹配,准确率不高,并且在匹配时需将获取的数据与大量的模板进行逐个匹配,耗时太长,效率太低。
技术实现要素:
有鉴于此,本申请实施例的目的在于提供一种信息识别方法、装置、电子设备及存储介质,以提高信息识别的准确性和效率。
第一方面,本申请实施例提供了一种信息识别方法,所述方法包括:获取多个待识别文本信息;获取每个待识别文本信息为目标类型的文本信息的概率值,共获得多个概率值,所述目标类型的文本信息为除服务提供方在提供服务过程中与服务请求方之间产生的交互信息以外的信息;将每个概率值与预设概率值进行比对,获得比对结果;根据所述比对结果确定所述多个待识别文本信息中属于所述目标类型的目标待识别文本信息。
在上述实现过程中,可以通过获取每个待识别文本信息为目标类型的文本信息的概率值,然后将每个概率值与预设概率值进行比对,根据获得的比对结果确定多个待识别文本信息中属于目标类型的目标待识别文本信息,相比于现有技术中通过大量不同的模板去进行匹配准确率较低且耗时较长的问题,本方案可以有效提高信息识别的准确率和效率。
可选地,获取每个待识别文本信息为目标类型的文本信息的概率值,包括:通过预设语言模型获取每个待识别文本信息为目标类型的文本信息的概率值,所述预设语言模型为预先将所述目标类型的多个训练文本信息输入语言模型进行训练获得的。
在上述实现过程中,由于预设语言模块是对语言模型通过目标类型的多个训练文本信息进行训练获得的,所以,预设语言模型可以有效识别出多个待识别文本信息中为目标类型的文本信息。
可选地,通过预设语言模型获取每个待识别文本信息为目标类型的文本信息的概率值,包括:通过预设语言模型提取每个待识别文本信息中的m个字,m为大于等于2的整数;预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值,i为大于等于1且小于m的整数;基于每个待识别文本信息对应的m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值。
在上述实现过程中,通过预设语言模型获取每个待识别文本信息对应的m个概率值,然后基于该m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值,所以,预设语言模型可以有效识别出多个待识别文本信息中为目标类型的文本信息。
可选地,预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值,包括:通过所述预设语言模型中的softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
在上述实现过程中,由于softmax分类器具有较好的分类预测效果,所以,通过预设语言模型中的softmax分类器获取每个字对应的概率值,可以获得较为准确的预测结果。
可选地,通过所述预设语言模型中的softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值,包括:通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为数值向量,获得第i个字对应的第i个数值向量;通过所述语言模型中的注意力模块获取所述m个字中第i个字与其他m-1个字之间的相似度作为所述第i个字的权重;将所述第i个字的权重与所述第i个字对应的第i个数值向量进行加权,获得所述第i个字加权后的数值向量;将所述第i个字加权后的数值向量输入所述softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
在上述实现过程中,通过将每个字转换为数值向量后,再获取每个字对应的权重,然后将两者进行加权后再输入至softmax分类器进行概率预测,可以使得预设语言模型关注不同的上下文,提高了预设语言模型的表达能力,进而提高了预测效果的准确性。
可选地,通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为数值向量,获得第i个字对应的第i个数值向量,包括:通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为第一数值向量,且将第i个字对应的第i个拼音转换为第二数值向量;将所述第一数值向量与所述第二数值向量进行拼接获得第i个字对应的第i个数值向量。
在上述实现过程中,通过获得每个字的拼音对应的数值向量,再将汉字的数值向量与拼音的数值向量进行拼接后获得的数值向量进行后续的计算,以此可提供更多的数据识别依据,可以为后续对目标类型的文本信息进行有效识别。
可选地,获取多个待识别文本信息之前,还包括:获取属于目标类型的多个训练文本信息;将所述目标类型的多个训练文本信息输入语言模型中进行训练,获得训练后的预设语言模型以及所述预设语言模型输出的预设概率值。
在上述实现过程中,通过预先对语言模型进行训练,获得预设语言模型,从而可以对目标类型的文本信息进行有效识别。
第二方面,本申请实施例提供了一种信息识别装置,所述装置包括:
文本信息获取模块,用于获取多个待识别文本信息;
概率值获取模块,用于获取每个待识别文本信息为目标类型的文本信息的概率值,共获得多个概率值,所述目标类型的文本信息为除服务提供方在提供服务过程中与服务请求方之间产生的交互信息以外的信息;
比对模块,用于将每个概率值与预设概率值进行比对,获得比对结果;
识别模块,用于根据所述比对结果确定所述多个待识别文本信息中属于所述目标类型的目标待识别文本信息。
可选地,所述概率值获取模块,具体用于通过预设语言模型获取每个待识别文本信息为目标类型的文本信息的概率值,所述预设语言模型为预先将所述目标类型的多个训练文本信息输入语言模型进行训练获得的。
可选地,所述概率值获取模块,具体用于:
通过预设语言模型提取每个待识别文本信息中的m个字,m为大于等于2的整数;
预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值,i为大于等于1且小于m的整数;
基于每个待识别文本信息对应的m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值。
可选地,所述概率值获取模块,还用于通过所述预设语言模型中的softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
可选地,所述概率值获取模块,还用于:
通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为数值向量,获得第i个字对应的第i个数值向量;
通过所述语言模型中的注意力模块获取所述m个字中第i个字与其他m-1个字之间的相似度作为所述第i个字的权重;
将所述第i个字的权重与所述第i个字对应的第i个数值向量进行加权,获得所述第i个字加权后的数值向量;
将所述第i个字加权后的数值向量输入所述softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
可选地,所述概率值获取模块,还用于:
通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为第一数值向量,且将第i个字对应的第i个拼音转换为第二数值向量;
将所述第一数值向量与所述第二数值向量进行拼接获得第i个字对应的第i个数值向量。
可选地,所述装置还包括:
模型训练模块,用于获取属于目标类型的多个训练文本信息;将所述目标类型的多个训练文本信息输入语言模型中进行训练,获得训练后的预设语言模型以及所述预设语言模型输出的预设概率值。
第三方面,本申请实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。
第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出根据本申请的一些实施例的可以实现本申请思想的电子设备的示例性硬件和软件组件的示意图;
图2为本申请实施例提供的一种信息识别方法的流程图;
图3为本申请实施例提供的一种信息识别方法中步骤s120的子步骤流程图;
图4为本申请实施例提供的一种语言模型的结构示意图;
图5为本申请实施例提供的一种信息识别装置的结构框图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了使得本领域技术人员能够理解本申请内容,结合特定应用场景“网约车”,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕网约车进行描述,但是应该理解,这仅是一个示例性实施例。本申请可以应用于任何其他交通运输类型。本申请还可以包括用于提供服务的任何服务系统,例如,用于发送和/或接收快递的系统、用于买卖双方交易的服务系统。本申请的系统或方法的应用可以包括网页、浏览器的插件、客户端终端、定制系统、内部分析系统、或人工智能机器人等,或其任意组合。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
本申请中的术语“司机”、“提供方”、“服务提供方”和“服务提供者”可互换使用,以指代可以提供服务的个人、实体或工具。本申请中的术语“乘客”、“请求方”、“服务人员”、“服务请求方”和“客户”可互换使用,以指代可以请求或订购服务的个人、实体或工具。
请参照图1,图1示出根据本申请的一些实施例的可以实现本申请思想的电子设备100的示例性硬件和软件组件的示意图。例如,处理器可以用于电子设备100上,并且用于执行本申请中的功能。
电子设备100可以是通用计算机或特殊用途的计算机,两者都可以用于实现本申请的数据处理方法。本申请尽管仅示出了一个计算机,但是为了方便起见,可以在多个类似平台上以分布式方式实现本申请描述的功能,以均衡处理负载。
例如,电子设备100可以包括连接到网络的网络端口110、用于执行程序指令的一个或多个处理器120、通信总线130、和不同形式的存储介质140,例如,磁盘、rom、或ram,或其任意组合。示例性地,计算机平台还可以包括存储在rom、ram、或其他类型的非暂时性存储介质、或其任意组合中的程序指令。根据这些程序指令可以实现本申请的方法。电子设备100还包括计算机与其他输入输出设备(例如键盘、显示屏)之间的输入/输出(input/output,i/o)接口150。
为了便于说明,在电子设备100中仅描述了一个处理器。然而,应当注意,本申请中的电子设备100还可以包括多个处理器,因此本申请中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。例如,若电子设备100的处理器执行步骤a和步骤b,则应该理解,步骤a和步骤b也可以由两个不同的处理器共同执行或者在一个处理器中单独执行。例如,第一处理器执行步骤a,第二处理器执行步骤b,或者第一处理器和第二处理器共同执行步骤a和b。
请参照图2,图2为本申请实施例提供的一种信息识别方法的流程图,所述方法包括如下步骤:
步骤s110:获取多个待识别文本信息。
为了判断司机是否会对乘客造成危险,以保证乘客的安全,可以获取司机与乘客之间的对话数据,以分析该对话数据,以此来判断司机和乘客之间是否产生矛盾等情况,进而可判断司机的危险程度。
由于司机和乘客之间的对话数据可能是司机和乘客之间直接进行的对话,且导航音数据也是由语音进行播报的,所以,可以先获得多个待识别语音信息,将多个待识别语音信息进行语音识别并转换为对应的文本信息,获得多个待识别文本信息。
由于司机在服务过程中一般会产生导航音或广播音,所以在多个待识别语音信息中除了司机与乘客之间的语音信息外,还包括有导航音或者广播音其他参杂的声音。由于导航音或广播音一般是一些比较标准的语音,所以,可以对导航音或广播音进行有效识别之后,可获取除导航音和广播音外的其他信息则认为是司机与乘客之间的语音信息。
其中,将待识别语音信息进行语音识别获得待识别文本信息的方式有:采用隐马尔科夫模型对待识别语音信息进行识别、采用语言模型对待识别语音信息进行识别、采用声学模型对待识别语音信息进行识别等等。
多个待识别语音信息的获取方式可以是:司机在服务开启时,安装在司机终端上的网约车平台可自动控制启动录音设备,录音设备可录取在行车过程中所有的语音信息,即多个待识别语音信息,在服务结束后,关闭录音设备,并将获取的多个待识别语音信息发送至服务器进行后续的处理。
需要说明的是,上述多个待识别文本信息中,除了包括在服务过程中,通过录音设备获取的语音信息转换为的文本信息外,还包括乘客与司机之间进行文本交流的信息,如通过短信或微信等交流的文本信息。
步骤s120:获取每个待识别文本信息为目标类型的文本信息的概率值,共获得多个概率值。
在本实施例中,目标类型的文本信息可以指除服务提供方在提供服务过程中与服务请求方之间产生的交互信息以外的信息,为了描述的方便,本实施例中,目标类型的文本信息可以是指导航音文本信息,当然若是应用在其他应用场景,其可以是其他类型的文本信息,如广播音,歌曲声音等。
以网约车场景为例,服务提供方为司机,服务请求方为乘客,乘客可在乘客终端上的网约车平台上下达网约车订单,在下达网约车订单后,若有司机接单,则司机在接单时,表示服务过程开始,直到该乘客下车后结束订单,结束服务,这期间为整个服务过程。在整个服务过程中,司机与乘客之间的任何交互信息均可包含在多个待识别文本信息中,即多个待识别文本信息中除了包括录音设备录取的语音信息转换的文本信息,还可以包括司机和乘客之间的文本交流信息。
由于多个待识别文本信息中参杂有目标类型的文本信息,所以为了识别出多个待识别文本信息中的目标类型的文本信息,多个待识别文本信息可以是根据获取的所有待识别文本信息后对所有待识别文本信息进行切分后获得的,其切分的标准为将所有待识别文本信息按照短句进行切分,即每个待识别文本信息为一个短句,所以,可获得多个待识别文本信息,然后可先计算每个待识别文本信息为目标类型的文本信息的概率值。
作为一种实施方式,可以通过计算每个待识别文本信息与目标类型的文本信息的相似度值作为每个待识别文本信息与目标类型的文本信息的概率值,例如,预先在数据库中存储有很多目标类型的文本信息,可以分别将每个待识别文本信息与数据库中的这些目标类型的文本信息进行相似度计算,如计算两个文本信息之间的汉明距离,将汉明距离作为上述的概率值,汉明距离越小表明两个文本信息越相似;或者,还可以将两个文本信息转换为向量,然后再计算两个向量之间的夹角余弦值,将夹角余弦值作为上述的概率值,夹角余弦值越接近1,表示两个文本信息越相似。
所以,按照上述方式可以计算出每个待识别文本信息为目标类型的文本信息的概率值,共获得多个概率值。
步骤s130:将每个概率值与预设概率值进行比对,获得比对结果。
步骤s140:根据所述比对结果确定所述多个待识别文本信息中属于所述目标类型的目标待识别文本信息。
在上述获得每个待识别文本信息为目标类型的文本信息的概率值后,可以将每个概率值与预设概率值进行比对,其中,预设概率值可以根据实际需要进行灵活设置,如上述的概率值若是用汉明距离来表示时,其预设概率值可设置为3,若上述的概率值若是用夹角余弦值来表示时,其预设概率值可设置为0.8,所以,可将每个概率值与预设概率值进行比对,获得比对结果。
如概率值以夹角余弦值来表示,若多个待识别文本信息中的某个待识别文本信息与目标类型的文本信息之间的夹角余弦值为0.9,预设概率值为0.8,则可将该待识别文本信息作为目标待识别文本信息,即该目标待识别文本信息属于上述的目标类型,也就是说,该目标待识别文本信息为上述的导航音文本信息,由此,可以从多个待识别文本信息中确定属于导航音文本类型的文本信息,进而可从多个待识别文本信息中获取剩余的待识别文本信息作为司机与乘客之间的交互信息,进而可将这个交互信息用于后续的语义理解或者输入语言模型进行训练等,以分析司机和乘客之间是否发生矛盾。
所以,本实施例中,可以通过获取每个待识别文本信息为目标类型的文本信息的概率值,然后将每个概率值与预设概率值进行比对,根据获得的比对结果确定多个待识别文本信息中属于目标类型的目标待识别文本信息,相比于现有技术中通过不同的模板去进行匹配准确性低且耗时较长的问题,本方案可以有效提高信息识别的准确性及效率。
在一种可能的实施方式中,为了获得每个待识别文本信息为目标类型的文本信息的概率值,还可以通过预设语言模型获取每个待识别文本信息为目标类型的文本信息的概率值。由于预设语言模块是对语言模型通过目标类型的多个训练文本信息进行训练获得的,所以,预设语言模型可以有效识别出多个待识别文本信息中为目标类型的文本信息。
可以理解地,语言模型一般是指统计语言模型,其是一个单词序列上的概率分布,对于给定长度为m的序列,其可以为整个序列产生一个概率分布,这个概率分布表示了句子出现的概率,即可通过语言模型判断给定文本能否构成一个句子。
在本实施例中,判断每个待识别文本信息是否为目标类型的文本信息,即可用概率值来衡量,如一个待识别文本信息就是一些词语的序列,假定用s表示,s=w1,w2,...,wn,那么s为目标类型的文本信息的概率值为p(s)=p(w1,w2,...,wn),利用条件概率的公式,展开得到:
p(s)=p(w1,w2,...,wn)=p(w1)·p(w2|w1)·p(w3|w1,w2)·...·p(wn|w1,w2,...,wn-1)
其中,p(w1)表示第一个词出现的概率,p(w2|w1)表示w1已经出现的情况下,w2挨着它出现的概率,以此类推,可以计算每个字对应的概率。
为了通过语言模型识别出多个待识别文本信息中属于目标类型的文本信息,所以还需预先对语言模型进行训练,即上述的预设语言模型为预先将目标类型的多个训练文本信息输入预设语言模型进行训练获得的。在训练过程中,先获取属于目标类型的多个训练文本信息,然后将多个目标类型的多个训练文本信息输入语言模型中进行训练,获得训练后的预设语言模型以及所述预设语言模型输出的预设概率值。
为了识别多个待识别文本信息中导航音对应的文本信息,所以在训练阶段,多个训练文本信息可以包括通过关键词召回的大量导航音文本信息以及一些标准的导航音文本信息,然后将这些训练文本信息输入至语言模型中进行训练,通过训练可获得预设概率值以及预设语言模型。
其中,通过关键词召回的大量导航音文本信息可以是导航音中的一些关键词召回的导航音文本信息,关键词主要包括3部分:1.标准的导航音文本信息相关词,例如,“左转”、“右转”、“直行”、“红绿灯”等关键词;2.导航音文本信息中常见的字组合,例如,“米后”(一百米后进入xx路);3.由于语音识别后文本出错,通过人工从文本中总结的关键词,如“你好”(我爱你好右转进入xx路)。通过这些关键词,可以召回大量的导航音文本信息,合理的关键词能够为语言模型提供足够的训练文本信息,保证语言模型训练的可靠性,有效的语言模型可以准确提取导航音文本信息中的规律,从而实现稳定可靠的导航音文本信息的判断和去除。
另外,在训练阶段,语言模型输出的预设概率值可以用语言模型输出的困惑度阈值来表征,困惑度阈值可用于判断语言模型的预测准确性,困惑度阈值越小表明预测准确性越大。由于语言模型输出的是困惑度值,即语言模型输出的每个待识别文本信息对应的困惑度值,也就是说在每个待识别文本信息的困惑度值小于困惑度阈值时,表明每个待识别文本信息对应的概率值大于预设概率值,从而表明对应的待识别文本信息为目标类型的文本信息。
在另外的实施例中,若需要通过语言模型识别其他的目标类型的文本信息时,还可以获取其他的目标类型的文本信息对语言模型进行训练,如如获取大量的广播音文本信息对语言模型进行训练,从训练后的语言模型可以识别出待识别文本信息汇总的广播音文本信息,或者,若要通过语言模型识别司机和乘客的对话是否是表征司机与乘客之间出现矛盾的一些对话,则可获取表征矛盾的一些关键词召回大量的文本信息进行训练,如关键词可以包括“滚”、“打”、“取消订单”等这些关键词来召回大量的文本信息对语言模型进行训练,从而可以从待识别文本信息中识别出表征司机和乘客之间有矛盾的语句,进而可用于分析司机和乘客之间是否产生矛盾。
另外,在本实施例中,如图3所示,通过预设语言模型获取每个待识别文本信息为目标类型的文本信息的概率值的方式,可以包括如下步骤:
步骤s121:通过预设语言模型提取每个待识别文本信息中的m个字。
其中,m为大于等于2的整数。
步骤s122:预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
其中,i为大于等于1且小于m的整数。
步骤s123:基于每个待识别文本信息对应的m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值。
例如,若待识别文本信息为“前方右转”,则提取的m=4个字分别为“前”,“方”、“右”、“转”,如在i等于1时,先预测第1个字“前”后出现第2个字“方”的概率值,再预测第2个字“方”后面出现第3个字“右”的概率值,继续预测第3个字“右”后面出现第4个字“转”的概率值,然后预测第4个字“转”后面出现结束字符的概率值,以此方式可获得m个概率值,然后基于每个待识别文本信息对应的m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值。
在上述实现过程中,通过预设语言模型获取每个待识别文本信息对应的m个概率值,然后基于该m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值,所以,预设语言模型可以有效识别出多个待识别文本信息中为目标类型的文本信息。
其中,由于softmax分类器具有较好的分类预测效果,所以,可通过所述预设语言模型中的softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
具体地,通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为数值向量,获得第i个字对应的第i个数值向量;通过所述语言模型中的注意力模块获取所述m个字中第i个字与其他m-1个字之间的相似度作为所述第i个字的权重;将所述第i个字的权重与所述第i个字对应的第i个数值向量进行加权,获得所述第i个字加权后的数值向量;将所述第i个字加权后的数值向量输入所述softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
下面以一个具体的实施例对上述的实现过程进行说明。具体地,如图4所示,预设语言模型包括嵌入表示模块、多层多头注意力模块、概率计算模块和困惑度计算模块,嵌入表示模型用于将每个待识别文本信息中的每个字转换为数值向量,多层多头注意力模型用于在每个字对应的数值向量中添加对应的权重,概率计算模块用于计算每个待识别文本信息对应的概率值,困惑度计算模块用于根据每个字对应的概率值计算困惑度。
首先,获得每个待识别信息,由于语言模型内部是进行数值计算,所以先将每个待识别信息转换为id序列,用于输入嵌入表示模块进行后续的处理,例如,若其中一个待识别信息为“前方右转”,通过预先建立的词典可以映射为字,例如[10,20,33,44],也就是说在词典中,“前”在第10个位置,“方”在第20个位置,为了保证对第一个字的预测能力,需要在编码的序列前方补充一个特殊的id,标识句子的开始,如为2,同时在序列的最后补充一个特殊的id,标识句子的结束,如为3,最后的id序列变成了[2,10,20,33,44,3]。
将上述的待识别文本信息对应的id序列输入预设语言模型中的嵌入表示模块,嵌入表示模块用于将id序列转化为对应的数值向量,即将每个字转换为对应的数值向量。嵌入表示模块存在一个矩阵x,该矩阵x的行数为词表中字的个数,列数为数值向量的维度,当id序列输入该嵌入表示模块后,嵌入表示模块会根据每个id的值获取x的对应行,从而获取每个字对应的数值向量。
例如,上述id序列转化为的数值向量为[x2,x10,x20,x33,x44,x3],其中,x2表示矩阵x的第2行,即“前”对应的数值向量为x10,如x10=[0.7,-0.8,1.2]。嵌入表示模块可以把每个字转换为对应的数值向量,可以方便后续语言模型进行数值计算。
另外,为了提供更多的数据识别依据,使得后续对导航文本信息进行有效地识别,还可以通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为第一数值向量,且将第i个字对应的第i个拼音转换为第二数值向量;将所述第一数值向量与所述第二数值向量进行拼接获得第i个字对应的第i个数值向量。
可以理解地,将每个待识别文本信息中每个字对应的拼音信息输入嵌入表示模块中,拼音的嵌入表示也具有一个矩阵y,按照上述相同的方法,通过获取待识别文本信息中对应的拼音的id序列,从矩阵y中抽取对应的行,获取每个字的拼音对应的第二数值向量,最后可拼接两个数值向量,如待识别文本信息中每个字的拼音对应的第二数值向量为[y2,y10,y20,y33,y44,y3],最后拼接后的数值向量作为待识别文本信息对应的数值向量。可以表示为:[[x2,y2],[x10,y10],[x20,y20],[x33,y33],[x44,y44],[x3,y3]],为了简单表示,后文中该数值向量表示为[z1,z2,z3,z4,z5,z6],其中,包括每个字对应的数值向量,如第2个字对应的数值向量为z2=[x10,y10]。
注意力模块用于建立文本的上下文关系,增加数值向量的表示能力,具体而言,给定任意两个字对应的数值向量z1,z2,通过一个softmax函数计算分值s12=f(z1,z2),在给定z1的情况下,可以对其他所有字进行计算,也就是说可以得到s13=f(z1,z3),s14,...,s16,所以,通过该softmax函数可获得每个字与其他字之间的概率,其表示该字对应的数值向量中有其他字对应的数值向量的成分的概率:
在给定概率p12,p13,...,p16和上述的数值向量z2,z3,...,z6的情况下,可以通过加权获取多层多头注意力模块之后的表示:
这样,
为了同时保证嵌入信息和上下文信息,将所述第i个字的权重与所述第i个字对应的第i个数值向量进行加权,获得所述第i个字加权后的数值向量,即可以采用
其中,w和b是需要学习的参数,并且所有的
在本实施例中,多层多头注意力模块是上述注意力模块的一个变形,在上面的介绍中嵌入表示zi是作为一个数值向量进行计算。但是在多头的情况下,数值向量z1会从前往后拆分成多个子段z1,1,z1,2,...,z1,m,例如,[1.1,2.1,3.2,4.5]是一个4维向量,如果拆分为两个子段,则是[1.1,2.1]和[3.2,4.5],之后每个字段分别和其他字对应的数值向量对应的子段进行注意力的计算,例如[z1,1,z2,1,...]进行计算,可以得到
多头的注意力机制可以使语言模型关注不同的上下文,提高了语言模型的表达能力,多层是将每个子段对应的注意力表示(即每个字对应的多个子段z1,1,z1,2,...,z1,m)后再次作为多层多头注意力模块的输入进行二次计算,多层可以建模更多层次的上下文信息,第一层会更关注局部的信息,第二层则可以关注更多的全局信息,通过多层,可以更好的让语言模型进行语义理解。
当获取了多层多头注意力模块后的数值向量表示的序列
在通过上述方式可获得每个待识别文本信息对应的m个概率值后,可以根据下面的公式计算困惑度:
也就是说,基于m个概率值获得每个待识别文本信息为目标类型的文本信息的概率值,即以困惑度来表征每个待识别文本信息为目标类型的文本信息的概率值。语言模型的训练过程与上述过程相似,只是输入输入的样本数据不同,在训练阶段可获得困惑度阈值,该困惑度阈值可用于表征预设概率值,即在预测阶段,语言模型输出的困惑度小于困惑度阈值,则表明概率值大于预设概率值。在对应的待识别文本信息为目标类型的文本信息的概率值大于预设概率值时,确定该待识别文本信息为属于目标类型的目标待识别文本信息,所以,还可以从多个待识别文本信息中筛选出目标待识别文本信息,获得剩余的文本信息作为所述服务提供方在提供服务过程中与服务请求方之间产生的交互信息,从而可对该交互信息进行后续的分析,以分析司机和乘客之间是否产生矛盾等情况。
请参照图5,图5为本申请实施例提供的一种信息识别装置200的结构框图,所述装置包括:
文本信息获取模块210,用于获取多个待识别文本信息;
概率值获取模块220,用于获取每个待识别文本信息为目标类型的文本信息的概率值,共获得多个概率值,所述目标类型的文本信息为除服务提供方在提供服务过程中与服务请求方之间产生的交互信息以外的信息;
比对模块230,用于将每个概率值与预设概率值进行比对,获得比对结果;
识别模块240,用于根据所述比对结果确定所述多个待识别文本信息中属于所述目标类型的目标待识别文本信息。
可选地,所述概率值获取模块220,具体用于通过预设语言模型获取每个待识别文本信息为目标类型的文本信息的概率值,所述预设语言模型为预先将所述目标类型的多个训练文本信息输入语言模型进行训练获得的。
可选地,所述概率值获取模块220,具体用于:
通过预设语言模型提取每个待识别文本信息中的m个字,m为大于等于2的整数;
预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值,i为大于等于1且小于m的整数;
基于每个待识别文本信息对应的m个概率值获取每个待识别文本信息为目标类型的文本信息的概率值。
可选地,所述概率值获取模块220,还用于通过所述预设语言模型中的softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
可选地,所述概率值获取模块220,还用于:
通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为数值向量,获得第i个字对应的第i个数值向量;
通过所述语言模型中的注意力模块获取所述m个字中第i个字与其他m-1个字之间的相似度作为所述第i个字的权重;
将所述第i个字的权重与所述第i个字对应的第i个数值向量进行加权,获得所述第i个字加权后的数值向量;
将所述第i个字加权后的数值向量输入所述softmax分类器预测所述m个字中第i个字后出现所述m个字中第i+1个字的概率值,以及预测第m个字后出现结束字符的概率值,共获得每个待识别文本信息对应的m个概率值。
可选地,所述概率值获取模块220,还用于:
通过所述预设语言模型中的嵌入表示模块将每个待识别文本信息中的第i个字转换为第一数值向量,且将第i个字对应的第i个拼音转换为第二数值向量;
将所述第一数值向量与所述第二数值向量进行拼接获得第i个字对应的第i个数值向量。
可选地,所述装置还包括:
模型训练模块,用于获取属于目标类型的多个训练文本信息;将所述目标类型的多个训练文本信息输入语言模型中进行训练,获得训练后的预设语言模型以及所述预设语言模型输出的预设概率值。
本申请实施例提供一种可读存储介质,所述计算机程序被处理器执行时,执行如图2所示方法实施例中电子设备所执行的方法过程。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
综上所述,本申请实施例提供一种信息识别方法、装置、电子设备及存储介质,该方法通过获取每个待识别文本信息为目标类型的文本信息的概率值,然后将每个概率值与预设概率值进行比对,根据获得的比对结果确定多个待识别文本信息中属于目标类型的目标待识别文本信息,相比于现有技术中通过大量不同的模板去进行匹配准确率较低且耗时较长的问题,本方案可以有效提高信息识别的准确率和效率。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除