一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

音频断句方法、装置、计算机设备及存储介质与流程

2022-06-22 19:52:23 来源:中国专利 TAG:


1.本技术涉及语音识别领域,尤其涉及音频断句方法、装置、计算机设备及存储介质。


背景技术:

2.对于离线视频信息的分析中,语音识别是一个重要的部分,应该如何切分语句又是语音识别的一个重要部分,关系着词语的识别准确性以及句子的完整性。对于长音频文件的句子切分,常规的方式是基于静默音的时间长短来切分,或者利用人工智能的方式对语音边界进行判断,对于长音频中的重复或拖音等场景,会自动切分句子,可能会出现切分不准确的情况。


技术实现要素:

3.本技术提供的音频断句方法、装置、计算机设备及存储介质,用以解决现有音频断句方法中断句不准确的技术问题。
4.第一方面,提供一种音频断句方法,所述方法包括:将多个按序排列的语句中的首个语句作为第一待分析语句,判断所述第一待分析语句的语义完整性,所述多个按序排列的语句为对多个按序排列的音频片段进行语音识别得到,所述多个按序排列的音频片段为对目标音频分割得到;在所述第一待分析语句的语义完整的情况下,将所述第一待分析语句放入待输出区域,并将所述第一待分析语句的下一语句作为第二待分析语句,判断所述第二待分析语句的语义完整性;在所述第二待分析语句的语义不完整的情况下,将所述第二待分析语句与所述待输出区域中的语句进行合并得到第一合并语句,判断所述第一合并语句的语义完整性;在所述第一合并语句的语义不完整的情况下,输出并清空所述待输出区域中的语句,将所述第二待分析语句的下一语句与所述第二待分析语句进行合并得到第二合并语句,并将所述第二合并语句作为所述第一待分析语句,执行所述判断所述第一待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
5.结合第一方面,在一种可能的实现方式中,所述方法还包括:在所述第一合并语句的语义完整的情况下,清空所述待输出区域中的语句,将所述第一合并语句放入所述待输出区域,并将所述第二待分析语句的下一个语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
6.结合第一方面,在一种可能的实现方式中,所述方法还包括:在所述第二待分析语句的语义完整的情况下,输出所述待输出区域中的语句,将所述第二待分析语句放入所述待输出区域,并将所述第二待分析语句的下一个语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,直至所述多
个按序排列的语句均被输出。
7.结合第一方面,在一种可能的实现方式中,所述方法还包括:在所述第一待分析语句的语义不完整的情况下,将所述第一待分析语句与所述第一待分析语句的下一语句合并得到第三合并语句,将所述第三合并语句作为所述第一待分析语句,执行所述判断所述第一待分析语句的语义完整性的步骤。
8.结合第一方面,在一种可能的实现方式中,所述方法还包括:若所述第二合并语句的语句长度达到预设语句长度,则将所述第二合并语句放入所述待输出区域,并将第三待分析语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出;所述第三待分析语句为所述第二待分析语句的下一语句的下一语句。
9.结合第一方面,在一种可能的实现方式中,所述将多个按序排列的语句中的首个语句作为第一待分析语句之前,包括:获取所述目标音频,并识别所述目标音频中的静默音;根据所述静默音对所述目标音频进行分割,得到所述多个按序排列的音频片段;对所述多个按序排列的音频片段进行文字识别,得到多个按序排列的语句。
10.结合第一方面,在一种可能的实现方式中,通过预设语义完整模型判断目标语句的语义完整性,所述目标语句为所述第一待分析语句、所述第二待分析语句或合并得到的语句,所述通过预设语义完整模型判断目标语句的语义完整性,包括:获取所述目标语句对应的字向量、句向量和位置向量;根据所述字向量、所述句向量以及所述位置向量,得到所述目标语句对应的编码序列;将所述编码序列输入至预设语义完整模型,以得到所述目标语句的完整性概率;根据所述完整性概率,确定所述目标语句的语义完整性。
11.第二方面,提供一种音频断句装置,所述装置包括:第一判断模块,用于将多个按序排列的语句中的首个语句作为第一待分析语句,判断所述第一待分析语句的语义完整性,所述多个按序排列的语句为对多个按序排列的音频片段进行语音识别得到,所述多个按序排列的音频片段为对目标音频分割得到;第二判断模块,用于在所述第一待分析语句的语义完整的情况下,将所述第一待分析语句放入待输出区域,并将所述第一待分析语句的下一语句作为第二待分析语句,判断所述第二待分析语句的语义完整性;第三判断模块,用于在所述第二待分析语句的语义不完整的情况下,将所述第二待分析语句与所述待输出区域中的语句进行合并得到第一合并语句,判断所述第一合并语句的语义完整性;第四判断模块,同于在所述第一合并语句的语义不完整的情况下,输出所述待输出区域中的语句;将所述第二待分析语句的下一语句与所述第二待分析语句进行合并得到第二合并语句,并将所述第二合并语句作为所述第一待分析语句,执行所述判断所述第一待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
12.结合第二方面,在一种可能的设计中,所述第二判断模块还用于:在所述第一合并语句的语义完整的情况下,清空所述待输出区域中的语句,将所述第一合并语句放入所述待输出区域,并将所述第二待分析语句的下一个语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
13.结合第二方面,在一种可能的设计中,所述第二判断模块还用于:在所述第二待分
析语句的语义完整的情况下,输出所述待输出区域中的语句,将所述第二待分析语句放入所述待输出区域,并将所述第二待分析语句的下一个语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
14.结合第二方面,在一种可能的设计中,所述第一判断模块还用于:在所述第一待分析语句的语义不完整的情况下,将所述第一待分析语句与所述第一待分析语句的下一语句合并得到第三合并语句,将所述第三合并语句作为所述第一待分析语句,执行所述判断所述第一待分析语句的语义完整性的步骤。
15.结合第二方面,在一种可能的设计中,所述第二判断模块还用于:若所述第二合并语句的语句长度达到预设语句长度,则将所述第二合并语句放入所述待输出区域,并将第三待分析语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出;所述第三待分析语句为所述第二待分析语句的下一语句的下一语句。
16.结合第二方面,在一种可能的设计中,所述装置还包括预处理模块,用于获取所述目标音频,并识别所述目标音频中的静默音;根据所述静默音对所述目标音频进行分割,得到所述多个按序排列的音频片段;对所述多个按序排列的音频片段进行文字识别,得到多个按序排列的语句。
17.结合第二方面,在一种可能的设计中,所述装置还包括:预设语义完整模型,用于获取所述目标语句对应的字向量、句向量和位置向量;根据所述字向量、所述句向量以及所述位置向量,得到所述目标语句对应的编码序列;将所述编码序列输入至预设语义完整模型,以得到所述目标语句的完整性概率;根据所述完整性概率,确定所述目标语句的语义完整性。
18.第三方面,提供计算机设备,包括存储器以及一个或多个处理器,一个或多个处理器用于执行存储在存储器中的一个或多个计算机程序,一个或多个处理器在执行一个或多个计算机程序时,使得该计算机设备实现上述第一方面的音频断句方法。
19.第四方面,提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的音频断句方法。
20.本技术可以实现如下有益效果:本技术先判断第一待分析语句是否完整;若所述第一待分析语句完整,则判断第一待分析语句的下一句(第二待分析语句)是否完整;在第二待分析语句不完整的情况下,通过判断第一待分析语句与第二待分析语句拼接得到的第一合并语句是否完整,并在第一合并语句不完整的情况下,进一步判断第二待分析语句与第二待分析语句的下一语句拼接得到的第二合并语句是否完整;能够在考虑到每一个语句是否完整的情况下,进一步考虑相邻语句拼接后是否完整,从而实现在保证每个语句完整的情况下,进一步保证语句句意的完整性,以进一步提音频断句的准确性。
附图说明
21.图1为本技术实施例提供的一种音频断句方法的流程示意图;图2为本技术实施例提供的一种文本分割示意图;
图3为本技术实施例提供的一种音频断句装置的结构示意图;图4是是本技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
22.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
23.本技术的技术方案可适用于音频识别的各种场景,具体的,本技术的技术方案可用于在音频识别的场景中对长音频文件进行断句的场景。进一步的,在对长音频文件进行断句的场景中,在一些实现方式中,是先将该场景中的长音频文件处理成多个音频片段,并对多个音频片段进行文本转换后得到多个语句,然后通过对该场景中的多个语句进行语义完整性判别,从而确定多个语句是否为完整语句,以完成对长音频文件的断句。
24.为了便于理解本方案,先对本技术的技术构思进行解释。本技术的技术构思如下:在按照普通划分的方式对音频进行划分和语音识别得到多个语句后,按照语句的先后顺序依次判断语句的语义完整性,并根据前后两句语句各自的语义完整性情况来确定语句划分的策略,在确定出语义完整的第一语句的情况下,还根据该第一语句的下一语句的语义完整情况来确定是否输出该第一语句,避免因该下一语句属于第一语句的状语等情况而导致在直接将第一语句输出后再输出下一语句时该下一语句的语义不完整,从而可确保输出的每一语句均为语义完整的语句,以实现对句子的准确切分。
25.首先参见1所示的流程示意图,本技术提出一种音频断句方法,所述方法包括:步骤101,将多个按序排列的语句中的首个语句作为第一待分析语句。
26.其中,所述多个按序排列的语句为对多个按序排列的音频片段进行语音识别得到,所述多个按序排列的音频片段为对目标音频分割得到。所述多个按序排列的音频片段是指对所述目标音频进行分割得到多个音频片段后,不改变多个音频片段之间的位置关系,使多个音频片段仍按照在所述目标音频中的排列顺序进行排列。对应的,所述多个按序排列的语句是指与所述多个音频片段排列顺序一致的多个语句。
27.其中,获取到目标音频后,对所述目标音频进行切割得到多个按序排列的音频片段,然后对所述多个按序排列的音频片段进行语音识别,即进行文字转换,得到与所述多个按序排列的音频片段对应的多个按序排列的语句。具体地,可以通过卷积神经网络和连接性时序分类组成的语音转换模型对多个按序排列的音频片段进行语音识别。
28.具体的,目标音频为待断句音频,待断句音频可以是智能机器人、无人驾驶汽车等获取到的语音指令,也可以是移动终端、翻译终端、智能家居等人机交互设备获取到的音频信息,还可以是视频面试过程中获取到的音频信息,等等,本技术不做限制。在一些可能的情况中,目标音频还可以为对视频进行图像和声音的分离所得到的音频,或者,对视频进行声音录制所形成的音频。例如,目标音频可以为对视频面试过程中对图像和声音进行分离所得到的音频。
29.在一个实施例中,所述将多个按序排列的语句中的首个语句作为第一待分析语句之前,包括:获取所述目标音频,并识别所述目标音频中的静默音;根据所述静默音对所述目标音频进行分割,得到所述多个按序排列的音频片段;对所述多个按序排列的音频片段进行文字识别,得到多个按序排列的语句。
30.其中,静默音可以是指声音强度不高于预设分贝值的声音。在获取到目标音频后,
首先利用静默音初步切分长音频,将长音频切分为多个按序排列的音频片段,然后将切分得到的音频片段分别转换为文本形式的语句,一个音频片段对应一个语句。具体的,可以根据静默音的长短,以静默音持续时间超过预设时长的音频位置处作为切分点,将目标音频切分为多个按序排列的音频片段。例如,设定声音强度不高于-50dbfs的声音为静默音,将持续时长不低于1000ms设定为音频的切分条件,根据该切分条件,如果目标音频中,存在静默音,且静默音的持续时长大于1000ms,则以这段静默音作为切分点,将目标音频切分为两个音频片段;当目标音频中存在多段时序时长大于1000ms的静默音时,则可以将目标音频划分为多个音频片段。基于静默音对目标音频进行初步切分,能够有效的提升文本转换后得到的多个语句的质量,提升音频断句的效率与质量。
31.在一个实施例中,由于目标音频通常会存在“啊”、“嗯”、“呃”等语气停用词,而且“啊”、“嗯”、“呃”等语气停用词通常是在说话时产生停顿而发出的。通过静默音对音频初步断句并进行语音识别后,“啊”、“嗯”、“呃”等因停顿发出的语气停用词会被断句成单个的语句。因此在对多个按序排列的语句进行语音识别得到多个按序排列的语句后,还需要对多个语句进行筛选来去除语气停用词,以降低语气停用词对语句语义识别的影响,提高音频断句的准确性。具体的,获取用于存储语气停用词的语气停用词数据表,根据语气停用词数据表对多个语句进行筛选,识别出语气停用词对应的语句并删除。
32.在一个实施例中,由于在直播带货、面试、课程视频等行业,某些词语并非是常用的,语音识别不一定识别准确,需要利用词库进行纠错。因此在对多个按序排列的音频片段进行文字识别后,针对单独的一个字,如果识别出的繁体、不常见字等,先将其转化成拼音;然后遍历预先建立的领域-词汇垂直关系对应表,筛选出在特定领域中该拼音对应的字,从而将拼音转换成特定领域中的特定字。示例性的,“详情请见京东|易|卡的使用指南”,其中的“易”字不是常用的口语字,所以用拼音“yi”代替,然后因为这是京东的垂直领域,词库中有关键词“京东e卡”,与前后词匹配后满足条件,则同时合并前后满足条件的句子,变为“详情请见京东e卡的使用指南”。
33.步骤102,判断第一待分析语句的语义完整性。
34.其中,语义完整性用于指示语句的语义是否完整。具体的,一个能够表达完整语义的语句具有语义完整性,对应的,一个具有语义完整性的语句为完整语句;一个不能完整表达语义的语句不具有语义完整性,对应的,一个不具有语义完整性的语句为不完整语句。语句的语义是否完整具体可以是指语句的语法结构是否完整和/或语句能否独立表达完整的意思。
35.其中,可以通过语义完整模型判断第一待分析语句的语义完整性。有关于通过语义完整模型判断第一待分析语句的语义完整性的具体实施方式,可参考后续的描述。在第一待分析语句的语义完整的情况下,说明第一待分析语句为完整的一句话,可以作为完整语句进行输出,执行步骤103;在第一待分析语句的语义不完整的情况下,说明第一待分析语句为不完整语句,初步断句存在错误,执行步骤117。
36.步骤103,将第一待分析语句放入待输出区域。
37.其中,待输出区域用于存储等待输出的语句。
38.在第一待分析语句不为多个按序排列的语句中的最后一个语句的情况下,说明还未完成对每个语句的判断,还需分析后续的语句,执行步骤104;在第一待分析语句为多个
按序排列的语句中的最后一个语句的情况下,说明已经完成对每个语句的判断,执行步骤106。
39.步骤104,将第一待分析语句的下一语句作为第二待分析语句。
40.其中,第一待分析语句的下一语句是指在多个按序排列的语句中排列在该第一待分析语句之后的一个语句。
41.步骤105,判断第二待分析语句的语义完整性。
42.其中,可以通过语义完整模型判断第二待分析语句的语义完整性。有关于通过语义完整模型判断第二待分析语句的语义完整性的具体实施方式,可参考后续的描述。
43.如果第二待分析语句的语义完整,说明第二待分析语句与待输出区域中的语句为两个语义完整的独立语句,第二待分析语句不为第一待分析语句的状语等情况,则可以将待输出区域中的待输出语句作为一个完整的语句进行输出,即执行步骤106;如果第二待分析语句的语义不完整,则说明第二待分析语句与待输出区域中的语句可能为两个存在语义关联的语句,例如,第二待分析语句为待输出区域中的语句的状语结构,为了避免输出第二待分析语句时其语义不完整,需做进一步判断,执行步骤109。
44.步骤106,输出待输出区域中的语句。
45.其中,在待输出区域中的语句不包含多个按序排列的语句中的最后一个语句的情况下,说明多个按序排列的语句中还有语句未被输出,执行步骤107;在待输出区域中的语句包含多个按序排列的语句中的最后一个语句的情况下,说明多个按序排列的语句均被输出,结束流程。
46.步骤107,将第二待分析语句放入待输出区域。
47.在第二待分析语句不为多个按序排列的语句中的最后一句的情况下,说明还未完成对每个语句的判断,还需分析后续的语句,执行步骤108;在第一待分析语句为多个按序排列的语句中的最后一句的情况下,说明已经完成对每个语句的判断,执行106。
48.步骤108,将第二待分析语句的下一个语句作为第二待分析语句,执行步骤105。
49.步骤105-步骤108中,在所述第二待分析语句的语义完整的情况下,才输出所述待输出区域中的语句,能够避免因第二待分析语句为待输出区域中的语句的状态等情况而导致后续输出第二待分析语句时,第二待分析语句的语义不完整。在第二待分析语句的语义完整的情况下,将所述第二待分析语句放入所述待输出区域,并将所述第二待分析语句的下一个语句作为所述第二待分析语句,执行所述判断所述第二待分析语句的语义完整性的步骤,即步骤105,相当于是对新的一组语句(指前后两个语句)中的后一个语句进行语义完整性的判断,这样可使得待输出区域中输出的每个语句均是语义完整的语句。
50.步骤109,将第二待分析语句与待输出区域中的语句进行合并得到第一合并语句。
51.在一个实施例中,在将第二待分析语句与待输出区域中的语句进行合并得到第一合并语句后,还需要判断第一合并语句的语句长度是否达到预设语句长度,在第一合并语句的语句长度未达到预设语句长度的情况下,执行步骤110;在第一合并语句的语句长度达到预设语句长度的情况下,输出并清空待输出区域中的语句,然后将第二待分析语句放入待输出区域,最后将第二待分析语句的下一语句作为第二待分析语句,执行步骤105。通过判断合并后的语句长度能够避免语句冗长造成的运算卡顿,提升运算速度,也能够更加符合人们的语言习惯。
52.步骤110,判断第一合并语句的语义完整性。
53.其中,可以通过语义完整模型判断第一合并语句的语义完整性。有关于通过语义完整模型判断第一合并语句的语义完整性的具体实施方式,可参考后续的描述。
54.在第一合并语句的语义不完整的情况下,说明第二待分析语句与待输出区域中的语句不存在语义关联,即第二待分析语句为待输出区域中的语句的状语结构等情况,而属于新的语句的一部分,因此,可输出待输出区域中的语句,即执行步骤111;在所述第一合并语句的语义完整的情况下,说明第二待分析语句是与待输出区域中的语句存在关联,因此,需将第一合并语句作为一个完整的语句放入待输出区域中,即执行步骤115。
55.步骤111,输出并清空待输出区域中的语句,将第二待分析语句的下一语句与第二待分析语句进行合并得到第二合并语句。
56.在第二待分析语句(这里的第二待分析语句可以理解为语义完整的第一语句的下一语句)不完整的情况下,通过将第二待分析语句与待输出区域中的语句合并为第一合并语句后判断第一合并语句的语义完整性,完成对第二待分析语句与待输出区域中的语句的语义关联性判断,在第二待分析语句与待输出区域中的语句不存在语义关联的情况下才输出待输出区域中的语句,能够保证后续输出第二待分析语句时,第二待分析语句能够属于一句语义完整的语句的一部分输出。
57.步骤112,判断第二合并语句的语句长度是否达到预设语句长度。
58.其中,在第二合并语句的语句长度未达到预设语句长度的情况下,执行步骤113;在第二合并语句的语句长度达到预设语句长度的情况下,执行步骤114。通过判断合并后的语句长度能够避免语句冗长造成的运算卡顿,提升运算速度,也能够更加符合人们的语言习惯。
59.步骤113,将第二合并语句作为第一待分析语句,执行步骤102。
60.在第二合并语句的语句长度未达到预设语句长度的情况下,将第二合并语句作为第一待分析语句,相当于开始对新的一组语句中的前一个语句进行语义完整性的判断。
61.步骤114,将第二合并语句放入所述待输出区域,并将第三待分析语句作为所述第二待分析语句,执行步骤105。
62.其中,所述第三待分析语句为所述第二待分析语句的下一语句的下一语句。
63.步骤115,清空待输出区域中的语句,将第一合并语句放入待输出区域。
64.其中,在第一合并语句的语义完整的情况下,说明第一合并语句为完整语句,第二待分析语句是待输出区域中的语句的状语等结构,通过将第二待分析语句与待输出区域中的语句进行合并能够将第二待分析语句的语义补充完整,从而完成一次对初步断句的纠错。
65.步骤116,将第二待分析语句的下一个语句作为第二待分析语句,执行步骤105。
66.这里,将第二待分析语句的下一个局作为第二待分析语句,并执行判断第二待分析语句的语义完整性,相当于是对新的一组语句(指前后两个语句)中的后一个语句进行语义完整性判断,这样可使得待输出区域中输出的每个语句均是语义完整的语句。
67.步骤117,将第一待分析语句与所述第一待分析语句的下一语句合并得到第三合并语句,将第三合并语句作为第一待分析语句,执行步骤102。
68.通过将第一待分析语句与第二待分析语句合并,便对第一待分析语句完成一次语
义补充;通过对合并得到的第三合并语句进行语义完整性判断,便对对初始断句完成了一次验证、纠错,从而提升了断句的准确性。
69.可以理解的,若语义完整模型判断出第三合并语句的语义不完整,则将所述第三合并语句与第四待分析语句(所述第三待分析语句的下一语句)合并得到第四合并语句,将所述第四待分析语句作为所述第一待分析语句,重新执行步骤102。可见,若对第一待分析语句进行一次语义补充后仍不能构成完整语句,则在第一次语义补充的基础上,对第一待分析语句再一次进行语义补充,直至对第一待分析语句语义补充后能构成完整语句为止。
70.示例性的,以长音频“我现在/想吃西瓜/还有草莓”为例,包括“我现在”、“想吃西瓜”、“还有草莓”三个语句,“我现在”作为第一待分析语句被语义完整模型判断出语义不完整,则对第一待分析语句“我现在”进行语义补充,具体的,将第一待分析语句“我现在”与第二待分析语句“想吃西瓜”合并得到第三合并语句“我现在想吃西瓜”,语义完整模型判断出第三合并语句“我现在想吃西瓜”的语义完整,则将第三合并语句“我现在想吃西瓜”放入到待输出区域,作为待输出语句,并将所述第三待分析语句“还有草莓”作为所述第一待分析语句,重新执行所述判断所述第一待分析语句的语义完整性的步骤。本实施例中,通过将第一待分析语句“我现在”与第二待分析语句“想吃西瓜”合并,便对第一待分析语句“我现在”进行语义补充;通过对合并得到的第三合并语句“我现在想吃西瓜”进行语义完整性判断,便对初始断句完成了一次验证、纠错,从而提升了断句的准确性。
71.示例性的,以长音频“我现在/特别/特别的/想吃西瓜”为例,包括“我现在”、“特别”、“特别的”、“想吃西瓜”四个语句,“我现在”作为第一待分析语句被语义完整模型判断出语义不完整,则将第一待分析语句“我现在”与第二待分析语句“特别”合并得到第三合并语句“我现在特别”,语义完整模型判断出第三合并语句“我现在特别”的语义不完整,则将第三合并语句“我现在特别”与第四待分析语句“特别的”合并得到第四合并语句“我现在特别特别的”,并将所述第四待分析语句“我现在特别特别的”作为所述第一待分析语句,重新执行所述判断所述第一待分析语句的语义完整性的步骤。本实施例中,若对第一待分析语句“我现在”进行一次语义补充后仍不能构成完整语句,则在第一次语义补充的基础上,对第一待分析语句再一次进行语义补充,直至对第一待分析语句语义补充后能构成完整语句为止,至此,便可对初始断句完成了一次验证、纠错,从而提升了断句的准确性。
72.在一种具体示例中,可参见图2,如图2所示,通过图2所示的文本对本技术提出的技术方案进行示例性解释。图2为长音频“我想说的是嗯一个大家都听过的地方也就是重庆的磁器口”对应的文本,a、b、c、d、e、f、g为按序排列的多个语句。首先对所有分割后的语句进行预处理,语句b为语气停用词,被去掉。然后判断语句a的语义完整性,语义完整模型判断语句a不是完整的语句,则添加下一语句c到语句a,组成语句“ac”;语义完整模型判断语句“ac”不是一个完整的语句,则继续添加语句d到语句“ac”得到语句“acd”;语义完整模型判断语句“acd”是一个完整的语句,则将语句“acd”放入待输出区域;然后判断语句e,语义完整模型判断语句e不是完整的语句,则将语句e与待输出区域的语句“acd”合并得到语句“acde”;语义完整模型判断语句“acde”不是一个完整的语句,则将语句e合并下一语句f得到语句“ef”;语义完整模型判断语句“ef”是一个完整的语句,则输出待输出区域的的语句“acd”,并在待输出区域放入语句“ef”;接着判断语句g,语义完整模型判断语句g不是一个完整的语句,则将语句g和待输出区域的语句“ef”合并得到语句“efg”,语义完整模型判断
语句“efg”是一个完整的语句,则将语句“efg”放入待输出区域后,并输出待输出区域的语句“efg”。至此,长音频“我想说的是嗯一个大家都听过的地方也就是重庆的磁器口”便完成了断句,得到完整语句“我想说的是一个大家都听过的地方”以及完整语句“也就是重庆的磁器口”。
73.本技术先判断第一待分析语句是否完整;若所述第一待分析语句完整,则判断第一待分析语句的下一句(第二待分析语句)是否完整;在第二待分析语句不完整的情况下,通过判断第一待分析语句与第二待分析语句拼接得到的第一合并语句是否完整,并在第一合并语句不完整的情况下,进一步判断第二待分析语句与第二待分析语句的下一语句拼接得到的第二合并语句是否完整;能够在考虑到每一个语句是否完整的情况下,进一步考虑相邻语句拼接后是否完整,从而实现在保证每个语句完整的情况下,进一步保证语句句意的完整性,以进一步提音频断句的准确性。
74.在一个实施例中,本技术通过预设语义完整模型判断目标语句的语义完整性。其中,目标语句可以为上述图1实施例中需判断语义完整性的语句,具体地,所述目标语句可以为所述第一待分析语句、所述第二待分析语句或合并得到的语句,合并得到的语句可以为上述步骤109中的第一合并语句、步骤111中的第二合并语句或第三合并语句,等等。
75.通过预设语义完整模型判断目标语句的语义完整性,包括:获取所述目标语句对应的字向量、句向量和位置向量;根据所述字向量、所述句向量以及所述位置向量,得到所述目标语句对应的编码序列;将所述编码序列输入至预设语义完整模型,以得到所述目标语句的完整性概率;根据所述完整性概率,确定所述目标语句的语义完整性。
76.其中,字向量为一个语句中各个字的原始词向量,该向量既可以随机初始化,也可以利用word2vector等算法进行预训练以作为初始值。
77.其中,文本向量用于区别两个语句,可以理解为代表不同的语句。
78.其中,位置向量用于区别同一个字在不同位置的不同含义,由于同样的字出现在不同的位置,代表的意义不一样,(比如:“我爱你”和“你爱我”),因此模型对不同位置的字添加了一个不同的位置向量进行区分。
79.具体地,通过对目标语句对应的字向量、句向量和位置向量进行叠加,可得到目标语句对应的编码序列。在得到目标语句对应的编码序列后,可以将目标语句对应的编码序列与特定编码(指分类token[cls])一起作为语义完整性模型的输入,通过语义完整性模型对目标语句对应的编码序列与特定编码进行特征提取和语义完整性识别,可得到目标语句的完整性概率,语义完整性概率是指目标语句为完整语句的概率;如果目标语句的完整性概率大于或等于预设概率阈值,则确定目标语句的语义是完整的;如果目标语句的完整性概率小于预设概率阈值,则确定目标语句的语义是不完整的。
[0080]
在一种具体实施方式中,语义完整性模型可以包括双向编码深度表示(bidirectional encoder representation from transformers,bert)模型和深度神经网络(deepneuralnetwork,dnn)模型,其中,bert模型用于对目标语句对应的编码序列与特定编码进行特征提取,得到目标语句对应的语义特征;dnn模型用于根据目标语句对应的语义特征,得到目标语句的完整性概率。其中,在本实施例中,目标语句对应的语义特征可以为该特定编码对应的位置处的编码组件输出的特征向量;dnn模型可以包括全连接层、池化层、dropout。
[0081]
在一个实施例中,预设语义完整模型是预先训练得到的。在训练得到语义完整模型的过程中,通过从语音语料库中获取大量的语音语料,并对获取到的语音语料进行文字转换后得到的文本进行切割,得到大量语句;然后对每个语句打上对应的完整标性标签,最后将每个语句以及与每个语句对应的完整性标签输入至还未训练的语义完整模型中进行训练,使得训练后的语义完整模型能够基于每个语句输出的语句完整性判别结果与每个语句对应的完整性标签高度一致,从而令训练后的语义完整模型具备判别语句完整性的能力,具备判别语句完整性的能力的语义完整模型即可用于在音频识别场景中判断长音频信息进行文本转换后得到的多个语句的语义是否完整,从而确定多个语句是否为完整语句。在此基础上,使得本技术提出的技术方案能够完成对长音频信息的断句处理。
[0082]
在一个实施例中,对获取到的语音语料进行文字转换后得到的文本进行切割时,以逗号为切分点切分的语句作为正样本,正样本中的语句分别打上完整标签;随机从语句中切分的结果为负样本,负样本中的语句打上不完整标签。以采用one-hot编码为例,可以用(1,0)来作为正样本的标签,用(0,1)来作为负样本的标签。或者,也可以以1来代表正样本的类型,以0来代表负样本的类型。示例性的,“我爱吃水果,他爱吃蔬菜。”通过逗号切分得到的“我爱吃水果”、“他爱吃蔬菜”作为正样本,是完整的类型;随机从语句中切分得到的“我爱吃”、“吃水果,他”作为负样本,是不完整的类型;利用正负样本就可以训练得到一个判断语句是否完整的语义完整模型。
[0083]
本实施例中,通过在训练得到语义完整模型的过程,令训练后的语义完整模型具备判别语句完整性的能力,具体的,使得训练后的语义完整模型具备计算语句的语义完整性概率的能力。通过训练后的语义完整模型具备计算语句的语义完整性概率,并与预设阈值进行比较,若所述语义完整性概率大于预设阈值,则将所述目标语句输出为完整语句;若所述语义完整性概率不大于所述预设阈值,则将所述目标语句输出为非完整性语句。通过语义完整性概率,能够更加准确的来指示语句是否完整,并且通过设置概率阈值,能够根据实际需求设置不同的判断标准,提升本方案的适用范围。
[0084]
如图3所示,本技术提出一种音频断句装置,所述装置包括:第一判断模块501,用于将多个按序排列的语句中的首个语句作为第一待分析语句,判断所述第一待分析语句的语义完整性,所述多个按序排列的语句为对多个按序排列的音频片段进行语音识别得到,所述多个按序排列的音频片段为对目标音频分割得到。
[0085]
第二判断模块502,用于在所述第一待分析语句的语义完整的情况下,将所述第一待分析语句放入待输出区域,并将所述第一待分析语句的下一语句作为第二待分析语句,判断所述第二待分析语句的语义完整性。
[0086]
第三判断模块503,用于在所述第二待分析语句的语义不完整的情况下,将所述第二待分析语句与所述待输出区域中的语句进行合并得到第一合并语句,判断所述第一合并语句的语义完整性。
[0087]
第四判断模块504,同于在所述第一合并语句的语义不完整的情况下,输出所述待输出区域中的语句;将所述第二待分析语句的下一语句与所述第二待分析语句进行合并得到第二合并语句,并将所述第二合并语句作为所述第一待分析语句,执行所述判断所述第一待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
[0088]
在该装置中,先判断第一待分析语句是否完整;若所述第一待分析语句完整,则判
断第一待分析语句的下一句(第二待分析语句)是否完整;在第二待分析语句不完整的情况下,通过判断第一待分析语句与第二待分析语句拼接得到的第一合并语句是否完整,并在第一合并语句不完整的情况下,进一步判断第二待分析语句与第二待分析语句的下一语句拼接得到的第二合并语句是否完整;能够在考虑到每一个语句是否完整的情况下,进一步考虑相邻语句拼接后是否完整,从而实现在保证每个语句完整的情况下,进一步保证语句句意的完整性,以进一步提音频断句的准确性。
[0089]
如图4所示,图4是本技术实施例提供的一种计算机设备的结构示意图,该计算机设备60包括处理器601、存储器602。处理器601连接到存储器602,例如处理器601可以通过总线连接到存储器602。
[0090]
处理器601被配置为支持该计算机设备60执行图1-图4的方法中相应的功能。该处理器601可以是中央处理器(central processing unit,cpu),网络处理器(network processor,np),硬件芯片或者其任意组合。上述硬件芯片可以是专用集成电路(application specific integrated circuit,asic),可编程逻辑器件(programmable logic device,pld)或其组合。上述pld可以是复杂可编程逻辑器件(complex programmable logic device,cpld),现场可编程逻辑门阵列(field-programmable gate array,fpga),通用阵列逻辑(generic array logic,gal)或其任意组合。
[0091]
存储器602用于存储程序代码等。存储器602可以包括易失性存储器(volatile memory,vm),例如随机存取存储器(random access memory,ram);存储器602也可以包括非易失性存储器(non-volatile memory,nvm),例如只读存储器(read-only memory,rom),快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd);存储器602还可以包括上述种类的存储器的组合。
[0092]
在一些可能的情况中,处理器601可以调用所述程序代码以执行以下操作:将多个按序排列的语句中的首个语句作为第一待分析语句,判断所述第一待分析语句的语义完整性,所述多个按序排列的语句为对目标音频语音识别后得到的文本分割得到;在所述第一待分析语句的语义完整的情况下,将所述第一待分析语句放入待输出区域,并将所述第一待分析语句的下一语句作为第二待分析语句,判断所述第二待分析语句的语义完整性;在所述第二待分析语句的语义不完整的情况下,将所述第二待分析语句与所述待输出区域中的语句进行合并得到第一合并语句,判断所述第一合并语句的语义完整性;在所述第一合并语句的语义不完整的情况下,输出并清空所述待输出区域中的语句,将所述第二待分析语句的下一语句与所述第二待分析语句进行合并得到第二合并语句,并将所述第二合并语句作为所述第一待分析语句,执行所述判断所述第一待分析语句的语义完整性的步骤,直至所述多个按序排列的语句均被输出。
[0093]
需要说明的是,各个操作的实现还可以对应参照上述方法实施例的相应描述;所述处理器601还可以其他功能硬件配合执行上述方法实施例中的其他操作。
[0094]
本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时使所述计算机执行如前述实施例所述的方法。
[0095]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
[0096]
以上所揭露的仅为本技术较佳实施例而已,当然不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献