wenet mask原理解析

简介:

该程序主要对wenet使用的mask原理进行分析,更多详细内容参照 https://zhuanlan.zhihu.com/p/381271607

代码位置:

wenet/mask.py at main · wenet-e2e/wenet · GitHub

代码理解:

https://mp.csdn.net/mp_blog/creation/editor/122271121

原理概述:

mask: 何谓mask,简言之,即为遮蔽,露出自己想要关注的特征,如下图所示

wenet mask原理解析

作用:

据作者所言,引入mask主要为了解决三个问题:

1 batch padding

主要是因为一个batch中不同语音的长短不一致,所以需要在短的语音特征后补0来实现一个batch变成等长的序列。

2 自回归

在Attention Decoder中,每个word只能看到自己以及左侧的words,所以其中的attention操作实现时,每个位置只能和当前位置以及左侧的位置进行操作,所以引入了一个mask来遮挡不需要关注的信息。

3 chunk-based model

在这里主要就是动态chunk的方法,能够实现chunk在训练过程中有一半的概率是最大值,一半的概率是随机从1-25中选取,其数学逻辑如下:

wenet mask原理解析

下图是full attention,left attention 和chunk attention的区别:

full attention: 只在语音结束后关注整条语音;

left attention: 可以在解码过程中时刻关注之前整条语音的所有内容;

chunk attention: 可以在解码过程中时刻关注之前整条语音的最近一个chunk的内容;

wenet mask原理解析

Original: https://blog.csdn.net/shaoyou223/article/details/122642141
Author: 少游223
Title: wenet mask原理解析

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/515767/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球