HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

分句方法与装置、存储介质、电子设备与流程

2021-01-28 16:01:30|328|起点商标网
分句方法与装置、存储介质、电子设备与流程

本公开涉及语音识别技术领域,尤其涉及一种分句方法与分句装置、计算机可读存储介质及电子设备。



背景技术:

问答系统(questionansweringsystem,简称qa)能用准确且简洁的自然语言回答用户提出的问题。亦即,用户以自然语言提问的形式提出信息查询需求,问答系统通过语言识别技术将信息查询需求的音频信息转换为文字信息,再将文字信息与知识库中的标准问题进行匹配,以根据匹配结果反馈给用户相应话术。

但是,问答系统中的语音识别模型和语意匹配模型的耦合度较低。当用户提出的信息查询请求为长句时,这一长句的输入会产生停顿。因此,问答系统自动根据停顿前的音频信息查询,造成答案与问题匹配失败的问题。

鉴于此,本领域亟需开发一种新的分句方法及装置。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本公开的目的在于提供一种分句方法、分句装置、计算机可读存储介质及电子设备,进而至少在一定程度上克服由于相关技术的限制而导致的语意匹配失败的问题。

本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

根据本发明实施例的第一个方面,提供一种分句方法,所述方法包括:采集语音信息,并确定与所述语音信息对应的待测句以及与所述待测句对应的标准句;

划分所述标准句得到多个标准子句,并在所述多个标准子句中确定与所述待测句对应的目标子句;

若所述待测句与所述目标子句的第一相似度大于第一阈值,确定所述待测句为所述标准句的子句,以作为与所述语音信息对应的分句结果。

在本发明的一种示例性实施例中,所述确定与所述语音信息对应的待测句以及与所述待测句对应的标准句,包括:

获取所述语音信息的停顿时长,并根据所述停顿时长对所述语音信息进行语音分句处理得到多个语音片段;

对所述多个语音片段进行语音识别处理得到待测句,并确定与所述待测句对应的标准句。

在本发明的一种示例性实施例中,所述对所述多个语音片段进行语音识别处理得到待测句,包括以下任意一种方式:

对所述多个语音片段进行语音识别处理得到多个识别语句,并确定所述多个识别语句中的一个作为待测句,

对所述多个语音片段进行语音识别处理得到多个识别语句,并确定所述多个识别语句中的多个进行合并处理得到待测句。

在本发明的一种示例性实施例中,所述划分所述标准句得到多个标准子句,包括:

将所述待测句和所述标准句分别输入至预先训练好的语言模型中,以使所述语言模型分别输出待测句向量和标准句向量;

若所述待测句向量与所述标准句向量之间的第二相似度小于第二阈值,划分所述标准句得到多个标准子句。

在本发明的一种示例性实施例中,所述若所述待测句向量与所述标准句向量之间的第二相似度小于第二阈值,划分所述标准句得到多个标准子句,包括:

计算所述待测句向量与所述标准句向量的第二相似度,并确定所述第二相似度小于第二阈值;

获取所述待测句的语句长度和所述标准句的标准句长度,并比较所述语句长度与所述标准句长度;

若所述语句长度小于所述标准句长度,划分所述标准句得到多个标准子句。

在本发明的一种示例性实施例中,所述划分所述标准句得到多个标准子句,并在所述多个标准子句中确定与所述待测句对应的目标子句,包括:

划分所述标准句得到多个标准子句,并分别计算所述多个标准子句与所述待测句的多个编辑距离;

对所述多个编辑距离进行排序,并根据排序结果在所述标准子句中确定与所述待测句对应的目标子句。

在本发明的一种示例性实施例中,所述划分所述标准句得到多个标准子句,包括以下任意一种方式:

按照所述标准句中包含的字数遍历划分所述标准句得到多个标准子句;

获取所述待测句的语句长度,并按照所述语句长度划分所述标准句得到多个标准子句;

确定所述待测句中的高频词汇,并按照所述标准句中与所述高频词汇对应的标准词汇划分所述标准句得到多个标准子句;

确定所述标准句中的标点,并按照所述标点划分所述标准句得到多个标准句。

根据本发明实施例的第二个方面,提供一种分句装置,所述装置包括:信息采集模块,被配置为采集语音信息,并确定与所述语音信息对应的待测句以及与所述待测句对应的标准句;

语句划分模块,被配置为划分所述标准句得到多个标准子句,并在所述多个标准子句中确定与所述待测句对应的目标子句;

结果确定模块,被配置为若所述待测句与所述目标子句的第一相似度大于第一阈值,确定所述待测句为所述标准句的子句,以作为与所述语音信息对应的分句结果。

根据本发明实施例的第三个方面,提供一种电子设备,包括:处理器和存储器;其中,存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述任意示例性实施例的分句方法。

根据本发明实施例的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意示例性实施例中的分句方法。

由上述技术方案可知,本发明示例性实施例中的分句方法、分句装置、计算机存储介质及电子设备至少具备以下优点和积极效果:

在本公开的示例性实施例提供的方法及装置中,通过匹配与语音信息识别出的待测句对应的目标子句,可以实现生成与语音信息对应的分句结果的功能。

一方面,解决了语音识别过程中由于长句停顿现象导致的语音识别错误的问题,提供了根据场景和语料的实际情况进行切割的方式,提高了长句切分的准确度和效率;另一方面,在应用场景上提升了“语音输入+语意匹配”模式的匹配精度,丰富了分句方法应用在除语音问答系统之外的应用场景,优化了用户体验。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示意性示出本公开示例性实施例中一种分句方法的流程图;

图2示意性示出本公开示例性实施例中确定待测句与标准句的方法的流程示意图;

图3示意性示出本公开示例性实施例中得到待测句的方法的流程示意图;

图4示意性示出本公开示例性实施例中得到多个标准子句的方法的流程示意图;

图5示意性示出本公开示例性实施例中进一步得到标准子句的方法的流程示意图;

图6示意性示出本公开示例性实施例中划分标准句的方法的流程示意图;

图7示意性示出本公开示例性实施例中进一步划分标准句的方法的流程示意图;

图8示意性示出本公开示例性实施例中在应用场景中的分句方法的模块示意图;

图9示意性示出本公开示例性实施例中一种分句装置的结构示意图;

图10示意性示出本公开示例性实施例中一种用于实现分句方法的电子设备;

图11示意性示出本公开示例性实施例中一种用于实现分句方法的计算机可读存储介质。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。

本说明书中使用用语“一个”、“一”、“该”和“所述”用以表示存在一个或多个要素/组成部分/等;用语“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”和“第二”等仅作为标记使用,不是对其对象的数量限制。

此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。

针对相关技术中存在的问题,本公开提出了一种分句方法。图1示出了分句方法的流程图,如图1所示,分句方法至少包括以下步骤:

步骤s110.采集语音信息,并确定与语音信息对应的待测句以及与待测句对应的标准句。

步骤s120.划分标准句得到多个标准子句,并在多个标准子句中确定与待测句对应的目标子句。

步骤s130.若待测句与目标子句的第一相似度大于第一阈值,确定待测句为标准句的子句,以作为与语音信息对应的分句结果。

在本公开的示例性实施例中,通过匹配与语音信息识别出的待测句对应的目标子句,可以实现生成与语音信息对应的分句结果的功能。

一方面,解决了语音识别过程中由于长句停顿现象导致的语音识别错误的问题,提供了根据场景和语料的实际情况进行切割的方式,提高了长句切分的准确度和效率;另一方面,在应用场景上提升了“语音输入+语意匹配”模式的匹配精度,丰富了分句方法应用在除语音问答系统之外的应用场景,优化了用户体验。

下面对分句方法的各个步骤进行详细说明。

在步骤s110中,采集语音信息,并确定与语音信息对应的待测句以及与待测句对应的标准句。

在本公开的一种示例性实施例的问答对话系统中,如果语音识别系统根据采集到的语音信息匹配到话术“今天北京天气怎么样”,该系统会返回对应的当天的北京天气情况。

因此,在这一过程中,语音识别系统会采集用户的语音信息。该语音信息可以是一段较长的语音信息,其中带有用户的语音停顿。

举例而言,采集到的语音信息可以是“救援费用需要您先垫付,请保留好单证。属于保险责任救援费用的部分,会随车险赔款转给被保险人账户。如果拖车已出发五分钟之内没有告知工作人员,因取消拖车等其他个人原因产生的费用需要您自行承担。感谢您的配合”。

进一步的,确定与语音信息对应的待测句以及与待测句对应的标准句。

在可选的实施例中,图2示出了确定待测句与标准句的方法的流程示意图,如图2所示,该方法至少包括以下步骤:在步骤s210中,获取语音信息的停顿时长,并根据停顿时长对语音信息进行语音分句处理得到多个语音片段。

该语音信息可以是一段较长的语音信息,其中带有用户的停顿信息。停顿信息一般指说话过程中话语的短暂停歇的停顿时长以及停顿位置等信息。而产生停顿的情况可以包括语法停顿、逻辑停顿、感情停顿和生理停顿。

其中,语法停顿是按照标点符号所作的停顿,根据设置的标点符号的不同也可以做不同的停顿时长;逻辑停顿是为了突出某一语意所作的停顿;感情停顿是为了某种感情或者受感情支配而作的停顿;生理停顿是指在表述到长句的时候,寻找中间合适的位置停顿,以满足换气需求。

不论是何种停顿情况,语音识别系统都可以获取到语音信息中的停顿时长,并对语音信息进行语音分句处理。

具体的,当停顿时长大于一个时长阈值时,可以确定此处为一处停顿。例如,该时长阈值可以是400毫秒、500毫秒或者是其他数值,本示例性实施例对此不做特殊限定。

进一步的,将该停顿与上一停顿之间的语音信息划分为一个语音片段,并以此类推的检测下一停顿,得到下一语音片段。将所有划分出来的语音片段汇总起来即可作为与语音信息对应的多个语音片段。

在步骤s220中,对多个语音片段进行语音识别处理得到待测句,并确定与待测句对应的标准句。

在可选的实施例中,图3示出了得到待测句的方法的流程示意图,如图3所示,该方法至少包括以下步骤:在步骤s310中,对多个语音片段进行语音识别处理得到多个识别语句,并确定多个识别语句中的一个作为待测句。

对多个语音片段进行语音识别处理可以是通过语音识别系统实现的,也可以根据语音识别算法将多个语音片段转换为多个识别语句。

举例而言,该语音识别算法可以是基于深度卷积长短期记忆神经网络的语音识别算法。该语音识别算法由全连接卷积网络(convolutionalneuralnetworks,简称cnn)、长短期记忆神经网络(longshort-termmemory,简称lstm)与深度神经网络(deepneuralnetworks,简称dnn)三层网络结构组成的。

具体的,可以通过cnn来减小频域变化,cnn的输出通过lstm来减小时域变化。lstm最后一层的输出输入到dnn,以将特征控件映射到更容易分类的输出层。

经过对应系统或算法的语音识别处理,可以一一得到与语音片段对应的识别语句。进一步的,在识别语句中可以选择语序排在第一个的识别语句作为待测句。

举例而言,该多个识别语句可以有四个,分别是:救援费用需要您先垫付,请保留好单证;属于保险责任救援费用的部分,会随车险赔款转给被保险人账户;如果拖车已出发五分钟之内没有告知工作人员,因取消拖车等其他个人原因产生的费用需要您自行承担;感谢您的配合。并且,选择语序为第一个的“救援费用需要您先垫付,请保留好单证”作为待测句。

在步骤s320中,对多个语音片段进行语音识别处理得到多个识别语句,并确定多个识别语句中的多个进行合并处理得到待测句。

对多个语音片段的语音识别处理与步骤s310相同,在此不再赘述。当语序排在第一个的识别语句作为待测句已经确定为后续标准句的子句的情况下,可以选择语序排在第二个的识别语句与第一个识别语句进行合并处理,以将合并处理后的识别语句作为待测句;当语序排在第一个和第二个的识别语句作为待测句已经确定为后续标准句的子句的情况下,可以选择语序排在第三个的识别语句与第一个识别语句和第二个识别语句进行合并处理,以将合并处理后的识别语句作为待测句;……;以此类推,将所有识别语句不断经过合并处理作为待测句进行后续是否为标准句的判断。

举例而言,该多个识别语句可以有四个,分别是:救援费用需要您先垫付,请保留好单证;属于保险责任救援费用的部分,会随车险赔款转给被保险人账户;如果拖车已出发五分钟之内没有告知工作人员,因取消拖车等其他个人原因产生的费用需要您自行承担;感谢您的配合。

并且,当语序为第一个的“救援费用需要您先垫付,请保留好单证”确定为标准句的子句时,选择第二个识别语句与其进行合并处理,得到“救援费用需要您先垫付,请保留好单证。属于保险责任救援费用的部分,会随车险赔款转给被保险人账户”作为待测句。

在本示例性实施例中,分别将循环判断过程中确定待测句的方式列出,不仅使得整个执行流程逻辑清晰,也丰富了待测句确定的应用场景。

在确定待测句之后,可以根据待测句在标准句的库中确定对应的标准句。举例而言,该标准句可以是问答对话系统的知识库中的标准句,亦即该标准句是为向用户反馈对应话术设定的,也可以是其他应用场景下的标准句,本示例性实施例对此不做特殊限定。

举例而言,与图3中的示例对应的标准句可以是“提醒您救援费用需您先行垫付,请保留好单证。如属于保险责任救援费用会随车险赔款打给被保险人帐户,并提醒您如果拖车发车5分钟之内没有告知工作人员因取消拖车或案件注销等个人原因产生的费用自行承担。感谢您的配合”。

在本示例性实施例中,根据语音信息的停顿时长可以确定出对应的待测句和标准句,划分方式准确高效,且待测句确定方式丰富精准。

在步骤s120中,划分标准句得到多个标准子句,并在多个标准子句中确定与待测句对应的目标子句。

在本公开的一种示例性实施例中,通过划分标准句可以得到多个标准子句。

在可选的实施例中,图4示出了得到多个标准子句的方法的流程示意图,如图4所示,该方法至少包括以下步骤:在步骤s410中,将待测句与标准句分别输入至预先训练好的语言模型中,以使语言模型分别输出待测句向量和标准句向量。

在将待测句输入至预先训练好的语言模型之前,可以先对待测句进行字符串处理。

该字符串处理可以是提出待测句中的标点符合和停用词等无关信息。其中,停用词可以是语气词或者是例如“了、么、吗”等无实际语义的词汇。

举例而言,该语言模型可以是bidirectionalencoderrepresentationfromtransformers模型,简称bert模型。该bert模型是一个能够广泛应用于执行各类的自然语言处理任务的语言模型。bert模型一般包括有多个编码器层,该编码器层能够提取得到文本的特征标识,并以向量的形式输出。

具体的,将待测句输入至bert模型后会经过多层的编码器层,上一层编码器层的输出作为下一层编码器层的输入,最后一层编码器层的输出作为待测句的特征信息,亦即待测句向量。

举例而言,当待测句为“救援费用需要您先垫付请保留好单证”时,可以得到对应的待测句向量为[-1.00976145e+00,3.80340964e-01,3.26441854e-01,……,-1.15089560e+00,3.51974159e-01,5.90184331e-02]的312维向量。

并且,bert模型对标准句的处理过程相同,因此可以得到标准句向量。

举例而言,该标准句向量可以也是312维的向量,具体为[-3.27000111e-01,2.33671832e+00,4.63059366e-01,……,-2.60354221e-01,-3.31430674e-01,-1.22734308e+00]。

在步骤s420中,若待测句向量与标准句向量之间的第二相似度小于第二阈值,划分标准句得到多个标准子句。

当得到待测句向量与标准句向量时,可以根据句向量的表征计算第二相似度。

在可选的实施例中,图5示出了进一步得到标准子句的方法的流程示意图,如图5所示,该方法至少包括以下步骤:在步骤s510中,计算待测句与标准句向量的第二相似度,并确定第二相似度小于第二阈值。

具体的,可以计算待测句向量与标准句向量之间的余弦距离评估第二相似度,参考公式(1):

其中,a表示待测句向量,b表示标准句向量。

针对第二相似度设置有第二阈值,该第二阈值用于判断是否要划分标准句。一般的,可以设置第二阈值为0.88,也可以根据实际情况设置其他数值,本示例性实施例对此不做特殊限定。

进一步的,将第二相似度与第二阈值进行比较。举例而言,当a=[-1.00976145e+00,3.80340964e-01,3.26441854e-01,……,-1.15089560e+00,3.51974159e-01,5.90184331e-02],b=[-3.27000111e-01,2.33671832e+00,4.63059366e-01,……,-2.60354221e-01,-3.31430674e-01,-1.22734308e+00]时,第二相似度为0.339,第二阈值为0.88。因此,第二相似度小于第二阈值,可以进行后续判断。

在步骤s520中,获取待测句的语句长度和标准句的标准句长度,并比较语句长度和标准句长度。

为确定待测句是否可能为标准句的子句,可以获取待测句的语句长度和标准句的标准句长度,并且将语句长度与标准句长度进行比较。

在步骤s530中,若语句长度小于标准句长度,划分标准句得到多个标准子句。

当语句长度和标准句长度的比较结果是语句长度大于或等于标准句长度时,待测句一定不是标准句的子句,因此结束后续处理流程;而当语句长度和标准句长度的比较结果是语句长度小于标准句长度时,可以进一步划分标准句得到多个标准子句,并在多个标准子句中确定目标子句。

在可选的实施例中,图6示出了划分标准句的方法的流程示意图,如图6所示,该方法至少包括以下步骤;在步骤s610中,划分标准句得到多个标准子句,并分别计算多个标准子句与待测句的多个编辑距离。

在可选的实施例中,图7示出了进一步划分标准句的方法的流程示意图,如图7所示,该方法至少包括以下步骤:在步骤s710中,按照标准句中包含的字数遍历划分标准句得到多个标准子句。

举例而言,当标准句中包含10个字时,可以分别按照1、2、3、……、9、10个字对标准句进行遍历划分,得到对应的多个标准子句。

在步骤s720中,获取待测句的语句长度,并按照语句长度划分标准句得到多个标准子句。

举例而言,当待测句的语句长度为16时,按照16个字划分标准句,依次得到多个标准子句分别为:第1个字到第16个字;第2个字到第17个字;……。

在步骤s730中,确定待测句中的高频词汇,并按照标准句中与高频词汇对应的标准词汇划分标准句得到多个标准子句。

传统的词频统计方法,例如词频-逆文本频率指数(termfrequency-inversedocumentfrequency,简称tf-idf),可以统计出语料中的权重词汇。例如利用tf-idf在保险理赔情景的语料的中做预训练时,“保险”、“保单”、“身份证”、“救援”等词汇会有较高的权重值。因此,可以利用预训练好的tf-idf权重词汇划分标准句。

具体的,利用相关领域的训练语料进行tf-idf词频统计,语料中出现的每个词汇均会得到对应的词频,筛选高于某一频率的词汇,形成领域高频词词库。

然后,在待测句中查询是否有词库中的领域高频词出现,并进行标记作为高频词汇。例如,可以在“救援费用需要您先垫付请保留好单证”中确定高频词汇分别为救援、费用和单证。

进一步的,在标准句中搜索待测句中的高频词以及在《同义词词林》中对应的同义词作为标准句中的标准词汇。举例而言,在“救援的费用请您这边先垫付一下,并保留好单据。属于保险责任救援费用的部分,会随车险赔款转给被保险人账户。如果拖车已出发五分钟之内没有告知工作人员,因取消拖车等其他个人原因产生的费用需要您自行承担。感谢您的配合”,可以确定标准句中的标准词汇为救援、费用、单据、救援和费用五个。

当得到标准词汇之后,可以将标准词汇进行排列,并两两配对形成多个标准子句,例如:救援的费用、救援的费用请您这边先垫付一下并保留好单据、救援的费用请您这边先垫付一下并保留好单据属于保险责任救援、救援的费用请您这边先垫付一下并保留好单据属于保险责任救援费用、……、单据属于保险责任救援、单据属于保险责任救援费用和救援费用。

在步骤s740中,确定标准句中的标点,并按照标点划分标准句得到多个标准子句。

在实际操作中,标准句中往往有各种标点符号,因此可以利用标点对标准句进行划分。例如,标准句中由逗号或者句号隔开的每一分句为一个标准子句。

举例而言,当标准句为“提醒您:救援费用需您先行垫付,请保留好单证。如属于保险责任,救援费用会随车险赔款打给被保险人帐户。并提醒您:如果拖车发车5分钟之内没有告知工作人员,因取消拖车或案件注销等个人原因产生的费用自行承担。感谢您的配合。”时,按照标点进行划分得到的多个标准子句分别为:救援的费用请您这边先垫付一下并保留好单据、如属于保险责任救援费用会随车险赔款打给被保险人帐户、并提醒您如果拖车发车5分钟之内没有告知工作人员、因取消拖车或案件注销等个人原因产生的费用自行承担、感谢您的配合等。由于标准句中有7个标点,可以将标准句划分为28个标准子句。

在本示例性实施例中,分别列出了四种划分标准句的方式,划分方式多样且划分准确,实用性极强。

在划分得到多个标准子句之后,可以分别计算多个标准子句与待测句之间的多个编辑距离。

其中,编辑距离指的是两个字符串a、b之间,由a转换成b所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。该距离越小,两字符串内容越接近。

根据步骤s720中的划分方式可以计算得到的编辑距离如表1所示:

表1

在步骤s730中的划分方式计算的编辑距离如表2所示:

表2

根据步骤s740得到的编辑距离如表3所示:

表3

在步骤s620中,对多个编辑距离进行排序,并根据排序结果在标准字句中确定与待测句对应的目标子句。

当得到多个标准子句对应的多个编辑距离之后,可以对多个编辑距离进行排序。该排序方式可以是从小到大或者从大到小,本示例性实施例对此不做特殊限定。

在得到排序结果之后,可以从中选择最小的编辑距离对应的标准子句作为与待测句对应的目标子句。

在本示例性实施例中,通过编辑距离确定与待测句对应的目标子句,确定方式简单准确,实用性极强。

在步骤s130中,若待测句与目标子句的第一相似度大于第一阈值,确定待测句为标准句的子句,以作为与语音信息对应的分句结果。

在本公开的一种示例性实施例中,当得到待测句与目标子句之后,可以计算二者之间的第一相似度。

在计算第一相似度之前,可以先将目标子句输入至bert模型中得到对应的句向量。

举例而言,当目标子句为“救援的费用请您这边先垫付一下并保留好单据”时,可以通过bert模型得到312维的句向量[-1.1401047,0.34716192,0.28434968,……,-1.2103539,0.35710022,0.04027161]。

进一步的,计算目标子句与待测句之间的相似度也可以通过余弦距离,即公式(1)进行计算。因此,得到第一相似度为0.9871。

为判断待测句是否为标准句的子句,可以设置第一阈值进行判断。一般的,第一阈值可以为0.88,与第二阈值相同,也可以按照实际情况设置与第二阈值不同的其他数值,本示例性实施例对此不做特殊限定。

当第一相似度为0.9871,第一阈值为0.88时,可以确定第一相似度大于第一阈值,亦即待测句与目标子句的语义相同。此时,可以确定待测句为标准句的子句。

值得说明的是,若待测句后面还有其他识别语句时,可以在其他识别语句中确定待测句后的下一识别语句,并将待测句与下一识别语句进行拼接处理得到新的待测句,进一步的判断新的待测句是否为标准句的子句,直至确定出其他识别语句中的所有标准句的子句作为与语音信息对应的分句结果。

举例而言,可以参考表4所示的分句结果:

表4

其中,可以确定标准句的子句为待测句①+②+③,且此时①+②+③与标准句的第一相似度为0.9705,已经大于第一阈值0.88,因此直接确定为一个子句。但是,此时与语音信息对应的识别语句还有④,因此发起新一轮的分句计算,此时虽然可以确定④与标准句语意不匹配,但④是标准句的子句。值得说明的是,在④后面没有其他识别语句进行合并处理,因此若在语音问答对话系统中仅匹配与子句①+②+③对应的答案返回给用户即可。

下面结合一应用场景对本公开实施例中的分句方法做出详细说明。

图8示出了应用场景下的分句方法的流程示意图,如图8所示,在步骤s811中,用户语音输入,因此可以采集到与用户输入的语音对应的语音信息。

语音识别系统会采集用户的语音信息。该语音信息可以是一段较长的语音信息,其中带有用户的语音停顿。

在步骤s812中,语音识别系统对语音信息进行语音识别处理得到与语音信息的待测句,亦即字符串a。

语音识别系统可以获取到语音信息中的停顿时长,并对语音信息进行语音分句处理得到多个语音片段。

进一步的,对多个语音片段进行语音识别处理得到多个识别语句,并确定多个识别语句中的一个作为待测句。

除此之外,还可以确定多个识别语句中的多个进行合并处理得到待测句。

在步骤s813中,对待测句进行字符串处理。

该字符串处理可以是提出待测句中的标点符合和停用词等无关信息。其中,停用词可以是语气词或者是例如“了、么、吗”等无实际语义的词汇。

在步骤s814中,确定与待测句对应的标准句,并计算二者之间的相似度。

该标准句亦即b字符串。具体的,将待测句和标准句分别输入至预先训练好的语言模型中,以使语言模型分别输出待测句向量和标准句向量,并且计算待测句向量与标准句向量之间的相似度。

在步骤s815中,判断相似度是否小于阈值。

在步骤s816中,当相似度小于阈值时,获取待测句的语句长度和标准句的标准句长度,并比较语句长度与标准句长度。

为确定待测句是否可能为标准句的子句,可以获取待测句的语句长度和标准句的标准句长度,并且将语句长度与标准句长度进行比较。

在步骤s817中,当语句长度小于标准句长度时,划分标准句得到多个标准子句。

该划分方式可以包括四种,分别是按照标准句中包含的字数遍历划分标准句得到多个标准子句;获取待测句的语句长度,并按照语句长度划分标准句得到多个标准子句;确定待测句中的高频词汇,并按照标准句中与高频词汇对应的标准词汇划分标准句得到多个标准子句;确定标准句中的标点,并按照标点划分标准句得到多个标准子句。

其中四种具体划分方式的处理过程与图7相同,在此不再赘述。

在步骤s818中,寻找与待测句对应的最相似映射b*,亦即目标子句。

在划分得到多个标准子句之后,可以分别计算多个标准子句与待测句之间的多个编辑距离,以确定编辑距离最小的标准子句为目标子句,亦即最相似映射b*

在步骤s819中,计算待测句与目标子句之间的相似度。

在步骤s820中,将待测句与目标子句之间的相似度与对应的阈值进行比较得到比较结果。

在步骤s821中,当比较结果为待测句与目标子句之间的相似度大于阈值时,返回结论2,亦即待测句与标准句的语义不相似,但待测句是标准句的子句。系统等待后续输入的识别语句,尝试将待测句与识别语句进行拼接处理得到新的待测句。

除此之外,当待测句向量与标准句向量之间的相似度大于或等于对应的阈值时,可以返回结论1,亦即待测句与标准句语义相似,系统执行标准句话术对应的流程。

而当语句长度大于或等于标准句长度时,返回结论0,亦即待测句与标准句语义不相似,且待测句不是标准句的子句;系统执行匹配失败的流程。

本公开通过匹配与语音信息识别出的待测句对应的目标子句,可以实现生成与语音信息对应的分句结果的功能。

一方面,解决了语音识别过程中由于长句停顿现象导致的语音识别错误的问题,提供了根据场景和语料的实际情况进行切割的方式,提高了长句切分的准确度和效率;另一方面,在应用场景上提升了“语音输入+语意匹配”模式的匹配精度,丰富了分句方法应用在除语音问答系统之外的应用场景,优化了用户体验。

需要说明的是,虽然以上示例性实施例的实施方式以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或者必须执行全部的步骤才能实现期望的结果。附加地或者备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。

此外,在本公开的示例性实施例中,还提供一种分句装置。图9示出了分句装置的结构示意图,如图9所示,分句装置900可以包括:信息采集模块910、语句划分模块920和结果确定模块930。其中:

信息采集模块910,被配置为采集语音信息,并确定与语音信息对应的待测句以及与待测句对应的标准句;

语句划分模块920,被配置为划分标准句得到多个标准子句,并在多个标准子句中确定与待测句对应的目标子句;

结果确定模块930,被配置为若待测句与目标子句的第一相似度大于第一阈值,确定待测句为标准句的子句,以作为与语音信息对应的分句结果。

上述分句装置的具体细节已经在对应的分句方法中进行了详细的描述,因此此处不再赘述。

应当注意,尽管在上文详细描述中提及了分句装置900的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。

此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。

下面参照图10来描述根据本发明的这种实施例的电子设备1000。图10显示的电子设备1000仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图10所示,电子设备1000以通用计算设备的形式表现。电子设备1000的组件可以包括但不限于:上述至少一个处理单元1010、上述至少一个存储单元1020、连接不同系统组件(包括存储单元1020和处理单元1010)的总线1030、显示单元1040。

其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1010执行,使得所述处理单元1010执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。

存储单元1020可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)1021和/或高速缓存存储单元1022,还可以进一步包括只读存储单元(rom)1023。

存储单元1020还可以包括具有一组(至少一个)程序模块1025的程序/实用工具1024,这样的程序模块1025包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线1030可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备1000也可以与一个或多个外部设备1200(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1000交互的设备通信,和/或与使得该电子设备1000能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1050进行。并且,电子设备1000还可以通过网络适配器1060与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1040通过总线1030与电子设备1000的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。

在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。

参考图11所示,描述了根据本发明的实施例的用于实现上述方法的程序产品1100,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips