一种说话人分割方法、装置、设备和存储介质与流程
本申请涉及语音识别领域,特别是涉及一种说话人分割方法、装置、设备和存储介质。
背景技术:
在会议及电话会话场景中,当使用语音识别系统把会话语音转换为文字时,经常需要同时把说话人进行区分,这样才可以更好的对会话内容进行理解和进行后续处理。在对一段语音进行切分时,通常基于切分方案中的最小阈值进行,最小阈值对应的语音字数通常包括五至六个字,而对于更短的语音无法有效地进行切分。
技术实现要素:
为解决上述问题,本发明提出了一种说话人分割方法、装置、设备和存储介质,以提升短语音的切分稳定性,并提高整体语音的切分精度。
第一方面,本申请实施例提供一种说话人分割方法,所述方法包括:
确定语音信息中待进行说话人分割的语音的长度;
比较所述语音的长度与预设阈值之间的大小;
基于比较结果对所述语音进行语音段的划分;
确定划分后的语音的切分点;
基于所述切分点对语音中的说话人进行区分。
一个实施例中,所述基于比较结果对所述语音进行语音段的划分,包括:
确定所述语音的长度大于等于所述预设阈值时,基于第一组预设步长对所述语音的预设头部和预设尾部进行语音段的划分。
一个实施例中,所述基于第一组预设步长对所述语音的预设头部和预设尾部进行语音段的划分,包括:
基于多个不同的预设步长分别对所述语音的预设头部进行划分,对应得到不同长度语音段组成的预设头部语音;
基于所述多个不同的预设步长分别对所述语音的预设尾部进行划分,对应得到不同长度语音段组成的预设尾部语音;
其中,所述预设步长的长度均不大于广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值。
一个实施例中,所述确定划分后的语音的切分点,包括:
确定语音段划分后的预设头部语音内的切分点;
确定语音段划分后的预设尾部语音内的切分点;
确定除所述预设头部和预设尾部之外的中间段语音内的切分点。
一个实施例中,所述确定语音段划分后的预设头部或预设尾部语音内的切分点,包括:
利用glr距离切分法分别确定基于不同的预设步长进行语音段划分后的预设头部或预设尾部语音内的所有切分点;
将确定的所有切分点进行高斯建模,基于预设阈值判断是否存在满足条件的切分点;如果是,则确定满足条件的所述切分点为预设头部或预设尾部语音内的切分点。
一个实施例中,所述基于比较结果对所述语音进行语音段的划分,包括:
确定所述语音的长度小于所述预设阈值时,基于第二组预设步长对整段所述语音进行语音段的划分。
一个实施例中,所述基于第二组预设步长对整段所述语音进行语音段的划分,包括:
基于多个不同的预设步长分别对整段所述语音进行划分,对应得到不同长度语音段组成的所述语音;
其中,所述预设步长的长度均不大于广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值;所述预设步长中的最大值为整段所述语音长度的一半。
一个实施例中,所述确定划分后的语音的切分点,包括:
利用glr距离切分法分别确定基于不同的预设步长进行语音段划分后的整段语音内的所有切分点;
将确定的所有切分点进行高斯建模,基于预设阈值判断是否存在满足条件的切分点;如果是,则确定满足条件的所述切分点为所述语音的切分点。
第二方面,本申请实施例提供一种说话人分割装置,所述装置包括:
长度确定模块,用于确定语音信息中待进行说话人分割的语音的长度;
比较模块,用于比较所述语音的长度与预设阈值之间的大小;
划分模块,用于基于比较结果对所述语音进行语音段的划分;
切分点确定模块,用于确定划分后的语音的切分点;并基于所述切分点对语音中的说话人进行区分。
第三方面,本申请实施例提供一种说话人分割设备,包括:
一个或多个处理器;
与所述一个或多个处理器通信连接的存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
这样,可实现对较短词语组成的语音进行有效切分,提升短语音的切分稳定性,有效对说话人进行分割,相应提高整体语音的切分精度。
此外,对于语音的长度大于等于所述预设阈值的情况,本发明实施例仅对语音的预设头部和预设尾部进行更精细的语音段划分以获得更精细的切分点,而对中间段语音仍采用传统的说话人切分方案,既保留了原有切分的稳定性,又可提升短语音的切分稳定性,且增加的计算量不大,由于glr距离切分法的计算速度快,增加的计算对整个切分过程影响很小。
附图说明
图1为本发明实施例说话人分割方法的实现流程示意图;
图2为本申请实施例说话人分割方法在一具体应用场景的示意图;
图3为本申请实施例说话人分割方法在另一具体应用场景的示意图;
图4为本发明实施例说话人分割装置的结构示意图;
图5本发明实施例说话人分割设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
在对一段语音进行切分时,通常基于切分方案中的最小阈值(通常1.5s)进行,如果小于这个值就会导致后续的聚类精度明显下降。也就是说最小的语音段都是大于或等于1.5s。然而1.5s时长的语音通常包括五至六个字。在电话场景中,某一方的回答经常只有一至两个字。所以,对于这种更短的语音无法有效地进行切分。
基于此,本申请实施例提供了一种说话人分割方法、装置、设备和存储介质;具体地,图1为本发明实施例说话人分割方法的实现流程示意图,如图1所示,所述方法包括:
步骤101:确定语音信息中待进行说话人分割的语音的长度;
这里,在会议或电话会话等场景中,可由语音识别系统对外部输入的待识别的语音(将语音转换为文字,并进行说话人分割处理)的长度进行判断。
步骤102:比较所述语音的长度与预设阈值之间的大小;
这里,所述预设阈值可根据经验值进行设定,例如:在实际对话场景中,会出现一两个字组成的短语,如“您好”“是的”“再见”等词语,该类词语通常出现在较长语音的开头或结尾,因此,可以基于语音的开头或结尾的长度来设置所述预设阈值,如6s。
步骤103:基于比较结果对所述语音进行语音段的划分;
步骤104:确定划分后的语音的切分点;
步骤105:基于所述切分点对语音中的说话人进行区分。
本发明一个实施例中,所述基于比较结果对所述语音进行语音段的划分,可为:
确定所述语音的长度大于等于所述预设阈值时,基于第一组预设步长对所述语音的预设头部和预设尾部进行语音段的划分。
在实际应用过程中,所述基于第一组预设步长对所述语音的预设头部和预设尾部进行语音段的划分,可为:
基于多个不同的预设步长分别对所述语音的预设头部进行划分,对应得到不同长度语音段组成的预设头部语音;
基于所述多个不同的预设步长分别对所述语音的预设尾部进行划分,对应得到不同长度语音段组成的预设尾部语音;
其中,所述预设步长的长度均不大于广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值。
这里,所述第一组预设步长中的预设步长个数及大小可基于经验进行设置(保证切分的稳定性)。所述广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值通常为1.5s,则所述预设步长的长度可设为:0.5s,0.6s,0.7s等等。
在一个具体实施例中,所述预设头部和预设尾部的长度可设为3s,相应的,基于多个不同的预设步长分别对所述语音的预设头部进行划分,可为:分别基于0.5s的步长对所述语音的前3s(预设头部)进行划分,得到长度分别为0.5s的语音段组成的预设头部语音;
基于相同方法,分别基于0.6s、0.7s等等对所述语音的前3s进行划分,得到长度分别为0.6s、0.7s等等的语音段组成的预设头部语音。
此外,关于预设尾部的划分与预设头部的划分方法相同,即:基于所述0.5s,0.6s,0.7s等等步长对所述语音的后3s(预设尾部)进行划分,得到长度分别为0.5s、0.6s、0.7s等等的语音段组成的预设尾部语音。
一个实施例中,对于语音的长度大于等于所述预设阈值的情况,所述确定划分后的语音的切分点,包括:
确定语音段划分后的预设头部语音内的切分点;
确定语音段划分后的预设尾部语音内的切分点;
确定除所述预设头部和预设尾部之外的中间段语音内的切分点。
这里,对于语音的长度大于等于所述预设阈值时,分别对所述预设头部的语音、预设尾部的语音以及中间段语音进行切分点的确定。
一个实施例中,所述确定语音段划分后的预设头部或预设尾部语音内的切分点,可为:
利用glr距离切分法分别确定基于不同的预设步长进行语音段划分后的预设头部或预设尾部语音内的所有切分点;
将确定的所有切分点进行高斯建模,基于预设阈值判断是否存在满足条件的切分点;如果是,则确定满足条件的所述切分点为预设头部或预设尾部语音内的切分点。
这里,对于中间段语音,由于其中包括的短语句较少,为了保证切分的稳定性,本实施例采用传统的切分方法进行切分来确定切分点,整个语音在确定切分点的过程中相应增加的计算量不大。所述传统的切分法可为:glr距离切分法、贝叶斯信息准则(bic)距离切分法和硬切分法。
本发明另一个实施例中,所述基于比较结果对所述语音进行语音段的划分,可为:
确定所述语音的长度小于所述预设阈值时,基于第二组预设步长对整段所述语音进行语音段的划分。
在实际应用过程中,所述基于第二组预设步长对整段所述语音进行语音段的划分,可为:
基于多个不同的预设步长分别对整段所述语音进行划分,对应得到不同长度语音段组成的所述语音;
其中,所述预设步长的长度均不大于广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值;所述预设步长中的最大值为整段所述语音长度的一半。
这里,所述第二组预设步长中的预设步长个数及大小可基于经验进行设置。所述广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值通常为1.5s,则所述预设步长的长度可设为:0.5s,0.6s,0.7s等等。如果整段所述语音的长度为m,则所述预设步长的最大值为m/2。
这里,由于整段语音较短,利用所述第二组预设步长直接对整段语音进行划分即可,也可将整段语音看成由预设头部和预设尾部组成(相对上面的一个实施例不存在中间段语音),相应的切分点的确定如下所述:
本发明实施例中,对于语音的长度小于所述预设阈值的情况,所述确定划分后的语音的切分点,包括:
利用glr距离切分法分别确定基于不同的预设步长进行语音段划分后的整段语音内的所有切分点;
将确定的所有切分点进行高斯建模,基于预设阈值判断是否存在满足条件的切分点;如果是,则确定满足条件的所述切分点为所述语音的切分点。
本发明实施例基于语音的长度实现对语音进行语音段的划分,对经过精细划分后的语音进行切分点确定,可实现对较短词语组成的语音(长语句的头部和尾部)有效切分,提升短语音的切分稳定性,有效对说话人进行分割,相应提高整体语音的切分精度。
此外,对于语音的长度大于等于所述预设阈值的情况,本发明实施例仅对语音的预设头部和预设尾部进行更精细的语音段划分以获得更精细的切分点,而对中间段语音仍采用传统的说话人切分方案,既保留了原有切分的稳定性,又可提升短语音的切分稳定性,且增加的计算量不大,由于glr距离切分法的计算速度快,增加的计算对整个切分过程影响很小。
下面结合场景实施例对本发明进行描述。
实施例一
图2为本发明实施例说话人分割方法在一具体应用场景的示意图,该实施例中所述语音长度较大,设大于等于预设阈值(6s)如图2所示,该方法包括:
步骤201:基于0.5s,0.6s,0.7s…1.5s的长度分别对语音的头3s和后3s进行分段;
步骤202:对不同分段后的头3s和后3s语音利用glr距离切分法寻找并记录所有切分点;
步骤203:将所有切分点进行高斯建模;
步骤204:根据预设阈值判断是否存在满足条件的切分点,如果存在,则确定头3s或后3s存在切分点(需进行说话人切分);否则,确定头3s或后3s不存在切分点(不需进行说话人切分);
步骤205:剩余中间段语音用传统切分方法进行切分,此处不再详述。
实施例二
图3为本发明实施例说话人分割方法在另一具体应用场景的示意图,该实施例中所述语音长度较小,设小于预设阈值(6s)如图2所示,该方法包括:
步骤301:基于0.5s,0.6s,0.7s…m/2s的长度分别对整段语音进行分段;
步骤302:对不同分段后的整段语音利用glr距离切分法寻找并记录所有切分点;
步骤303:将所有切分点进行高斯建模;
步骤304:根据预设阈值判断是否存在满足条件的切分点,如果存在,则确定整段语音存在切分点(需进行说话人切分);否则,确定该段语音不存在切分点(不需进行说话人切分)。
本申请实施例还提供了一种说话人分割装置,如图4所示,所述装置包括:
长度确定模块401,用于确定语音信息中待进行说话人分割的语音的长度;
比较模块402,用于比较所述语音的长度与预设阈值之间的大小;
划分模块403,用于基于比较结果对所述语音进行语音段的划分;
切分点确定模块404,用于确定划分后的语音的切分点;并基于所述切分点对语音中的说话人进行区分。
一个实施例中,所述划分模块403,还用于确定所述语音的长度大于等于所述预设阈值时,基于第一组预设步长对所述语音的预设头部和预设尾部进行语音段的划分。
一个实施例中,所述划分模块403,还用于
基于多个不同的预设步长分别对所述语音的预设头部进行划分,对应得到不同长度语音段组成的预设头部语音;
基于所述多个不同的预设步长分别对所述语音的预设尾部进行划分,对应得到不同长度语音段组成的预设尾部语音;
其中,所述预设步长的长度均不大于广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值。
一个实施例中,所述切分点确定模块404,还用于
确定语音段划分后的预设头部语音内的切分点;
确定语音段划分后的预设尾部语音内的切分点;
确定除所述预设头部和预设尾部之外的中间段语音内的切分点。
一个实施例中,所述切分点确定模块404,还用于
利用glr距离切分法分别确定基于不同的预设步长进行语音段划分后的预设头部或预设尾部语音内的所有切分点;
将确定的所有切分点进行高斯建模,基于预设阈值判断是否存在满足条件的切分点;如果是,则确定满足条件的所述切分点为预设头部或预设尾部语音内的切分点。
一个实施例中,所述划分模块403,还用于确定所述语音的长度小于所述预设阈值时,基于第二组预设步长对整段所述语音进行语音段的划分。
一个实施例中,所述划分模块403,还用于
基于多个不同的预设步长分别对整段所述语音进行划分,对应得到不同长度语音段组成的所述语音;
其中,所述预设步长的长度均不大于广义对数似然比glr距离切分法或贝叶斯信息准则距离切分法中的切分最小阈值;所述预设步长中的最大值为整段所述语音长度的一半。
一个实施例中,所述切分点确定模块404,还用于
利用glr距离切分法分别确定基于不同的预设步长进行语音段划分后的整段语音内的所有切分点;
将确定的所有切分点进行高斯建模,基于预设阈值判断是否存在满足条件的切分点;如果是,则确定满足条件的所述切分点为所述语音的切分点。
这里需要指出的是:以上装置实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
本申请实施例还提供了一种说话人分割设备,包括:一个或多个处理器;与所述一个或多个处理器通信连接的存储器;一个或多个应用程序;其中,所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
在一具体示例中,本申请实施例所述的说话人分割设备可具体为如图5所示的结构,所述说话人分割设备至少包括处理器51、存储介质52以及至少一个外部通信接口53;所述处理器51、存储介质52以及外部通信接口53均通过总线54连接。所述处理器51可为微处理器、中央处理器、数字信号处理器或可编程逻辑阵列等具有处理功能的电子元器件。所述存储介质中存储有计算机可执行代码,所述计算机可执行代码能够执行以上任一实施例所述的方法。在实际应用中,所述检测单元41以及处理单元42均可以通过所述处理器51实现。
这里需要指出的是:以上说话人分割设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明说话人分割设备实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
本申请实施例还提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
这里,计算机可读存储介质可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读存储介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。
上述所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除