本博客转载自顾宇的《基于神经网络的语音频带扩展方法研究》,大家可从知网获取。

摘要

  语音频带扩展旨在从频带受限的窄带语音信号中恢复宽带语音信号。由于受到语音采集设备以及信道条件的限制,传输语音信号的带宽往往小于4KHz,高频部分的缺失会导致语音音质下降、自然度受损等问题。

  传统方法是基于统计声学模型采用高斯混合模型来描述低频声学特征到高频声学特征的映射关系,缺点:建模精度不足、重建高频频谱过平滑等问题。

主要工作:

1、本文研究了基于深度神经网络的语音频带扩展方法

2、本文研究了基于循环神经网络的语音频带扩展方

3、本文提出了基于深层扩张卷积神经网络与波形建模的语音频带扩展方法

4、本文研究了结合频带扩展的统汁参数语音合成方法。

第一章  绪论

1.1 语音频带扩展的意义

由于受到通信网络中信道带宽、编码方式以及成本等多方面因素的影响,语音信号在通信过程中仅仅能够保留低频(0.3kHz一3.4kHz)部分进行传输,这严重影响了传输语音的质量。高频段成分蕴含着丰富的声学信息,这些信息直接影响语音信号的音色、自然度、清晰度和可懂度等。这些高频信号的缺失会导致语音质量严重下降,会使得声音变得较为低沉。同时也会出现与说话人音色存在较大偏差的问题,影响听者对说话人的辨识。

  频带扩展技术可以应用到自动语音识别中,窄带的电话语音同全带语音相比,其识别正确率往往较低,但经过频带扩展处理后,电话音的识别正确率可以得到较为明显的提升。

  频带扩展同样也可以被应用到语音增强等其他研究方向中,可以进一步提升相应语音的信噪比

  本研究中也通过频带扩展技术提高语料库的采样频率或者对低采样率语音进行高频重建,从而进一步提升语音统计参数合成系统中合成语音的音质。

1.2 语音频带扩展研究现状

整个语音信号频带扩展的技术方法可以分为非盲式盲式两犬类研究方法

非盲式频带扩展方法

非盲式的频带扩展方法除了要在信道中要传输低频信息外,还需要对高低频的相关系数、高频子带信息等额外的附加信息进行编码。与此同时接收端的解码器要对这些附加传输的高频信息进行高频语音成分的重建。

优点:非盲式的频带扩展方法由于在接收端解码时收到了附加的高频信息,因此能够较好地恢复缺失的高频成分,但是仍然需要对高频成分进行编码,同时要占用部分信道进行传输,因此该方法的成本较高,依旧会面临现有信道的带宽有限等问题,无法被大规模的采用。

盲式的语音频带扩展方法

盲式的语音频带扩展方法,在语音编码和信道传输过程中,不需要添加任何高频成分的相关信息,只是直接利用接收的低频语音来自动恢复出缺失的高频分量。这种方式不会对信道造成任何额外的负担,可以有效地控制成本。

所以本文以盲式的语音频带扩展方法为研究重点。

不同的盲式频带扩展方法

盲式频带扩展通常会依照源.滤波器模型进行,按照语音产生机理,将语音信号分解为激励信号和用于描绘声道特征的谱包络相关参数,并分别进行建模处理。谱包络参数也多会使用一些诸如线性预测系数(LPC)、倒谱(cepstrum)、线谱列系数(LSP)等低维的近似简化参数,本文除了在模型上引入神经网络,在特征直接选用短时傅里叶变换中的幅度谱。

本章也将介绍一些诸如谱折叠的基于规则的方法和码本映射、线性映射等较为简单的方法,同时将对基于统计模型的一般性方法流程进行总体的说明,同时也会详细介绍本研究中利用高斯混合模型的基线系统。

1.2.1 谱折叠的基于规则的方法或者简单映射的频带扩展

利用谱折叠的方法,该方法将低频谱参数翻折后做为高频成分。这类方法操作相对简单,几乎不需要任何的模型,但是这类诸如谱折叠的方法需要假设高频频谱的特性满足一定的规则,而这些假设局限性强,难以刻画实际高频频谱的特性,重建效果相对较差。

基于码本映射和线性映射的方法。码本映射法(Codebook Mapping)是最早被提出的高频谱重建方法之一。就是建立一个窄带信号的码本,其包含一个码字列表,而这些码字是由窄带语音提取出的一些特征参数组成的特征向量,同时每个码本也对应着该窄带语音帧相应的高频带部分谱信息。当码本被训练好后该方法从输入的语音信号中提取相应的特征信号,同所有的码本进行比较,挑选出一个或者多个匹配度最好的码字信息,利用其对应的高频带谱信息来恢复全带的语音信号。诸如LPC系数、LSF、MFCC等很多声学参数都曾被使用到利用码本映射来进行频谱扩展的工作中,这些参数都能表征语音谱包络信息。在具体利用码本映射方法进行频带扩展时,码本的使用细节也是多种多样的,比如有人将清音和浊音帧分别构造不同码本来提升建模精度,另外在重建高频部分信息时,高频特征向量也可通过与其最相近的多个码本加权平均计算得到。线性映射(Linear Mapping)也是一种常见的估计谱包络信息的方法。在线性映射的方法中,可以令一个特征向量Xt表示t时刻的低频部分的谱包络信息,同时令另一个特征向量M来表示z时刻对应的高频部分谱包络或者全带语音的谱包络信息,这些特征向量多为LPC预测系数或者LSF参数。线性映射则假设这些特征向量之间满足线性映射关系,如下式表示

1.2.2 基于统计声学模型的频带扩展

高斯混合模型和隐马尔科夫模型应用到频带扩展中来,基于神经网络的频带扩展方法也可以归为统计声学模型中来,基于统计声学模型的方法需要引入一个统计概率声学模型来表征窄带语音声学特征与高频语音声学特征的联合概率分布,该声学模型可以在模型训练阶段利用给定的训练数据进行参数学习,训练参数则可以对全带语音进行下采样得到窄带语音信号与其对应的高频部分。利用声码器进行特征参数的提取,构成一组成对的平行训练数据。在频带扩展阶段,可以利用已经训练好的声学模型(窄带和高频语音特征之间的联合概率),推导出给定窄带频谱特征下高频频谱特征的条件概率,并利用该条件概率,结合相应的准则预测出缺失的高频分量特征。最后利用输入的窄带语音、特征与恢复的高频特征,结合相应的声码器合成出全带语音波形。

1.2.3 基于高斯混合模型的频带扩展

  该系统采用梅尔倒谱系数(MCCs)作为声学模型,GMM的参数可以通过期望最大化算法(EM)来进行估计,

在频带扩展阶段:采用最大拟然参数生成算法(MLPG),估计出全带语音的梅尔倒谱特征。应用全局方差(GV)以消减GMM建模中预测的频谱特征过度平滑的现象。

缺点

  GMM只是一种分段线性模型,对非线性关系建模能力有限,并且只能适用于对低维数据进行建模,很难对高维的原始谱包络或者幅度谱特征进行建模,高频重建能力有限,会造成恢复的高频频谱过度平滑等现象。

1.2.4 基于神经网络的频带扩展

  神经网络可以直接对原始语音的谱包络参数进行建模,同传统方法只适用于对诸如梅尔倒谱、线谱对系数等低阶谱表征的建模相比,其可以更好的保留频谱细节,使神经网络方法能够具有更加精准的声学建模能力。

  浅层的神经网络受限玻尔兹曼机(RBM)、双向关联记忆网络(BAM)、DNN神经网络应用到频带扩展中来。

缺点:DNN的方法都是每一帧之间独立生成的,帧与帧之间的相关性考虑的很少,而语音信号是一个时间序列前后相关连的信号。

突破口:每一帧语音都可以分类到一类音素或者一个音素状态中,不同文本或者不同音素对应的高低频谱能量分布和频谱特征不尽相同。

1.3 本论文的研究目标与研究内容

  很多研究都是采用多层RBM预训练,在利用BP算法微调的策略,这些策略包含产生式、生成式的训练方法,采用不同的预训练、多任务学习的训练策略。采用分类任务和回归任务结合的方式建模。

  传统基于统计模型的频带扩展都是针对帧级别特征进行建模,而我们做的是在波形层面建模。该论文还研究了利用频带扩展技术进一步提升语音合成系统的合成效果。

论文的主要工作:

1.基于深度神经网络的频带扩展模型训练方法研究。
2.基于递归神经网络的频带扩展方法研究。
3.基于扩张卷积神经网络与波形建模的频带扩展方法研究
4.结合频带扩展的参数语音合成方法研究。

  其中对于深度神经网络频带扩展方法研究,采用了基于RBM、BAM、DNN等众多模型方法,对比传统的基于GMM的频带扩展方法,在主观倾向性测听和客观指标上都具有较大优势。同时也参照了采用对数功率谱特征的基于DNN的语音增强算法将基于DNN的话者无关频带扩展方法做为基线系统,并在此基础上进行了改进。

第二章  基于深度神经网络的频带扩展模型训练方法

本章将利用浅层网络受限玻尔兹曼机、双向关联记忆网络、深度神经网络。并采用传统的堆叠的受限玻尔兹曼机以及有监督训练方法,本文还采用多种生成式训练(组合多种浅层模型)预训练和训练方法。

另外引入了多任务学习方法,将窄带语音文本信息来做分类任务和频带扩展任务相结合。

2.1 基于产生式模型的神经网络频带扩展

2.2.1 受限玻尔兹曼机简介

  受限玻尔兹曼机(RBM)是一种双层无向联接的随机神经网络,RBM有一个隐层和一个显层,显层用于输入训练数据,隐层用于特征检测器,做分类任务。

RBM模型参数可以通过对比散度(CD)算法近似计算得到。

2.2.2 双向关联记忆网络简介

  双向关联记忆网络(BAM)是有两层显层的随机神经网络,其中一个显层输入特征后,另一层便会产生与之相关联的输出特征

  为了克服DNN训练较难的问题

第一种DNN结构,提出了利用堆叠的受限玻尔兹曼机来进行无监督预训练的方法,这里将这种DNN的训练策略称为BPDNN。

  1、首先利用输入端数据训练出一个RBM模型

  2、然后用隐层节点被激活的概率值训练下一层的RBM,依次类推

  3、预训练出一个垒叠多层RBM的无监督模型

  4、并利用预训练后的模型权重做为DNN的初始化权重值

  5、再利用BP算法进行有监督地权重微调(fine—tuning)

第二种DNN结构,包含输入层、输出层、两个隐层。该DNN拥有四层节点,其中包含输入层、输出层和两个隐层,该四层节点的网络通过级联两个RBM和一个BAM得到。这里将这种结合RBM和BAM的生成式训练方法称为GTDNN。

  1、先用两个不同的RBM模型分别对输入训练数据和对应的输出训练数据进行建模,

  2、然后利用训练集中输入、输出数据在两个RBM隐层节点上的激活概率训练中间的BAM层,

  3、两个RBM可以分别看作输入信号和输出信号的特征提取器,将符合高斯分布的输入输出进行二值化的表征学习,

  5、而中间的BAM可以看作对于RBM提取的二值化表征的特征转换器

第三种DNN训练方法,在一个训练好的GTDNN模型基础上再利用BP算法进行一次整体的微调。利用GTDNN的权重为初始值,再进行利用最小均方误差(MMSE)准则进行一次有监督的训练,这里将这种训练方法命名为GPDNN。

2.1.3 结合受限玻尔兹曼机的频带扩展方法

  x表示窄带语音谱包络参数,y表示全带语音中截取的高频谱包络。利用基于GMM的频带扩展方法进行子空间划分,每个子空间分别使用一个RBM进行建模,RBM的显层节点用来表示高低频谱包络。(论文中很多看不懂的公式)

优点:能够有限克服传统基于GMM方法中过度平滑等问题,并且直接对谱包络等高维特征进行建模。

缺点:RBM无法由全带特征的联合概率分布推导出给定窄带特征下高频率特征输出的闭式条件概率密度公式,因此在进行高频参数预测过程中需要进行求偏导,并进行迭代求解,这样会导致高频参数重建过程不够直接,相对有较大的时延;同时迭代初始值的选取也会影响高频重建效果

2.1.4 结合双向关联记忆网络的频带扩展方法

 同样利用基于GMM的频带扩展系统进行子空间划分,每个子空间利用训练数据训练一个GBAM,其中GBAM的两个显层节点分别代表窄带谱包络参数和高频部分谱包络参数。

2.1.5 结合深度神经网络的频带扩展方法

  本文用DNN的输入层表征窄带静态和动态谱包络特征,输出层为相对应的高频谱包络特征,并进行神经网络的训练。当该神经网络训练好后,其模型参数便可以表征窄带特征和高频特征之间的映射关系。

  在高频参数恢复阶段,给定低频输入特征时,高频输出特征的条件概率分布看作一个高斯分布,其中条件均值为DNN的输出值,方差矩阵可以通过训练集估计到。上述DNN训练策略BPDNN、GTDNN与GPDNN。其中BPDNN采用了GBRBM级联RBM,并逐层训练的方式进行预训练,然后利用BP算法结合MMSE准则进行训练。对于GTDNN,使用平行的窄带语音谱包络特征和高频语音谱包络特征分别训练两个GBRBM,并得到两组参数,BAM训练过程中的偏置项不做更新,固定为两个GBRBM对应的偏置项的值。对于GPDNN的训练方法,在一个已经训练好的GTDNN基础上,利用GTDNN的网络参数进行初始化,再利用BP算法并结合MMSE准则进行一次网络参数的微调。

  除上述利用谱包络参数与其动态参数这种特征外,一些研究者采用从傅里叶变换后得到的频谱幅度中计算出对数功率谱特征做为声学特征,该特征不需要使用声码器就能够合成语音,因此可以避免声码器对语音音质造成损伤。但同时该系统只能恢复高频频谱的幅度值,对于恢复语音所必须的相位信息则没有进行相应的建模处理。目前较为常用的方法是利用窄带输入相位进行简单的镜像翻折,以构建全带的相位信息。结合通过DNN进行预测的高频功率谱与通过镜像翻折得到的高频相位谱,可以采用重叠相加法(OLA)重建全带语音。

2.2 基于多任务学习的深度神经网络频带扩展方法

2.2.1 多任务简介

2.2.2 结合音素状态分类的多任务学习频带扩展方法

2.3 实验

2.3.1 实验一 基于产生式模型的神经网络的研究方法

  实验一采用谱包络作为声学特征,使用一个女性播音员的中文语料库进行实验,声音为16kHz采样率,量化比特为16。从中选出loo句语音,平行的8kHz采样率窄带语音通过下采样得到,其中随机选出80句做为训练数据,另外20句做为测试数据。16kHz采样率和8kHz采样率语音分别进行2048和1024点FFT,以使其频谱分辨率保持一致,同时训练过程中静音段被剔除掉,以免影响模型训练的精度。

  构建GMM系统时,24维MCC做为全带语音特征,16维MCC做为窄带语音特征,MCC特征由声码器STRAIGHT提取。混合高斯数设置为32。构建5个基于神经网络的频带扩展系统时,谱包络特征同样由STRAIGHT提取出来,窄带语音谱包络维度为513维,高频部分为从全带语音的1025维频谱包络中截取出的530维。RBM系统中隐层节点设置为100,BAM和RBM系统的子空问数目都设置为32。对于基于DNN的系统,均采用了相剧的网络结构,包含两层隐层,且每层节点数目均设置为2048。

2.3.2 实验结果和分析

基于神经网络的语音频带扩展相关推荐

  1. 基于高斯混合模型的频带扩展算法的研究

    本博客是我看<基于高斯混合模型的频带扩展算法的研究>_于莹莹论文的心得,大家可以通过知网或邮件我获取. 摘要 现状:传统的电话语音带宽范围是300Hz~3400Hz,当带宽扩展到300~8 ...

  2. Matlab神经网络语音增强,基于BP神经网络的语音增强研究

    曰髯? 分类号: 论文编号:2丛坦丝旦生丛 密级:公开 贵州大学 2009届硕士研究生学位论文 基于即神经网络的语音增强研究 学科专业:电路与系统 研究方向:模式识别 导师:刘宇红教授 研究生:周元芬 ...

  3. 基于Matlab的BP神经网络在语音特征信号识别中的应用

    本微信图文详细介绍了BP神经网络在语音特征信号中的应用,并给出了Matlab源码.

  4. 基于matlab的语音信号基本处理系统,基于matlab的语音信号处理及分析

    内容简介: 毕业设计 基于matlab的语音信号处理及分析(共19页,8147字) 引言 数字信号处理的主要研究对象是数字信号,且是采用运算的方法达到处理的目的的,因此,其实现方法,基本上分成两种实现 ...

  5. 基于小波变换的语音增强算法简单综述

    前言: 语音通信是人类传播信息,进行交流时使用最多.最自然.最基本的一种手段.而这种通信中的信息载体-语音信号却是一种时变的.非平稳的信号,只有在很短的一段时间内(通常为10~30ms)才被认为是平稳 ...

  6. 一种基于蓝牙和语音控制的智能家居系统【100010378】

    2018年大学生电子设计竞赛设计报告 一种基于蓝牙和语音控制的智能家居系统 摘要:本项目使用 STM32F407 作为主控芯片,通过蓝牙和语音控制实现安全.便宜的智能家居系统.实现了手机实现家电控制: ...

  7. 基于神经网络的语音识别,神经网络语音合成

    目前,实现机器人语音交互功能的主流技术有哪些 . 语音增强(单麦克风语音增强,麦克风阵列语音增强),语音识别(动态时间规整,DTW:隐马尔科夫模型,HMM:支持向量机分类模型,SVM:人工神经网络模型 ...

  8. 基于matlab的音频信号处理系统,毕业设计-基于matlab的语音信号处理及分析

    资料简介 毕业设计 基于matlab的语音信号处理及分析(共19页,8147字) 引言 数字信号处理的主要研究对象是数字信号,且是采用运算的方法达到处理的目的的,因此,其实现方法,基本上分成两种实现方 ...

  9. 【论文综述】基于深度学习语音分离技术的研究现状与进展

    基于深度学习语音分离技术的研究现状与进展 本文主要是针对单通道的监督性语音分离技术的综述,描述该技术涉及到的特征.模型和目标三个主要方面:并对语音分离的一般流程和整体框架进行了详细的介绍.归纳和总结. ...

最新文章

  1. word2003计算机应用考试,2017职称计算机考试Word2003操作练习题
  2. registry ---------仓库 -----------------镜像
  3. paperclip的id partition功能还是相当的给力,省得我们实现了,这个功能之前连想都没想到,...
  4. C语言 将字符串中数字字符全部删除
  5. linux卸载es,Ubuntu卸载elasticsearch
  6. Qt工作笔记-moc的认识
  7. ie678,FF,chrome的css兼容性
  8. winform文件迁移工具
  9. 使用docker方式安装etcd集群,带TLS证书
  10. STM32 上位机 测试蓝牙电话功能功能(包括拨打电话/挂断电话/接听电话/Audio Transfer/获取通话电话号码/获取本地电话号码/激活语音识别/获取本地号码/获取运营商名字/3GPP指令)
  11. Windows运行及cmd常用命令
  12. 解决idea项目没有蓝色小方块
  13. 什么是测试场景标准库?
  14. 应届毕业生转行新媒体运营指南:学习新媒体运营的三大路径
  15. python爬取新浪微博数据中心_Python爬虫框架Scrapy实战之批量抓取招聘信息
  16. iOS实现服务器原生推送
  17. fasterrcnn中ROI Pooling 与 SPP 理解
  18. 神经网络(NN)网络构建及模型算法介绍
  19. HTML+CSS 制作联系人页面(可自适应)
  20. 【Echarts】在Vue中使用Echarts

热门文章

  1. 【pyhon】理想论坛爬虫1.05版,将读取和写DB分离成两个文件
  2. 15.4 MPLS 控制层面 PE和CE设备间的路由更新
  3. 异常统一处理[ExceptionAdvice](SpringMVC)
  4. anaconda更改虚拟环境安装位置
  5. XCTF-WEB-cookie-解题思路
  6. 数据分析-Excel基础操作
  7. Linux系统SCSI磁盘扫描机制解析及命令实例
  8. 风剑分享“站在上帝视角看数据”,点燃企业大数据梦想与思潮
  9. strcmp()函数详解
  10. 重磅 ! CVPR2020最新计算机视觉论文代码分类打包下载