序言:作为一名完全的声纹识别小白,刚开始接触,毫无头绪,都不知道从何入手,在搜集了一些资料,看过一些学习视频,论文之后,记录一下自己的摸索过程,同时将一些目前网络上的资源进行汇总。目前的我确实学习还是非常浅,如果有一些理解错误,会进行改正。
一、算法纵览
搞懂声纹识别算法整个的发展过程,才有利于进一步改进。了解了各种方法,才能选出最适合数据的算法。看论文时也会减轻很多压力。所以首先记录一下我了解的一些算法发展流程:
1. 最早的GMM-UBM i-vector
利用GMM高斯混合模型提取特征i-vector;克服训练数据不多的情况,引入UBM;将语音分为说话人空间和环境空间,解决环境带来的信道,PLDA实现信道补偿,将提取的i-vector更加纯粹。
当然,获取i-vector的方法不仅仅局限在高斯混合模型,利用一起其它的机器学习方法进行补充一样可以,甚至是DNN提取的特征。
2. DNN入场
DNN的引入极大的降低了识别错误率。这时候的算法,可以称为embedding算法,依然是提取特征,不过这时候提取的是神经网络最后隐藏层的激活单元了,作为embedding,代替i-vector来作为一段语音的特征表示。
这时候出现了d-vector(深度神经网络最后一个隐藏层作为embeddings特征)、x-vector(从TDNN网络中提取embeddings特征)、j-vector模型(适用于文本相关说话人确认)
3. 端到端系统
无论是获得i-vector,还是DNN提取出的embedding,都是从语音中提取出特征再做分类或者确认。而端到端系统将这2段合到一个系统中,从输入到输出,一体化特征训练和分类打分。这和之前有了重大的不同。
目前我只看了百度论文《Deep Speaker:an End-to-End Neural Speaker Embeddin》中的的 Deep Sperker 端到端模型
二、资源汇总
1. 网上学习资料
知乎一篇科普文:AI老司机带你认识声音黑科技:声纹识别。可以最快的了解下声纹识别
百度技术学院语音技术视频:语音技术实战介绍。从语音技术整个体系看一下声纹识别
李博士的知乎专栏:声纹识别的应用实践。全!写的真的是全!
知乎声纹识别大佬:Leon晋。看了他很多回答,很有益
同盾大学视频:声纹识别训练营1+声纹识别训练营2
2. 目前使用论文学习及讲解
- 关于d-vector:
《Deep Neural Network Embeddings for Text-Independent Speaker Verification》
《ROBUST DNN EMBEDDINGS FOR SPEAKER RECOGNITION》
- 关于端到端系统 Deep Speaker:
《Deep Speaker: an End-to-End Neural Speaker Embedding System》
3. 开源资源整理
- d-vector:
/rajathkmp/speaker-verification
/wangleiai/dVectorSpeakerRecognition
- E2E,Deep Speaker:
tensorflow实现:/philipperemy/deep-speaker
pytorch实现:/qqueing/DeepSpeaker-pytorch
未完待续。。。。。。资源进一步整理吧
、、、、