趣文网 > 作文大全

惊艳!这是一篇讲深度学习中的说话人日志技术文章(深度好文)

2020-12-06 06:55:01
相关推荐

拓哥带货解读(二)

人类最重要的交流方式就是语言,对我们来说,从背景干扰中分离出语音是至关重要的。虽然人类能轻易地分离语音,但事实证明,在这项基本任务中,构建一个能够媲美人类听觉系统的自动化系统是很有挑战性的。

在信号处理中,说话人日志属于很基本的任务类型,应用范围很广泛,包括听力假体、移动通信、鲁棒的自动语音以及说话人识别。人类听觉系统能轻易地将一个人的声音和另一个人的分离开来。即使在鸡尾酒会那样的声音环境中,我们似乎也能毫不费力地在其他人的说话声和环境噪声的包围中听到一个人的说话内容。

基于深度学习的说话人日志,通过深度学习的方法,从训练数据中学习语音和说话人的特征,从而实现说话人“谁在什么时候说话”的目标。下面是一些相关模型的详细介绍:

UISRNN(unbounded interleaved-state recurrent neural networks)在说话人日志(Speaker Diarization)中的应用

1. Speaker Diarization介绍

说话人日志可以理解为在一个连续的多人对话的语音片段中切分出不同的说话人片段,然后去判断每个语音片段属于哪个说话人,用来解决“谁在什么时候说话”的问题。可以简单理解为说话人分割(speaker segmentation)和声纹识别相结合的技术。而speaker segmentation就是确认when,即从当前speaker 切换到下一位出现的speaker,声纹识别在确认当前speaker的身份,speaker diarization就是完成把已切分的语音段分类到相同的说话人的任务。

为了解决“谁在什么时候说话”的问题,现有的说话人日志系统大多由多个相对独立的部分组成.如下:(1)语音分割模块,将非语音部分去除,将输入的话语分割成小段;(2)提取emdedding特征向量模块。从小段中语音中提取能够判断说话人的特征向量,例如i-vector、d-vector等;(3)聚类模块,确定说话人的数量,并将说话人的身份分配给每个段;(4)重新分割模块,通过强制附加约束,进一步细化分类结果。

2.Uisrnn聚类算法介

UIS-RNN是由谷歌的研究人员Aonan Zhang等人在论文《FULLY SUPERVISED SPEAKER DIARIZATION》中提出的。在这篇论文中提出了一种完全监督的说话人日志方法,即无界交叉状态递归神经网络(UIS-RNN)。给出了从输入语音中提取的区分说话人的embeddings向量(又称d-vectors向量),而每个说话人由一个参数共享的RNN建模,不同说话人的RNN状态在时域交错。这是一个完全监督的系统,能够利用带有时间序列的说话人标签的数据学习。该算法在NIST SRE 2000 CALLHOME上的测试中说话人日志的错误率是7.6%,优于现有的光谱聚类方法。

3. Uisrnn聚类算法的原理

在本文中,我们将无监督聚类模块替换为一个在线生成过程,该过程利用带标签的数据进行训练。基于以下几个原因,我们将这种方法称为无界交叉状态再流神经网络(UIS-RNN):(1)每个说话者由一个RNN实例建模,这些实例具有相同的参数;(2)可以生成无界数量的RNN实例;(3)将不同的RNN实例的状态(对应不同的说话者)在时域中交叉。在一个完全监督的框架下,该方法还处理了说话者分离中的复杂问题:它通过贝叶斯非参数过程自动学习每个语音中说话者的数量,并通过RNN携带时间序列上的信息。

文本无关的说话人日志网络结构如下图所示。该网络采用最先进的广义端到端损失进行训练。可以一直在对这个模型进行训练以获得更好的性能。

说话人日志网络结构

当然也可以尝试更加优异的聚类算法以达到更优的效果,如本文提到的uisrnn算法。

3.1 uisrnn 算法概述

给定一段语音,从提取embeddings模块中,得到一个观察序列X = (x1,x2,…,xT),这个序列中的每个x都是一个d-vector,对应于原始话语中的一个片段。在监督说话人分类场景中,我们还为每个段语音打了个标签,构成序列Y= (y1, y2,…yT)。由于失去了一般性,令Y按出现的顺序为正整数序列。例如,Y =(1,1,2,3,2,2)表示这个话语有六个片段,来自三个不同的说话者,其中yt = k表示第t段语音属于说话人k。UIS-RNN是整个语料(X, Y)的在线生成过程,如下图所示,不同颜色代表不同的说话人。

该算法的计算过程如下:

为了模拟说话人变化的过程,增加了变量z,它的公式表示变为

其中Z =(z2,…, zT)是表示说话人变化的二进制指示器。例如,如果Y=(1,1,2,3,2,2),则Z=(0,1,1,1,0)。注意,Z是由Y唯一确定的,但是Y不能由给定的Z唯一确定,因为我们不知道要换到哪个说话人。这里不定义z1,将式(2)中的每一个项分解为三个部分,分别建模序列生成(sequence generation)、说话人分配(speaker assignment)和说话人变化(speakerchange),其公式如下:

然而,在大多数说话人日志系统中仍然会用到无监督的模块。在说话人分离系统中使用的聚类算法包括高斯混合模型,层次聚类,k-means , Links , and spectrum clustering等。由于说话人的数量和说话人的类别由聚类模块决定,因此聚类算法的质量对最终的说话人日志性能至关重要。然而,大多数聚类算法都是无监督的,这意味着当有标签的数据可用时,我们无法通过学习示例来改进该模块。事实上,在许多特定领域的应用中,获得如此高质量的带注释数据相对容易。

此外,UIS-RNN是序列聚类问题的一种通用解决方案,具有潜在的应用前景,比如在视频中人脸的聚类。未来一个有趣的工作方向是直接使用声学特征,而不是预先训练好的d-vectors作为UIS-RNN的观察序列,这样整个说话人日志系统就成为一个端到端的模型。

国内目前已经有很多的AI语音团队都在进行说话人日志技术研发,例如科大讯飞、搜狗、时代拓灵等,随着基于深度学习的说话人日志技术越来越成熟,未来的应用会更加的广泛。

PS:拓哥呕心沥血原创文章,禁止不加作者名称复制粘贴,如需转载,请联系拓哥。

阅读剩余内容
网友评论
相关内容
延伸阅读
小编推荐

大家都在看

作文花 作文旅游 350作文 世界作文 春节作文作文 春节.作文 作文 感 作文美丽 美丽 作文 描写作文 作文有哪些 六年级作文作文 自己的作文 喜欢作文 《成长》作文 作文一篇 作文 家乡 《爱》作文 作文朋友 作文小学生 的故事 作文 故事的作文 的人作文 作文的结尾 英语一作文 作文的开头 中考作文作文 的作文400字 的故事的作文 你 作文