ALIZE 说话人识别系统(UBM-GMM)几个主要程序模块的使用说明
——归一化、能量检测、训练、打分
ALIZE 工具包的基本架构由几个软件服务器(Software Servers)上独立的功能函数
(functionalities)组成。主要的服务器有:
管理声音数据的特征服务器(Feature Server),用于读取每一特征向量;
处理模型(models,比如贮存、修改、组件连接、保存/读取等)的混合服务器(Mixture
Server);
实现所有统计数据计算(基于 EM 的统计数据估计、似然计算、Viterbi 校验等)的数据
服务器(Statistic Server)。
1. NormFeat
以 fileMode(文件模式)处理方式为例,读取 Feature Server 中每一帧(frame)包含的
特征向量(feature vector),在帧累加器(frame accumulator)中计算得到均值(mean)和协
方差(convariance),调用 GeneralTools 中的 computeZeroOne 函数使得帧中的每一个系数
(coefficient)符合均值为 0,方差为 1 的高斯分布。归一化实现程序如下:
for (unsigned int i = 0; i < vectsize; i++)
{
// For each coeff
f[i]=(f[i]-featureMean[i])/featureStd[i];
// Apply the 0 mean 1 cov normalisation
}
2. EnergyDetector
采用EM算法对特征系数所符合的高斯分布的参数作估计,实现程序如下:
for (int trainIt=0; trainIt
赞
收藏