说话人识别的技术原理是啥( 二 )


用户今天可能跟a对话,明天会跟b对话,后天可能跟c对话。也就是该用户的交谈对象(简称路人)是不确定的。模型采用简单的基于MFCC特征的GMM。目前根据路人的性别训练了两个通用模型(样本来自一些免费的语料库,例如广播录音,还有清华大学的某个语料库。每个性别分别大概有200人,每人3到5分钟左右样本)。如果是男女对话的话,识别效果很好。但如果用户跟路人是同性别的话,识别就很糟糕。如果专门针对特定路人做一个专属模型的话,就算是同性别,识别效果也还可以。但是路人每天都在变化,为每一个路人训练专用模型似乎划不来,技术上也难做到(目前是人肉切割一段路人录音来做训练)需要指出的是,实际对话音频会有环境噪声,然后训练的样本普遍噪音较小。
目前就是有种迷茫,不知道路子走的对不对,如何提高路人的识别率, 希望各路大神指点

■网友
1.LIUM是一个话者分离开源方案,java写的。BIC分割,AHC无监督聚类,整个算法框架很完整,可以参考。
2. kaldi CALLHOME_diarization也是一个话者分离方案,基于kaldi的框架,效果也不错。


推荐阅读