非负矩阵分解[LeeandSeung,2001]:基于统计独立假设,语音信号的稀疏性与谐波特性,把带有干扰的混合语音信号的频谱分解成为一个特征矩阵乘以另一个系数矩阵,那么之后属于不同声源的那些信号的特征就会很自然的聚集到一起,这样一来我们把属于干扰源的特征所对应的系数矩阵进行掩蔽,
多通道技术:固定波束形成(fix beamforming)、自适应波束形成(adaptive beamforming)、独立成分分析(ICA),本质上都是在多通道的场景下,通过一些空间信息和信号的统计独立假设,去估算一个最优的波束(要么提取目标说话人方向的声音,要么屏蔽干扰说话人方向的声音)
基于深度学习的语音分离
Deep clustering [Hershey, 2016]:通过深度学习的手段,把每一个时频单元结合他的上下文信息把它映射到一个新的空间当中,那么在这个新的空间当中属于同一个说话人的时频单元距离会比较小,可以比较容易的聚类到一起。
Deep attractor network [Luo and Chen, 2017]:
Permutation invariant training [Yu, 2017]:解决了置换问题(分离出来的语音信号的顺序)和输出维度问题(不知道有几个声源的情况下)。
波束形成波束形成技术多用于多通道语音增强、信号分离、去混响、声源定位,
原理:通过空间信息来区分不同位置说话人语音,麦克风阵列形成波束只接受目标说话人语音,其他方向进行屏蔽。
主要技术
噪声抑制消除或抑制环境噪声,增强语音信号
基于统计模型的方法(GMM...)
最小均方误差MMSE、最大似然估计ML、最大后验估计MAP
基于子空间的方法(MUSIC算法)利用语音和噪声的不相关性,借助特征值/奇异值分解手段分解到子空间处理
语音增强的核心在于噪声估计
递归平均、最小值追踪、直方图统计是比较常用的噪声估计手段
基于深度学习的语音增强方法
两大类方法:Masking && Mapping
通过DNN、CNN、RNN或者GAN,在频域或时域实现(多为频域)
幅度控制作用:自动调整信号的动态范围
常用的两种方法
动态范围控制(Dynamic Range Control)
自动增益控制(Automatic Gain Control)
前端信号处理的技术路线 传统的前端信号处理方案处理依据——“规则”
客观物理模型,即声音传播的物理规律
语音信号的时域、频域和空域特性
针对不同的干扰因素,采用不同的信号处理算法以加以解决
优化目标:抑制干扰信号,提取目标信号
优化准则:MSE(Mean Square Error)准则
信号处理与深度学习相结合的方案处理依据——“规则+学习”
客观物理模型
语音信号的时域、频域、空域特性
海量音频数据先验信息
既保留了声音传播的物理规律和信号本身的时域、频域、空域特性,又引入了先验数据统计建模的方法。
优化准则:MSE准则
基于深度学习的前后端联合优化方案处理依据——“端到端联合建模”
输入多通道麦克风信号,输出语音识别结果
利用近场数据,仿真得到海量的带有各种干扰的训练数据
将前端信号处理与后端ASR声学模型联合建模,用一套深度学习模型完成语音增强和语音识别任务。
优化准则:识别准确率
参考深蓝学院《语音信号处理》课件
奥本海姆,《信号与系统》,电子工业出版社
奥本海姆,《离散时间信号处理》(Discrete Time Signal Processing, Third Edition)
赵力,《语音信号处理》,机械工业出版社
郑君里,《信号与系统》,电子工业出版社,高等教育本科国家级规范教材
韩纪庆,《语音信号处理》,机械工业出版社
张贤达,《现代信号处理》,清华大学出版社
张贤达,《矩阵分析与应用》,清华大学出版社
VanTrees,检测、估计和调制理论(IV)《Optimumarrayprocessing》
Signals and Systems: an Introduction to Analog and Digital Signal Processing. 1987 Lecture. Alan V. Oppenheim
推荐开源项目Athena-signal:建议大家下载运行一下,有SEC、NS、波束形成、GSC实际应用的代码