声纹识别笔记(一)实验平台 常用特征 神经网络模型

发展源流: GMM -- ivector -- DNN

背景介绍

评价指标

设置一个阈值,高于这个阈值的为True,低于则不接受

用softmax输出一个概率Accuracy,则EER ~(1-ACC)/2。 e.g. Accuracy = 80% EER = (1-0.8)/2 = 10%

实验结果越好,阈值选取越高,一般作为评价指标。

EER是(一个分类器的)ROC曲线(接受者操作特性曲线)中错分正负样本概率相等的点(所对应的错分概率值)。这个点就是ROC曲线与ROC空间中对角线([0,1]-[1,0]连线)的交点(如下图所示)。

实验平台

Tensorflow 60%

  • 自动微分系统,定义了前项,后项自动训练
  • 工程化好,易于实现跨平台和嵌入式,工业界用很多
  • 接口变动频繁,复杂的系统设计
  • 文档较为混乱

PYTORCH

  • 动态神经网络
  • 语言类似python
  • 简洁高效,便于拓展开发,研究用
  • 社区活跃
  • 部署困难,模型难以调用

KALDI

  • 专门的语音技术研究平台
  • 集成了绝大多数主流的语音处理方案
  • 代码结构清晰,文档健全
  • 工业界用很多,讯飞、阿里
  • 底层C++,实现自己的模型速度不够快(新的神经网络难写)

特征提取

aishell 采样率16k

Fbank

预加重为了对语音的高频部分进行加重,去除口唇辐射的影响,增加语音的高频分辨率。一般通过传递函数为

y(n)=x(n)-ax(n-1)一阶FIR高通数字滤波器来实现预加重,其中a为预加重系数,0.9<a<1.0

Mel滤波:因为人对频率变化的感觉是非线性的,把线性频率映射到mel维度

Python库函数

MFCC

提取到的特征矩阵:  列:特征维数;行:帧数

声学模型

神经网络

CNN

通道:层数

32*32个像素点

第一层卷积:卷积核6个通道(6层),5*5卷积核,32-5+1=28,变成28*28*6的特征

第二层降采样pooling:average pooling 或者maxpooling(一般用2*2),变成14*14*6的特征

第三层卷积:16通道的卷积核,14-5+1=10,变成10*10*16的特征

第四层降采样: 变成5*5*16

再经过三次全连接,10个类别OUTPUT为10个,再通过softmax得到打分EER

输入通道黑白或彩色3,输出通道一般为2的倍数

stride: 右移、下移;

padding:是否在周围补零

dilation:3*3的卷积作用在5*5,用少的卷积核作用在大的区域,使用少

groups:输出channel可以看到输入channel的多少,使用少

bias:偏置项

N:batch数 C:channel H:特征 W:帧数

Hardtanh:激活函数

不用定义后向运算,要定义前项运算forward

view维度变换

ResNet

CNN前面的卷积层得不到训练

实线;虚线

RNN

Xt当前隐层 St上一个隐层

BiRNN

LSTM

通过输入门输出门遗忘门来控制

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dr. 卷心菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值