语音处理理论、应用

  • 1、语音处理介绍
    • 1.1、语音处理
      • 1.1.1、语音处理的简介
      • 1.1.2、语言学
      • 1.1.3、语音学
      • 1.1.4、语音特征
      • 1.1.5、语音信号预处理
        • 1.1.5.1、预加重
        • 1.1.5.2、分帧
        • 1.1.5.3、加窗
      • 1.1.6、语音信号分析
        • 1.1.6.1、时域分析
        • 1.1.6.2、频域分析
        • 1.1.6.3、语音信号的数字化
    • 1.2、语音识别
    • 1.3、语音合成
      • 1.3.1、语音合成系统
        • 1.3.2、语音合成处理流程
        • 1.3.3、语音合成方法
        • 1.3.4、语音合成算法
  • 2、传统语音模型
    • 2.1、GMM高斯混合模型
      • 2.1.1、混合模型
      • 2.1.2、高斯分布(正态分布)
        • 2.1.2.1、单高斯模型
        • 2.1.2.2、高斯混合分布
        • 2.1.2.3、EM算法(迭代算法)
    • 2.2、HMM隐马尔可夫模型
      • 2.2.1、马尔科夫链
        • 2.2.1.1、马尔科夫链案例
        • 2.2.1.2、马尔科夫链
        • 2.2.1.3、可观测马尔科夫模型
        • 2.2.1.4、穷举法
        • 2.2.1.5、马尔科夫链预测问题和算法
      • 2.2.2、隐马尔科夫模型
        • 2.2.2.1、模型解释
        • 2.2.2.2、三个问题
    • 2.3、GMM-HMM模型
      • 2.3.1、语音识别过程
      • 2.3.2、单字识别
  • 3、神经网络语音模型
    • 3.1、DNN深度神经网络
      • 3.1.1、深度神经网络
      • 3.1.2、前向传播原理
      • 3.1.3、反向传播算法
      • 3.1.4、数据预处理
      • 3.1.5、模型初始化
      • 3.1.6、权重衰减
      • 3.1.7、dropout
      • 3.1.8、batch大小选择
      • 3.1.9、随机取样
      • 3.1.10、学习率
      • 3.1.11、网络结构
    • 3.2、DNN-HMM深度神经网络-隐马尔可夫模型
    • 3.3、CD-DNN-HMM
  • 4、高级语音模型
    • 4.1、RNN
    • 4.2、长短时记忆网络LSTM
    • 4.3、GRU
    • 4.4、BiRNN:双向循环神经网络
    • 4.5、语音数据对齐
    • 4.6、端到端模型
  • 5、技术前沿和未来展望
    • 5.1、技术前沿
    • 5.2、语音识别难点
    • 5.3、未来展望

1、语音处理介绍

1.1、语音处理

1.1.1、语音处理的简介

  • 语音信号处理(Speech Signal Processing)简称语音处理,是用以研究语音发声过程、语音信号统计特性、语音自动识别、机器合成以及语音感知等各种处理技术的总称。
  • 由于现代的语音处理技术都以数字计算为基础,并借助微处理器、信号处理器或通用计算机加以实现,因此也称数字语音信号处理
  • 语音处理是语音到某一种特征的转换所需要的全部技术;语言信息主要包含在语音信号的参数之中,因此准确而迅速地提取语言信号的参数
    是进行语音信号处理的关键

1.1.2、语言学

  • 语言学是以语言为研究对象的科学。它研究的对象是人类语言,它的任务是研究、描写语言的结构、功能及其历史发展,找出语言的本质,探索语言的规律
  • 语音、语法、词汇及文字这些学科都注目于语言的结构本身,是语言学的中心,称为微观语言学。

1.1.3、语音学


1.1.4、语音特征

  • 特征提取的一般方法
  • MFCC

1.1.5、语音信号预处理

  • 语音信号预处理的一般步骤
  • 数字化:将从传感器采集的模拟语音信号离散化为数字信号
  • 预加重:预加重的目的是为了对语音的高频部分进行加重,去除口唇辐射的影响,增加语音的高频分辨率;
  • 端点检测:从语音信号中识别并消除长时间静音段,减少环境对信号的干扰;
  • 分帧:因为语音的短时平稳性,所以要进行“短时分析”,即将信号分段,每一段称为一帧(一般10-30ms);
  • 加窗:语音信号的分帧是采用可移动的有限长度窗口进行加权的方法来实现的。加窗的目的是减少语音帧的截断效应。常见的窗有:矩形窗、汉宁窗和汉明窗等。

1.1.5.1、预加重

1.1.5.2、分帧

1.1.5.3、加窗

1.1.6、语音信号分析


1.1.6.1、时域分析

1.1.6.2、频域分析

1.1.6.3、语音信号的数字化

1.2、语音识别

  • 语音识别技术就是让机器通过识别和理解把语音信号转变为相应的文本或命令的技术。 语音识别技术所涉及的领域包括:信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等。
  • 发展历史
    发展趋势:语音识别任务越来越复杂,使用到的模型也越来越复杂,语音识别逐渐从实验室到市场应用。
  • 语音识别任务分类 - 孤立词识别
  • 语音识别任务分类 - 连续词识别
  • 语音识别算法
  • 传统语音处理流程
  • 语音识别处理的难点
     地域性;
     场景性;
     生理性。
    一句话总结语音识别的难点就是不确定性很强。同一个词、同一句话受到不同因素的影响可能发音完全不同。

1.3、语音合成

  • 语音合成,又称文语转换(Text-To-Speech)技术,能将任意文字信息转化为相应语音朗读出来。 语音合成涉及声学、语言学、数字信号处理、计算机科学等多个学科技术,是中文信息处理领域的一项前沿技术。
  • 为了合成出高质量的语言,除了依赖于各种规则,包括语义学规则、词汇规则、语音学规则外,还必须对文字的内容有很好的理解,这也涉及到自然语言理解的问题

1.3.1、语音合成系统

  • 一个完整的语音合成系统过程是先将文字序列转换成音韵序列,再由系统根据音韵序列生成语音波形。其中:
     第一步涉及语言学处理,例如分词、字音转换等,以及一整套有效的韵律控制规则;
     第二步需要先进的语音合成技术,能按要求实时合成出高质量的语音流。

1.3.2、语音合成处理流程

  • 文本分析
     文本归一化:对形形色色的自然文本数据进行预处理或者归一化,包括句子的词例还原,非标准词,同形异义词排歧等;不完整的词完整化
     语音分析:文本归一化之后的下一步就是语音分析,具体方法包括通过大规模发音词典,字位-音位转换规则;分词
     韵律分析:分析文本中的平仄格式和押韵规则,这里主要包含三方面的内容,包括:韵律的机构,韵律的突显度,音调。

1.3.3、语音合成方法

1.3.4、语音合成算法

  • 基于HMM的参数合成
  • WaveNet(原始音频生成模型)
  • Tacotron(端到端的语音合成)
  • Deep Voice 3(带有卷积序列学习的尺度文本语音转换)

2、传统语音模型

2.1、GMM高斯混合模型

2.1.1、混合模型

  • GMM计算步骤
    高斯混合模型函数
    概率密度函数
    似然函数
    对数似然函数
    EM算法求解
  • 优缺点
    优点:
     拟合能力强
     对语音特征匹配概率最大化
    缺点:
     无法处理序列因素
     无法处理线性或近似线性数据
  • 混合模型是一个可以用来表示在总体分布中含有K个子分布的概率模型,换句话说,混合模型表示了观测数据在总体中的概率分布,它是一个由K个子分布组成的混合分布。例如:由几个高斯分布混合起来的模型叫高斯混合模型,几个线性模型混合在一起的模型叫线性混合模型。

  • 混合模型是一个统计模型,包含固定效应和随机效应两种效应的混合。在统计学中,混合模型是代表一个大群体中存在子群体的概率模型;混合模型不要求观测数据提供关于子分布的信息来计算观测数据在总体分布中的概率。

2.1.2、高斯分布(正态分布)

  • 分布曲线

2.1.2.1、单高斯模型

  • 最大似然估计法:在实际情况中,我们不会知道当前模型是符合什么分布的,所以需要最大似然估计法来从数据推断数据属于什么分布
    点估计:最后输出的是一个点
    区间估计:最后输出的是一个区间,一个范围
    小概率事件不太可能发生

  • 概率和似然的区别
  • 单高斯模型参数学习

2.1.2.2、高斯混合分布


2.1.2.3、EM算法(迭代算法)

整个EM算法可以归结为以下几个步骤:
 初始化参数;
 求解期望,也就是每个样本点属于每个单高斯模型的概率;
 最大化过程,根据期望过程得到的结果,更新参数;
 迭代上述过程直至收敛。




2.2、HMM隐马尔可夫模型

2.2.1、马尔科夫链

2.2.1.1、马尔科夫链案例


第n次购买商品只与第n-1次有关,而不依赖前面n-2次的概率

第三次概率:P(aaa)=0.20.80.8

2.2.1.2、马尔科夫链


2.2.1.3、可观测马尔科夫模型

  • 可观测马尔科夫模型:状态序列可以观测
  • 马尔科夫学习模型
    没有人会事先告诉我们某个现象是参数为多少的马尔科夫模型,如果我们还是相对这个随机过程进行研究,那该怎么办呢?这就需要学习过程了,通过能拿到的数据,学习模型的参数。

2.2.1.4、穷举法

  • 马尔科夫链学习算法 - 穷举法

2.2.1.5、马尔科夫链预测问题和算法

  • 问题
  • 算法

2.2.2、隐马尔科夫模型

2.2.2.1、模型解释



2.2.2.2、三个问题

  • 评价问题:给定五个参数A B π R S的情况下,计算一个可观测序列出现的概率,包括前向算法和后向算法

    • 前向后向算法

  • 解码问题:待给定一个隐马尔可夫模型情况下,给出一个观测序列,计算能给出这个观测序列的序列最有可能是哪一个。包括动态规划算法和Viterbi算法

    • 隐马尔科夫模型解码算法 - 穷举法
    • 隐马尔科夫模型解码算法 - Viterbi


  • 学习问题:根据已有数据,推算到模型所需要的参数的问题,包括监督式算法和非监督式Baum-Welch算法

    • 隐马尔科夫模型学习算法 - 监督算法
    • 隐马尔科夫模型学习算法 - Baum-Welch

2.3、GMM-HMM模型

  • GMM-HMM作用:共同完成识别单个词
  • GMM描述一个信号的概率密度


2.3.1、语音识别过程

2.3.2、单字识别







3、神经网络语音模型

  • GMM-HMM主要的缺点有以下三个:
     由于GMM-HMM中,每个隐藏状态都对应了一个GMM模型,特别是当进行连续词识别时,状态数量是很大的,因此模型训练会消耗大量的时间且参数空间很大
     隐马尔科夫模型对语音识别问题进行建模时,有一个隐藏的条件,就是隐藏状态序列之间需要满足马尔科夫特性,也就是说下一个时刻隐藏状态只和当前时刻的隐藏状态有关系,和过去以及未来的隐藏状态都没有关系,这个假设其实在实际中并不是完全合理的,很多时候是前后多个状态决定中间某个状态的
    每个模块是单独进行优化和训练的,模块之间相互耦合关联,这样就导致了不能端到端处理任务,无法根据具体的任务优化整个流程

3.1、DNN深度神经网络

3.1.1、深度神经网络


3.1.2、前向传播原理

3.1.3、反向传播算法

3.1.4、数据预处理

3.1.5、模型初始化

3.1.6、权重衰减

3.1.7、dropout

3.1.8、batch大小选择

3.1.9、随机取样

保证样本分布的准确性

3.1.10、学习率

前期学习率大,探索,后期学习率小,希望更精确

3.1.11、网络结构

3.2、DNN-HMM深度神经网络-隐马尔可夫模型


  • 训练过程

3.3、CD-DNN-HMM

DNN:
HMM:描述语音的序列化信息
一个状态先验概率分布:将先验和后验概率联系起来

  • 性能升级
    使用更深的神经网络DNN:更深的网络层次,这样有更好的表达
    使用更长的帧作为输入:更多上下文信息,对当前状态进行更好的预测
    使用三因素进行建模:语言发音因素建模
    提升训练数据的标注质量:标注越准确,训练模型越好
    预处理(浅层DNN):先浅训练得到结果,可以在更好的位置取向最优

  • DNN训练加速
    多GPU反向传播
    异步随机梯度下降
    减小模型规模
    记错

  • 解码加速
    并行计算
    稀疏网络
    低秩近似(大尺寸DNN训练小尺寸DNN)
    多帧DNN

  • DNN优于GMM

4、高级语音模型

4.1、RNN

  • 循环神经网络(英文名Recurrent Neural Networks,简称RNN)是一种通过隐藏层节点周期性的连接,来捕捉序列化数据中动态信息的神经网络,可以对序列化的数据进行分类

  • 和其他前向神经网络不同,RNN可以保存一种上下文的状态,甚至能够在任意长的上下文窗口中存储、学习、表达相关信息,而且不再局限于传统神经网络在空间上的边界,可以在时间序列上有延拓

  • RNN广泛应用在和序列有关的场景,如一帧帧图像组成的视频,一个个片段组成的音频,和一个个词汇组成的句子。

  • RNN适用的场景
    循环符号代表时间的循环

  • 结构展开

  • 计算过程

  • 标准RNN
    t-1时刻会有一个输入x,并且有一个输出h和一个输出转态,当t时刻时,又会有一个输入x并且结合前面的输出转态,经过一个重复模块,转化成输出h和一个状态输出,以此重复。

  • BPTT(随时间反向传播)

  • RNN梯度消失和梯度爆炸
    反向训练时,对于RNN来说,要横向往前推,一直往前推到序列开始的地方。
    梯度消失,梯度爆炸都与路径长度太长有关,前面的权重都基本固定不变,没有训练效果。

4.2、长短时记忆网络LSTM

  • 长短期记忆网络(Long Short-Term Memory , LSTM),是一种时间递归神经网络,适合于处理和预测时间序列中间隔和延迟相对较长的重要事件

  • LSTM区别于RNN的地方,主要就在于它在算法中加入了一个判断信息有用与否的“处理器”,这个处理器作用的结构被称为cell。一个cell当中被放置了三扇门,分别叫做输入门、遗忘门和输出门一个信息进入LSTM的网络当中,可以根据规则来判断是否有用。只有符合算法认证的信息才会留下,不符的信息则通过遗忘门被遗忘

  • LSTM与语音识别

  • LSTM的使用场景

  • 标准LSTM

  • 初始状态
  • 遗忘门
  • 输入门
  • 更新信息
    遗忘门+输入门
  • 输出门

4.3、GRU




4.4、BiRNN:双向循环神经网络

4.5、语音数据对齐





4.6、端到端模型



5、技术前沿和未来展望

5.1、技术前沿

5.2、语音识别难点

  • 远场麦克风识别
  • 高噪音场景语音识别
  • 多人语音识别
  • 交谈背景语音识别
  • 非标准语音识别(变速、带有情绪等)

5.3、未来展望

  • 更优的算法与模型
  • 更先进的麦克风阵列技术
  • 更先进的声学模型和范式
  • 更强有力的工具
  • 更深入的特征方法和预处理方法
  • 多学科融合

HCIP-AI语音处理理论、应用相关推荐

  1. 重磅!联合国权威AI趋势报告,美中日韩四分天下

    https://www.toutiao.com/a6654843071613633038/ 2019-02-06 19:09:55 近年来,随着AI从理论知识落地到全球市场,AI正以其潜在的革命性影响 ...

  2. 游戏AI之初步介绍(0)

    目录 游戏AI是什么? 游戏AI和理论AI 智能的假象 (更新)游戏AI和机器学习 介绍一些游戏AI 4X游戏AI <求生之路>系列 角色扮演/沙盒游戏中的NPC 游戏AI 需要学些什么? ...

  3. 构筑超异构计算时代,英特尔 AI 全布局

    作者 | 伍杏玲 出品 | AI 科技大本营(ID:rgznai100) 我们正值数据井喷时代,据 IDC 发布<数据时代 2025>报告显示,全球每年产生的数据将从 2018 年的 33 ...

  4. 免费开源!新学期必收藏的AI学习资源,从课件、工具到源码都齐了

    (图片付费下载于视觉中国) 整理 | Jane 出品 | AI科技大本营(ID:rgznai100) 2019 年 3 月 28 日,教育部公布了 2018 年度普通高等学校本科专业备案和审批结果,共 ...

  5. 华为鸿蒙系统2.0发布了!AI人工智能大有可为!

    9月10日,在深圳举行华为2020开发者大会上,华为正式推出了鸿蒙2.0系统.华为消费者业务CEO余承东表示,明年华为手机将全面支持鸿蒙系统. 余承东介绍称,鸿蒙主要包含两大部分:"1+8+ ...

  6. 年末回顾:2021年 AI 领域十大研究趋势及必读论文

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 编 | 小轶,Yimin_饭煲 在本文中,我们将梳理近百篇的最新深度学习论文,以总结出 ...

  7. 锁死AI基础研究的两个「智子」是什么?

    作者 | 青暮.维克多 编辑 | 王亚峰 不像20世纪初飘在物理学上空的两朵乌云,如今AI面对的两个困境似乎更加飘渺无踪. 在小说<三体>中,当物理学家杨冬得知地球基础科学是被" ...

  8. Java进一步增强AI支持:Java-AI库概述

    2019-11-24 16:01:42 1.简介 在本文中,我们将概述Java中的人工智能(AI)库. 由于本文是关于库的,因此我们将不对AI本身做任何介绍.另外,为了使用本文介绍的库,必须具备AI的 ...

  9. 人工智能预测AI系统的“心灵”与“行为”

    来源:中国科学网 任何同Siri或Alexa有过令人沮丧的互动体验的人都知道,数字助理无法同人类媲美.而它们需要的是被心理学家称为"心智理论"的东西-- 一种意识到其他人的信念和欲 ...

最新文章

  1. [C++调试笔记]Main函数声明变量
  2. 计算机系统优化的目的和原理,优化原理
  3. 五猴分桃c语言课程设计,c语言程序设计五猴分桃问题实验报告.doc
  4. python网站模板下载_Python画图模板大全:从此画图不用愁
  5. 7-2 字符串逆序 (15 分)
  6. 2022MWC上海预计6月29号开幕
  7. Structure of a Task
  8. java 随机生成大写字母_java 生成随机大写字母,整数,小写字母
  9. 驱动程序安装全攻略2
  10. AB余商c语言编程答案,C语言课后题编程答案
  11. STM8使用STVD开发环境问题
  12. 18. shell当中的until,until语法,无限循环,until示例
  13. HTTP协议有关知识
  14. VOIP技术发展综述与外呼系统的关系
  15. LeedCode 717 1比特与2比特字符
  16. 漫画:脑筋急转弯题目(尼姆问题求解)
  17. android 7 audio架构,GitHub - zozo825117/ble_audio_android: android audio框架
  18. 微信小程序 画布 组件
  19. Java实现LeetCode第199场周赛(题号5472,5473,5474,5462)
  20. 安慰奶牛 C++ kruskal

热门文章

  1. 看漫画学Python 第二章代码
  2. 整站seo,整站seo策略实施
  3. 网络型可编程控制实训装置
  4. python爬取百度图片——翻页式网站爬取
  5. 首届“深水云脑杯”全国智慧水务数据创新大赛在深圳圆满落幕
  6. 最近关于挑战杯的学习
  7. 今日,华为 30 亿元 成立数字能源公司!(附赠书获奖名单)
  8. vim切换tab标签快捷键
  9. 用“小聪明”实现连续爬取谷歌翻译
  10. Youpk: 又一款基于ART的主动调用的脱壳机