zoukankan      html  css  js  c++  java
  • apply-cmvn&apply-cmvn-online&apply-cmvn-slide

    kaldi中现有的cmvn处理包含三种形式,即apply-cmvn、apply-cmvn-online、apply-cmvn-slide,这三种形式在使用时略有区别。
    cmvn为倒谱均值方差归一化,大多数情况下只会对均值进行归一化,也可以写成cmn。
    倒谱均值方差归一化,顾名思义,需要先通过compute-mfcc计算倒谱特征mfcc,然后通过compute-cmvn-stats计算相关的cmvn统计量
    apply-cmvn:
    • apply-cmvn归一化时,--utt2spk作为可选参数,该参数决定是对每个句子按照说话人归一化还是整体归一化,当utt2spk作为输入时,此时会分别统计每个说话人对应句子的归一化参数
    • 然后对于输入句子的每一帧,将每一帧的各个维度利用上述统计的归一化参数进行归一化
    apply-cmvn-online:
    • apply-cmvn-online归一化时,同样可输入utt2spk作为参数,该参数决定了句子起始部分(小于cmvn_window,默认是600帧,6s)的cmvn计算统计量,当输入utt2spk,统计量来源于对应的说话人统计量;否则来源于全局统计量
    • apply-cmvn-online对当前帧进行cmvn时使用的是前600frames的统计量,不够时会利用所属说话人的统计量或全局统计量;
    • apply-cmvn-online对相关参数的默认设置在online-feature.h文件中
    • 对于句子起始帧利用的统计量的默认的顺序为说话人和全局,具体在文件online-feature.cc
      其中,count_from_speaker表示需要补齐的帧数;speaker_count表示说话人统计量实际的帧数;spekaer_frames是指定的说话人统计量帧数参数。
    apply-cmvn-slide
    • 顾名思义,apply-cmvn-slide对前帧的归一化采取的是滑窗的形式,可以选择以当前帧作为中心帧的窗口进行均值和方差计算,或者之前的窗口内。一般窗口window大小为300帧
    • 对于句子的前window内的帧的cmvn计算,采用的是从第0帧开始的window,同理最后windows帧采用的最后一帧往前的window
    三者的区别
    类型
    统计量
    cmvn_window
    适用场景
    apply-cmvn
    所属说话人的所有句子的统计量;没有utt2spk时统计全局统计量
    无此参数,用到的是说话人所有句子或者全局特征
    离线asr
    apply-cmvn-online
    当前帧的前cmvn_window内的帧的统计量
    600帧,6s
    在线asr
    apply-cmvn-slide
    以当前帧为中心的cmvn_window内的帧或者当前帧之前的cmvn_window内的帧的统计量
    300帧,3s
    声纹识别
     
  • 相关阅读:
    索引
    互联网技术中的算法摘要
    Struts2(六)
    Struts2(五)
    Struts2(四)
    Struts2(三)
    Struts2(二)
    Struts2(一)
    WebService(三)
    WebService(二)
  • 原文地址:https://www.cnblogs.com/zy230530/p/13682202.html
Copyright © 2011-2022 走看看