[关闭]
@kpatrick 2019-11-27T10:29:31.000000Z 字数 1430 阅读 336

唤醒模型训练工作

work vivo


1. 总览

最近两周我这边做了初步的唤醒模型的训练,用的(280, 40)的filterbanks序列数据,最终执行二分类或三分类的任务。目前用分类的准确率Acc来衡量模型的好坏,具体的数值和结果分析在图表中。


2. 结果

2.1 二分类

  1. 模型:

    • /home/vivoadmin/work/project/training/trigger_word/models/cnn-gru-2-class
      • saved-model-100-0.9927.h5.xiaov-Vs-noise
      • saved-model-100-0.9957.h5.jovi-Vs-noise
    • 数据:
      /home/vivoadmin/work/data/debug_2w_1119
    • Train: 50000 (Jovi: 20000, Xiaov: 20000, Noise: 10000)
    • Dev: 5000 (Jovi: 2000, Xiaov: 2000, Noise: 1000)
  2. 指标:

    - hi, jovi vs 小v hi, jovi vs 噪声 小v vs 噪声
    GRU 84%, 86% - -
    CNN-GRU 93%, 91% 99%, 99% 99%+, 99%+
  3. 分析:
    • 三分类:
      • 单纯GRU网络可以处理唤醒词序列的分类问题,但精度不算太高
      • CNN在输入层中起到了特征抽取的作用,减少了GRU的记忆负担,精度得以提升
    • 二分类:
      • 二分类中得到比较好的表现,原因分析可能是唤醒词数据的比较理想,基本没有背景噪音
      • 模型比较好"认出了"唤醒词的时频序列

2.2 三分类

  1. 模型:

    • /home/vivoadmin/work/project/training/trigger_word/models/cnn-gru-3-class
      • saved-model-2000-0.9056.h5.2w2w1w
      • saved-model-2000-0.9388.h5.2w2w4w
    • /home/vivoadmin/work/project/training/trigger_word/models/attention-3-class
      • saved-model-4000-0.9373.h5
  2. 数据:

    • 数据1:
      • Train: 50000 (Jovi: 20000, Xiaov: 20000, Noise: 10000)
      • Dev: 5000 (Jovi: 2000, Xiaov: 2000, Noise: 1000)
    • 数据2(增多噪声数据):
      • Train: 80000 (Jovi: 20000, Xiaov: 20000, Noise: 40000)
      • Dev: 10384 (Jovi: 2000, Xiaov: 2000, Noise: 6384)
  3. 指标

    - 数据1(小) 数据2(大)
    CNN-GRU 90.6%, 90.5% 91.0%, 93.8%
    CNN-GRU-Attention - 89.2%, 93.7%
  4. 分析:
    • 数据量的影响:
      • 训练样本量增大,泛化效果变好
    • Attention:
      • 当前Attention嵌入属于前期的测试阶段
      • 得出当前指标的Attention模型未经过调优,网络结构的参数较少
      • 在训练过程中发现,前几个epoch,Attention可以学习得更快,我认为Attention模型值得继续调参尝试
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注