首页 > 乐器声学 专利正文
一种区分说话人的方法和系统与流程

时间:2022-02-17 阅读: 作者:专利查询

一种区分说话人的方法和系统与流程

1.本说明书涉及语音识别领域,特别涉及一种区分说话人的方法和系统。


背景技术:

2.在语音识别技术中,区分说话人对通话质量检测、场景分析、语音识别自适应等都有重要实用价值。例如:将客服电话录音分成客服和客户声音,将会议录音分成不同说话人的说话片段,对技术的应用都会产生关键性的影响。现有的区分说话人的方法包括通过语音识别获取音频的内容,根据说话人区分技术获取音频中什么人在什么时间说话,然后将两者的结果整合,获取音频中每个说话人的说话时间和说话内容,该方法常发生语音识别的内容被遗漏或被错误分割的现象。
3.因此,有必要提出一种区分说话人的方法,可以将语音识别和声纹识别相结合,提升区分说话人的准确率。


技术实现要素:

4.本说明书实施例之一提供一种区分说话人的方法,所述方法包括:获取语音文件,所述语音文件包含至少两个不同说话人的语音帧;通过语音识别模型对所述语音文件进行处理,得到至少一段有效语音帧片段;通过声纹特征提取模型对所述至少一段有效语音帧片段进行处理,得到所述至少两个不同说话人的语音帧对应的至少两个声纹特征向量;对所述至少两个声纹特征向量进行聚类处理,得到至少两个不同说话人结果;以及基于转换点,对所述两个不同说话人结果进行优化,其中所述转换点连接所述至少两个声纹特征向量中两个不同的声纹特征向量。
5.本说明书实施例之一提供一种区分说话人的系统,所述系统包括:获取模块,用于获取语音文件,所述语音文件包含至少两个不同说话人的语音帧;语音处理模块,用于通过语音识别模型对所述语音文件进行处理,得到至少一段有效语音帧片段;声纹特征提取模块,用于通过声纹特征提取模型对所述至少一段有效语音帧片段进行处理,得到所述至少两个不同说话人的语音帧对应的至少两个声纹特征向量;聚类模块,用于对所述至少两个声纹特征向量进行聚类处理,得到至少两个不同说话人结果;以及优化模块,用于基于转换点,对所述两个不同说话人结果进行优化,其中所述转换点连接所述至少两个声纹特征向量中两个不同的声纹特征向量。
6.本说明书实施例之一提供一种区分说话人的装置,包括处理器,所述处理器用于执行区分说话人的方法。
7.本说明书实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行区分说话人的方法。
附图说明
8.本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进
行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
9.图1是根据本说明书一些实施例所示的区分说话人系统的应用场景示意图;
10.图2是根据本说明书一些实施例所示的区分说话人方法的示例性流程图;
11.图3是根据本说明书一些实施例所示的处理语音文件方法的示例性流程图;
12.图4是根据本说明书一些实施例所示的得到有效语音帧片段方法的示例性流程图;
13.图5是根据本说明书一些实施例所示的区分说话人方法的示例性模块图。
具体实施方式
14.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
15.应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
16.如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
17.本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
18.图1是根据本说明书一些实施例所示的区分说话人系统的示例性应用场景图。在一些实施例中,如图1所示,区分说话人系统的应用场景100可以包括至少两个说话人110、通话设备120、网络130、存储设备140和处理器150。
19.在一些实施例中,说话人110可以包括一段语音音频中说话的人,例如,客服电话录音中的客服和客户、会议录音中的多个参会人员。在一些实施例中,语音音频可以包括一定时长的声音片段,如1分钟、半小时等。在一些实施例中,语音音频可以为任意音频格式的文件,如mp3、wav、flc等。
20.在一些实施例中,通话设备120可以是具有通话功能的设备,用于为说话人110提供通话功能。在一些实施例中,通话设备120可以包括个人电话120

1、公共电话120

2、移动设备120

3、平板电脑120

4、笔记本电脑120

5、可穿戴设备120

6、车载设备120

7等或其任意组合。在一些实施例中,移动设备120

3可以包括智能家居设备、智能移动设备、虚拟现实设备、增强现实设备等或其任意组合。智能移动设备可以包括智能手机、个人数字助理(pda)、游戏设备、导航设备、销售点(pos)设备等或其任意组合。虚拟现实设备或增强现实
设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等或其任意组合。在一些实施例中,可穿戴设备120

6可以包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能服装、智能背包、智能配件等或其任意组合。在一些实施例中,车载设备120

7可以包括车载计算机、车载电视等。
21.网络130可以用于促进信息和/或数据的交换。在一些实施例中,场景100中的一个或多个组件(例如,通话设备120、存储设备140、处理设备150)可以通过网络130向/从场景100中的其他组件发送和/或接收信息和/或数据。例如,处理设备150可以通过网络130从通话设备120和/或存储设备140获取通话数据。在一些实施例中,网络130可以为任意形式的有线或无线网络或其任意组合。仅作为示例,网络130可以包括缆线网络、有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网(lan)、广域网(wan)、无线局域网(wlan)、城域网(man)、公共交换电话网络(pstn)、蓝牙网络、紫蜂网络、近场通讯(nfc)网络、全球移动通讯系统(gsm)网络、码分多址(cdma)网络、时分多址(tdma)网络、通用分组无线服务(gprs)网络、增强数据速率gsm演进(edge)网络、宽带码分多址接入(wcdma)网络、高速下行分组接入(hsdpa)网络、长期演进(lte)网络、用户数据报协议(udp)网络、传输控制协议/互联网协议(tcp/ip)网络、短讯息服务(sms)网络、无线应用协议(wap)网络、超宽带(uwb)网络、移动通信(1g、2g、3g、4g、5g)网络、wi

fi、li

fi、窄带物联网(nb

iot)等或其任意组合。
22.在一些实施例中,网络130可以包括一个或以上网络接入点。例如,网络130可以包括有线或无线网络接入点(例如,基站和/或网际网络交换点130

1、130

2、

),通过这些接入点,场景100的一个或以上组件可以通过其连接到网络130以交换数据和/或信息。
23.在一些实施例中,存储设备140可存储数据和/或指令。在一些实施例中,存储设备140可存储从通话设备120和/或处理设备150等组件获取的数据/信息。在一些实施例中,存储设备140可以存储由处理设备150执行或使用以完成本说明书中描述的示例性方法的数据和/或指令。
24.在一些实施例中,存储设备140可以包括大容量存储器、可移动存储器、随机存储器(ram)、只读存储器(rom)等或其任意组合。示例性的大容量储存器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性随机存储器可包括动态ram(dram)、双倍速率同步动态ram(ddr sdram)、静态ram(sram)、闸流体ram(t

ram)、零电容ram(z

ram)等。示例性只读存储器可以包括掩模rom(mrom)、可编程rom(prom)、可擦除可编程rom(perom)、电子可擦除可编程rom(eeprom)、光盘rom(cd

rom)、数字通用磁盘rom等。在一些实施例中,存储设备140可以通过云平台实现。仅作为示例,云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
25.在一些实施例中,存储设备140可以连接到网络130以与场景100中的一个或以上组件(例如,通话设备120、处理设备150)通信。场景100中的一个或以上组件可以通过网络130访问存储设备140中存储的数据或指令。在一些实施例中,存储设备140可以与场景100中的一个或以上组件(例如,通话设备120、处理设备150)直接连接或通信。在一些实施例中,存储设备140可以是通话设备120或处理设备150的一部分。在一些实施例中,存储设备140可以集成在通话设备120中。
26.在一些实施例中,处理设备150可以处理从通话设备120和/或存储设备140获得的
数据和/或信息。在一些实施例中,处理设备150可以是单个的服务器或者服务器群。服务器群可以是集中式的或分布式的(例如,处理设备150可以是分布式系统)。在一些实施例中,处理设备150可以是本地的或远程的。例如,处理设备150可以通过网络130访问存储在通话设备120和/或存储设备140中的信息和/或数据。再例如,处理设备150可以直接连接到通话设备120和/或存储设备140以访问存储的信息和/或数据。在一些实施例中,处理设备150可以通过云平台实现。仅作为示例,云平台可以包括私有云、公共云、混合云、社区云、分布云、云之间、多重云等或其任意组合。
27.在一些实施例中,处理设备150可以包括一个或多个处理设备(例如,单核处理器或多核处理器)。仅作为示例,处理设备150可以包括一个或多个硬件处理器,例如,中央处理器(cpu)、专用集成电路(asic)、专用指令集处理器(asip)、图像处理器(gpu)、物理运算处理器(ppu)、数字信号处理器(dsp)、现场可编辑门阵列(fpga)、可编辑逻辑器件(pld)、控制器、微控制器单元、精简指令集计算机(risc)、微处理器等或其任意组合。在一些实施例中,处理设备150可以集成在通话设备120中。
28.需要注意的是,上述对于区分说话人系统的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个组件进行任意组合,或者构成子系统与其他组件连接。
29.图2是根据本说明书一些实施例所示的区分说话人方法的示例性流程图。如图2所示,流程200包括下述步骤。在一些实施例中,流程200可以由处理设备(例如,处理器150)执行。
30.步骤210,获取语音文件,语音文件包含至少两个不同说话人的语音帧。在一些实施例中,步骤210可以通过获取模块510执行。
31.在一些实施例中,获取模块510可以获取语音文件,其中语音文件包含至少两个不同说话人的语音帧。
32.在一些实施例中,语音文件可以是指存放音频数据的文件,音频数据可以是指通过声音录入设备录制的原始声音。在一些实施例中,语音文件可以存在于多种不同的格式,例如无损格式,如wav、flac、ape、alac、wavpack等,又例如有损格式,如mp3、aac、ogg vorbis、opus等。在一些实施例中,本技术对语音文件的参数(如音频文件格式、采样位宽、声道、采样率、时长等)不做限制。
33.在一些实施例中,语音文件的获取方法可以包括:采用固定的时间间隔,对音频电压采样,并将采样结果以某种分辨率(例如,cdda每个采样为16比特或2字节)存储。
34.在一些实施例中,语音文件可以包含至少两个不同说话人的语音帧。在一些实施例中,说话人是指在一段语音文件中讲话的人。例如,在一段客服电话录音中有两个讲话的人,为客服和客户。又例如,在一段会议录音中有5个讲话的员工。
35.步骤220,通过语音识别模型对语音文件进行处理,得到至少一段有效语音帧片段。在一些实施例中,步骤220可以通过语音处理模块520执行。
36.在一些实施例中,语音处理模块520可以通过语音识别模型对语音文件进行处理,得到至少一段有效语音帧片段。
37.在一些实施例中,语音识别模型可以是指处理自然语言的模型。在一些实施例中,
语音识别模型可以包括神经网络模型,如循环神经网络(recurrent neural networks,rnn)模型、长短期记忆网络(long short term memory,lstm)模型、n

gram语言模型等。
38.在一些实施例中,有效语音帧片段可以是指从一段语音文件中剔除静音和噪声帧片段后进行切割和/或合并后的有说话内容的音频帧片段。
39.关于得到至少一段有效语音帧片段的描述可以参见图3,在此不再赘述。
40.步骤230,通过声纹特征提取模型对至少一段有效语音帧片段进行处理,得到至少两个不同说话人的语音帧对应的至少两个声纹特征向量。在一些实施例中,步骤230可以通过声纹特征提取模块530执行。
41.在一些实施例中,声纹特征提取模块530可以通过声纹特征提取模型对至少一段有效语音帧片段进行处理,得到至少两个不同说话人的语音帧对应的至少两个声纹特征向量。
42.在一些实施例中,语音可以在声纹图谱上基于语音的物理属性(如音质、音长、音强和音高等)呈现不同的声纹特征,声纹特征向量是指可以表征声纹特征的向量。
43.在一些实施例中,声纹特征提取模型可以是指用于提取语音帧片段中声纹特征向量的模型。在一些实施例中,声纹特征提取模型可以包括但不限于i

vector模型和x

vector模型。
44.在一些实施例中,可以通过声纹特征提取模型对至少一段有效语音帧片段进行处理,得到至少两个不同说话人的语音帧对应的至少两个声纹特征向量。具体地,将至少一段有效语音帧片段输入声纹特征提取模型,声纹特征提取模型对每一段有效语音帧片进行声纹特征识别和提取,输出至少一段有效语音帧片段的声纹特征向量。
45.在一些实施例中,声纹特征向量可以通过声纹特征提取模型基于预设周期对有效语音帧片段提取预设长度的向量得到。例如,声纹特征提取模型可以每1.5秒对有效语音帧片段提取256位的向量作为声纹特征向量。在一些实施例中,声纹特征提取模型的两个相邻采样区域之间可以有半个周期(即半个采样区域,如0.75秒)相互重叠。在一些实施例中,当有效语音帧片段的时长大于预设周期(如大于1.5秒)时,计算声纹特征提取模型采集到的多个声纹特征向量的平均值,作为声纹特征向量。
46.步骤240,对至少两个声纹特征向量进行聚类处理,得到至少两个不同说话人结果。在一些实施例中,步骤240可以通过聚类模块540执行。
47.在一些实施例中,聚类模块540可以对至少两个声纹特征向量进行聚类处理,得到至少两个不同说话人结果。
48.在一些实施例中,说话人结果可以包括说话人和与说话人对应的声纹特征向量。在一些实施例中,说话人是指一段语音文件中的说话人身份,如说话人a、说话人b、说话人1和说话人2。
49.在一些实施例中,聚类模块540可以基于至少两个声纹特征向量中每对声纹特征向量之间的相似度,对至少两个声纹特征向量进行无监督聚类处理,得到至少两个不同说话人结果。具体地,聚类模块540可以计算至少两个声纹特征向量中的每两个之间的相似度,基于计算得到的相似度进行无监督聚类,得到多个聚类中心,聚类中心用于表征不同说话人的基准声纹特征,并标记对应的说话人身份。
50.在一些实施例中,聚类模块540可以基于至少两个不同说话人结果将至少两个声
纹特征向量进行归类。具体地,聚类模块540可以将属于不同说话人的声纹特征向量归类至对应的说话人,例如,将声纹特征向量a1和a2归类至说话人a,将声纹特征向量b1、b2和b3归类至说话人b。
51.步骤250,基于转换点,对两个不同说话人结果进行优化,其中转换点连接至少两个声纹特征向量中两个不同的声纹特征向量。在一些实施例中,步骤250可以通过优化模块550执行。
52.在一些实施例中,优化模块550可以基于转换点,对两个不同说话人结果进行优化,其中转换点连接至少两个声纹特征向量中两个不同的声纹特征向量。
53.在一些实施例中,当两个不同说话人结果之间存在重叠部分,这个两个不同说话人结果之间的中点位置为转换点。例如,将一段有效语音划分为若干片段,如以1.5秒为一段进行划分,相邻两个语音片段会有0.75秒的重合,如一段有效语音的长度为6秒,可以划分出7个语音片段a1、a2、b3、b4、b5、b6和b7,根据这7个语音片段可以得到7个声纹特征向量,对这7个声纹特征向量进行步骤240中的聚类处理,可以得到前3个片段a1、a2和a3属于说话人a,后4个片段b3、b4、b5、b6和b7属于说话人b,其中第3个和第4个片段有重叠的部分,则第3个和第4个片段的中间位置为转换点。
54.在一些实施例中,当转换点上对应了语音识别结果中的某个词,优化模块550可以基于转换点,对两个不同说话人结果进行优化。具体地,若转换点上对应的语音识别结果中的某个词存在对应说话人结果上的歧义,例如,对于语音片段“我们都爱吃西红柿是一个不错的水果”,其中聚类结果为:“我们都爱吃西红柿”对应说话人a,“西红柿是一个不错的水果”对应说话人b,这两个片段中的转换点对应的词为“西红柿”,该词在对应说话人结果上存在歧义,优化模块550可以进一步地判断该词对应哪一个说话人结果。
55.在一些实施例中,优化模块550可以基于时间连续性对两个不同说话人结果进行优化。具体地,每个词都有对应的开始时间和结束时间,优化模块550可以基于时间的连续性对转换点对应的词进行判别。例如,上述例子中的“吃”和“西红柿”两个词在时间上是连续的,且“吃”这个词无歧义,即不对应多个说话人结果,同时“西红柿”和“是”在时间上是不连续的,则优化模块550可以判别“西红柿”这个词对应说话人a。又例如,“吃”和“西红柿”两个词在时间上是不连续的,同时“西红柿”和“是”在时间上是连续的,且“是”这个词无歧义,则优化模块550可以判别“西红柿”这个词对应说话人b。再例如,若各词在时间上均是连续的,且各词均无歧义,则优化模块550可以基于时间占比进行判别,如“西红柿”这个词在大部分时间在a3中,则优化模块550可以判别“西红柿”这个词对应说话人a。
56.在一些实施例中,优化模块550可以基于声纹信息对两个不同说话人结果进行优化。具体地,优化模块550可以基于每个说话人结果选取一段语音片段并提取该语音片段的声纹信息,将该声纹信息记为对应说话人结果的类声纹特征,对于在说话人结果上存在歧义的一个或多个词,优化模块550可以提取该存在歧义的一个或多个词将所处的语音片段的声纹特征,然后将该声纹特征与所有的类声纹特征进行对比,选取相似度最高的类声纹特征作为优化后的说话人结果。
57.在一些实施例中,优化模块550可以优先选择基于时间连续性对两个不同说话人结果进行优化,若无法得到判别结果,则可以基于声纹信息对两个不同说话人结果进行进一步的优化。
58.应当注意的是,上述有关流程200的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程200进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
59.图3是根据本说明书一些实施例所示的处理语音文件方法的示例性流程图。如图3所示,流程300包括下述步骤。在一些实施例中,流程300可以由处理设备(例如,处理器150)执行。
60.步骤310,通过语音识别模型对语音文件进行处理,得到语音文件的分词结果,分词结果包括语音文件的字词信息和时间信息。在一些实施例中,步骤310可以通过语音处理模块520执行。
61.在一些实施例中,分词结果可以包括语音文件的字词信息和时间信息。在一些实施例中,字词信息是指语音文件中语音音频对应的字词内容。在一些实施例中,时间信息是指每个字词内容的开始时间和结束时间。
62.在一些实施例中,语音处理模块520可以通过语音识别模型对语音文件进行处理,得到语音文件的分词结果。具体地,可以将语音文件输入语音识别模型,语音识别模型对语音文件进行语音识别处理,输出语音文件的字词信息和时间信息。
63.在一些实施例中,语音识别模型可以通过多个有标签的第一训练样本训练得到。例如,可以将多个带有标签的语音文本样本输入初始语音识别模型,通过标签和初始语音识别模型的结果构建损失函数,基于损失函数迭代更新初始语音识别模型的参数。当初始语音识别模型的损失函数满足预设条件时模型训练完成,得到训练好的语音识别模型。其中,预设条件可以是损失函数收敛、迭代的次数达到阈值等。
64.在一些实施例中,第一训练样本至少可以包括样本语音文件。标签可以表征样本语音文件的字词信息和时间信息。标签可以基于数据库中的历史语音文件,标签也可以人工标注。
65.步骤320,基于语音文件和分词结果,得到有效语音帧片段。在一些实施例中,步骤320可以通过语音处理模块520执行。
66.在一些实施例中,有效语音帧片段可以是指基于语音文件和语音文件的分词结果,对语音文件进行扩帧、相近帧片段合并、切割无效语音帧片段中的至少一种后的语音帧片段。
67.在一些实施例中,语音处理模块520可以基于语音文件和分词结果,得到有效语音帧片段。具体地,语音处理模块520可以基于分词结果,得到语音文件的至少两个初始有效语音帧片段,对至少两个初始有效语音帧片段进行扩增,得到扩增后的至少两个初始有效语音帧片段,对扩增后的至少两个初始有效语音帧片段进行合并和分割中的至少一种,得到有效语音帧片段。关于得到有效语音帧片段的描述可以参见图4,在此不再赘述。
68.应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程300进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
69.图4是根据本说明书一些实施例所示的得到有效语音帧片段方法的示例性流程图。如图4所示,流程400包括下述步骤。在一些实施例中,流程400可以由处理设备(例如,处理器150)执行。
70.步骤410,基于分词结果,得到语音文件的至少两个初始有效语音帧片段。在一些实施例中,步骤410可以通过语音处理模块520执行。
71.在一些实施例中,初始有效语音帧片段是指通过语音识别后得到的含有说话内容的语音帧片段。具体地,初始有效语音帧片段可以是指从语音文件中剔除无效语音帧片段后的有说话内容的音频帧片段。一些实施例中,无效语音帧片段是指语音文件中的静音帧片段和噪声帧片段。静音帧片段是指不包含说话内容的音频帧片段,例如,静音帧片段可以是赫兹为低于2khz的低频段。噪声帧片段是指包含噪声的音频帧片段,例如,噪声帧片段可以是赫兹为高于4khz的高频段。
72.在一些实施例中,语音处理模块520可以基于分词结果,得到语音文件的至少两个初始有效语音帧片段。具体地,语音处理模块520可以根据分词结果中每个字词的开始时间和结束时间,标定语音文件中这些字词对应的时间位置和帧位置,得到对应的语音帧片段,作为初始有效语音帧片段。
73.步骤420,对至少两个初始有效语音帧片段进行扩增,得到扩增后的至少两个初始有效语音帧片段。在一些实施例中,步骤420可以通过语音处理模块520执行。
74.在一些实施例中,在语音处理任务中,当数据的数量不足时可以使用数据扩增方法生成更多数据,帮助网络更好地学习到有用的特征。在一些实施例中,语音处理模块520可以对至少两个初始有效语音帧片段进行扩增,得到扩增后的至少两个初始有效语音帧片段。例如,可以在至少两个初始有效语音帧片段的光谱图上(音频波形的一种视觉表示)施加扩增语音帧技术。扩增语音帧技术为公知技术,在此不做赘述。
75.步骤430,对扩增后的至少两个初始有效语音帧片段进行合并和分割中的至少一种,得到有效语音帧片段。在一些实施例中,步骤430可以通过语音处理模块520执行。
76.在一些实施例中,语音处理模块520可以对扩增后的至少两个初始有效语音帧片段进行合并和分割中的至少一种,得到有效语音帧片段。具体地,语音处理模块520可以基于预设无效阈值,确定合并语音帧和分割语音帧中的至少一种,然后基于合并语音帧和分割语音帧中的至少一种,对扩增后的至少两个初始有效语音帧片段进行合并和分割中的至少一种。其中,预设无效阈值可以是指预设的无效语音帧的时长,如2秒。例如,若一段语音帧片段的时长小于预设无效阈值,则将该语音帧片段前后的两段语音帧片段作为合并语音帧进行合并。又例如,若一段语音帧片段的时长大于预设无效阈值,则将该语音帧片段作为分割语音帧进行分割,即将该语音帧片段从语音文件中剔除。
77.图5是根据本说明书一些实施例所示的区分说话人方法的示例性模块图。如图5所示,该系统500中可以包括获取模块510、语音处理模块520、声纹特征提取模块530、聚类模块540和优化模块550。
78.在一些实施例中,获取模块510可以用于获取语音文件,语音文件包含至少两个不同说话人的语音帧。
79.在一些实施例中,语音处理模块520可以用于通过语音识别模型对语音文件进行处理,得到至少一段有效语音帧片段。
80.在一些实施例中,语音处理模块520还可以用于通过语音识别模型对语音文件进行处理,得到语音文件的分词结果,分词结果包括语音文件的字词信息和时间信息;基于语音文件和分词结果,得到有效语音帧片段。
81.在一些实施例中,语音处理模块520还可以用于基于分词结果,得到语音文件的至少两个初始有效语音帧片段;对至少两个初始有效语音帧片段进行扩增,得到扩增后的至少两个初始有效语音帧片段;对扩增后的至少两个初始有效语音帧片段进行合并和分割中的至少一种,得到有效语音帧片段。
82.在一些实施例中,语音处理模块520还可以用于基于预设无效阈值,确定合并语音帧和分割语音帧中的至少一种;基于合并语音帧和分割语音帧中的至少一种,对扩增后的至少两个初始有效语音帧片段进行合并和分割中的至少一种。
83.在一些实施例中,声纹特征提取模块530可以用于通过声纹特征提取模型对至少一段有效语音帧片段进行处理,得到至少两个不同说话人的语音帧对应的至少两个声纹特征向量。
84.在一些实施例中,聚类模块540可以用于对至少两个声纹特征向量进行聚类处理,得到至少两个不同说话人结果。
85.在一些实施例中,聚类模块540还可以用于基于至少两个声纹特征向量中每对声纹特征向量之间的相似度,对至少两个声纹特征向量进行无监督聚类处理,得到至少两个不同说话人结果,其中每个说话人结果包括说话人和与说话人对应的声纹特征向量。
86.在一些实施例中,优化模块550可以用于基于转换点,对两个不同说话人结果进行优化,其中转换点连接至少两个声纹特征向量中两个不同的声纹特征向量。
87.在一些实施例中,优化模块550还可以用于基于与所述转换点相邻的所述至少两个声纹特征向量中至少两个声纹特征向量以及所述至少两个声纹特征向量的时间点,更新所述至少两个说话人结果。
88.应当理解,图5所示的各模块可以利用各种方式实现。例如,在一些实施例中,各模块可以通过硬件、软件或者软件和硬件的结合实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统(例如,微处理器或者专用设计硬件)执行。本领域技术人员可以理解,上述处理设备及其模块可以通过计算机可执行指令实现。本说明书的系统及其模块不仅可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等可编程硬件设备的硬件电路实现,也可以由例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)实现。
89.需要注意的是,以上对于系统500及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,图5中获取模块510、语音处理模块520、声纹特征提取模块530、聚类模块540和优化模块550可以是一个设备中的不同模块,也可以由一个模块实现上述的两个或两个以上模块的功能。又例如,系统500中各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储单元。又例如,获取模块510可以是单独的组件,而不属于系统500内部的模块。诸如此类的变形,均在本说明书的保护范围之内。
90.本说明书实施例可能带来的有益效果包括但不限于:(1)通过结合语音识别技术和声纹特征提取技术,可以避免语音识别结果被遗漏或错误分割字词的问题,另外一方面还优化了说话人区分的处理流程,提高了说话人区分的准确率;(2)通过确定两个声纹特征
向量是否在时间上连续,可以优化提取声纹特征向量的准确度;(3)通过获取语音文件中有的效语音帧片段,可以提升说话人区分整体的准确率,并且说话人区分最终输出的结果中包含说话人对应的说话内容,可以简化整个系统构成。
91.需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
92.上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
93.同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
94.此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
95.同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
96.一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有
±
20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
97.针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
98.最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。