zoukankan      html  css  js  c++  java
  • 声纹识别算法阅读之d-vector

    论文:
      End-to-End Text-Dependent Speaker Verification
    思想:
      google提出的文本相关的说话人确认,通过DNN或LSTM的网络结构提取说话人特征表达;然后注册阶段输入说话人的多个文本相关句子(考虑环境噪声等干扰)得到的特征表达取平均值作为该说话人的embedding;然后验证时输入test句子得到特征表达后,与说话人注册embedding计算cosine相似度,超过阈值(一般0.5)进行确认操作,否则拒绝。
    模型:
      网络模型采用多层DNN或多层LSTM的结构;其中DNN结构包含1层local connected层和多层full connected层外加一层线性层,其中非线性层激活函数为ReLU;LSTM结构为多层LSTM结构+1层线性层;损失函数包括softmax和e2e loss;这里,参考[1] local connected的作用主要是降低模型参数,在几乎不影响精度条件下可有效减少30%的参数量;
    • DNN结构:1*local connected[1]+m*full connected+1*linear layer
    • LSTM结构:LSTM结构逐帧输入,然后取最后一个时刻的隐层输出作为线性层的输入
    • 损失函数:
    1. softmax:将线性层的输出输入到softmax层获得概率分布
    1. e2e loss: 将test的特征表达和说话人注册句子特征均值计算的cosine距离,输入到逻辑斯特回归进行二分类(确认or拒绝)
    注意:e2e模型输入维度为N+1,N为说话人注册句子,1为test;其中,N个说话人注册句子得到N个特征表达取平均后与test特征表达计算cosine后再输入到逻辑斯特回归计算损失
    训练:
    • 数据集:google voice search场景中的‘OK Google’文本相关数据;每个句子采用后80帧,帧率100hz,每帧10ms,共80*10=800ms
    • 输入:输入特征为40log(fbanks)
    • 网络结构:
    1. DNN:1*local connected(10*10,ReLU)+3*full connected(504,ReLU)+1*linear layer(504)
    2. LSTM: 1*LSTM(504)+1*linear layer(504)
    • batch size=32
    • 评价指标:EER,包含错误拒绝率和错误接受率,二者相等时得到等错率EER
    实验结构:
    • 句子水平的d-vector的效果明显优于基于i-vector帧水平的方法
    • 基于逻辑斯特回归二分类的e2e loss相比于softmax,效果稍好;个人理解e2e损失从输出类别数来看降低了任务难度,从m类(对应训练集m个说话人)降低为2分类(确认or拒绝),并且更靠近任务目的
    • 从效果来看,基于LSTM的模型相比于DNN效果要好,比较LSTM在时序依赖建模方面具有一定的优势

    结论:
    • 本文从文本相关说话人确认任务角度考虑,提出了一种基于DNN/LSTM的网络结构,该结构作为说话人文本相关语句的特征表达提取器;模型训练完成后,先进行说话人注册,即将代表说话人的N个文本相关语句(最好包含说话人内在的一些变化或外部干扰)输入网络分别提取特征表达,然后取平均值作为该说话人的特征表达;同样输入test语句也得到对应特征表达;最后二者计算consine相似度,根据相关阈值,判断该test是否为该说话人;
    • 此外,论文还根据任务导向,提出了一种e2e的训练策略,策略中网络模型无需改变,但是损失函数这块引入逻辑斯特回归将注册特征表达和test表达的cosine得分转化为线性二分类任务,在一定程度上对效果有提升作用
    Reference
  • 相关阅读:
    POJ1995 ZOJ2150 Raising Modulo Numbers【快速模幂】
    POJ3641 UVA11287 HDU1905 Pseudoprime numbers【素数判定+快速模幂】
    ACM题解系列之三:秋田拓哉:《挑战程序设计竞赛》(第2版)
    HDU3257 Hello World!【打印图案+位运算】
    ACM题解系列之二:刘汝佳:《算法竞赛入门经典训练指南》
    UVa10881 Piotr's Ants【模拟】
    POJ1852 UVa10714 Ants【水题】
    剑指Offer——平衡二叉树
    剑指Offer——二叉树的深度
    剑指Offer——数字在排序数组中出现的次数
  • 原文地址:https://www.cnblogs.com/zy230530/p/13657502.html
Copyright © 2011-2022 走看看