远场语音识别Multi-array speech recogniton
1. 提纲
- 多阵列麦克风面临的问题
- 基于深度学习解决方案分类
- 具体的解决方案
2. 多阵列面麦克风面临的问题
- 同一方向多个阵列怎么高效合并?(集成在一起的麦克风阵列)
- 多个麦克风怎么来加强信号?(多个孤立的麦克风) d = v v o i c e ∗ t f r a m e = 340 m / s ∗ 10 m s = 3.4 m . d= v_{voice}*t_{frame}=340m/s*10ms=3.4m\,. d=vvoice∗tframe=340m/s∗10ms=3.4m.
1)当多个麦克风之间距离说话人间隔大于3.4m,就产生了跨帧现象;而说话人与麦克风之间的距离位置是未知的,怎么补偿该跨帧现象。
2)即使没跨帧,影响也不低,很好类比。 - 说话人背向麦克风时:我们最好舍弃该信号,选用朝向说话人的麦克风来做语音识别,怎么选?(多个孤立的麦克风)
3. 基于深度学习的解决办法分类
- beamformer:基于front-end fusion算法
- multi-encoder:基于back-end fusion算法
4. 具体方案
4.1 基于front-end fusion信号融合算法
-
网络架构:多阵列信号之间做融合
(1)Input Embedding:convolution-based (换用fbank应该也ok,只是做一个投影)
(2)Self/Cross attention: 2D Conv-Attention Module(Attention全局视野,CNN局部视野) -
结果:绝对提升3.8%
3. 缺点
(1)看起来只支持双麦克风,多麦克风会造成前端网络过于复杂,模型大多参数都浪费在前端特征提取上。
4.2 基于front-end fusion选最优的某单一麦克风算法
- 网络架构:开关网络
1)BF:factored complex linear projection(idea from 谷歌),因为信号包含相位的,直接采用fbank等保留了幅值信息,丢弃了相位,而多通路保留信号的相位理论上有利于降噪(参考信号处理中的相干叠加与非相干叠加)(但我感觉其实没啥用)
2)Spectral feature extraction:complex linear projection,求复信号的幅值(带虚数没法计算)
3) LSMT-Attention最后一层是sigmoid的非线性函数,类似于LSTM这种开关思想(0-1之间选通某一个麦克风上的信号量) - 结果(绝对提升3%)
4.2 基于back-end fusion multi-encoder(思想也是选通)
-
网络架构:开关网络
-
原理
-
结果(绝对提升7%)
-
缺点:(1)不够SOTA,现在都是Attention,他还是VGGBLSTM;(2)只支持双麦克风,多麦克风也过于复杂(不过已经发表了第二篇论文解决了该文听)
5. 代码
(1)等写完了,会在github上开源
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgfkfce
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13