kaldi feature extraction

支持提取mfcc/plp特征,和HTK特征的主要差别在于默认参数值的设定。使用选项-htk-compat=true以及合适的参数,可以得到htk特征。

全局CMVN

compute-cmvn-stats

假设帧数为i,特征维度为j,cmvn计算得到两个矩阵:
( A 1 , A 2 , . . . , A j , A j + 1 ) (A_1, A_2,...,A_j,A_{j+1}) (A1,A2,...,Aj,Aj+1)
( B 1 , B 2 , . . . , B j ) (B_1, B_2,...,B_j) (B1,B2,...,Bj)
A j + 1 A_{j+1} Aj+1表示总的帧数N
假设特征为 f i j f_{ij} fij,其中变量的计算公式如下:
A j = ∑ i f i j A_j=\sum_{i} f_{ij} Aj=ifij
B j = ∑ i f i j 2 B_j=\sum_{i} f_{ij}^2 Bj=ifij2

apply-cmvn

假设均值和方差分别是 M j M_j Mj V j V_j Vj,特征 f j f_j fj经过CMVN归一化以后变成:
f j ′ = f j − M j V j f'_{j}=\frac{f_{j}-M_j}{V_j} fj=VjfjMj
其中 M J M_J MJ表示均值, V j V_j Vj表示标准差:
M j = A j N M_j=\frac{A_j}{N} Mj=NAj
V j = B j N − M j 2 V_j=\sqrt{\frac{B_j}{N}-M_j^2} Vj=NBjMj2
方差的计算展开可以得到:
V j = ∑ i ( f i j − M j ) 2 N = ∑ i f i j 2 N − M j 2 V_j=\sqrt{\frac{\sum_i (f_{ij} - M_j)^2}{N}}=\sqrt{\frac{\sum_i f_{ij}^2}{N}-M_j^2} Vj=Ni(fijMj)2 =Nifij2Mj2

后面的技术分享转移到微信公众号上面更新了,【欢迎扫码关注交流】

在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值