深度学习与人类语言处理课程笔记,上节回顾深度学习与人类语言处理-introduction。这节课将会简单介绍语音识别的最新研究方法,请看正文

语音识别该何去何从?

1969年,J.R. PIERCE:“语音识别就像把水变成汽油、从大海中淘金、治疗癌症、人类登陆月球”

当然,这是50年前的想法,那么语音识别该如何做呢?

一个典型的语音识别系统如下,输入一段语音到模型,模型输出一段文本

Speech:表示一个长度为T,维度为d的向量序列

Text:一个token序列,长度为N,V个不同的token,通常T>N

接下来看看输入可以有哪些可能,输出有哪些可能,首先看下输出部分

输出Token

音位(phoneme,发音的基本单位)

在深度学习没有流行之前,以音位为输出是很常见的,因为音位和声音的对应关系比较强,那输出是一系列音位,怎么变成我们能看懂的文字呢?需要一个词典,需要语言学家标出来,音位同样也需要语言学家帮忙

字母(Grapheme,书写的基本单位)

英文(基本书写单位:字母)

总的token:26个英文字母+一个空格+标点符号

one_punch_man;N=13,V=26+?

中文(基本书写单位:单个汉字)

总的token:常用的汉字(和英文区别在于没有空格)

"一",“拳”,“超人”,“人”;N=4,V=4000+

词(word)

英文:one punch man;N=3,通常V>100K

中文:“一拳 ”超人“;N=2,V=?

使用词做为输出单位很难,因为中文没有空格,没有词的明确分界,对于一些语言,V可能超大,无法穷举

语素(Morpheme,可以传达意思的最小单位,小于词,大于字母)

例如英文中:unbreakable可以拆成 “un“ ”break“ ”able”

那语素如何获取呢?

请语言学家告诉我们;使用统计学方法

字节(bytes)

使用字节作为输出系统是language independent,不受语言限制

所有的语言都用UTF-8编码表示:

那么哪个Token最受欢迎呢,统计了19年语音三大顶会paper ( INTERSPEECH’19, ICASSP’19, ASRU’19 )。发现最多人使用的是grapheme

除了上述形式,还有哪些输出呢?

输入语音,输出word embedding

和翻译系统结合,直接输出另一种语言文本

加入意图识别,输出对应的意图

输出输入中所包含的关键词

输入部分(声学特征,acoustic feature)

对输入的声音信号,使用25ms的时间窗取出一个frame,对应就有400个采样点(16KHz)(使用MFCC会得到39维向量、filter bank输出是80维),通常的每个时间窗的间隔为10ms,那么1s内就有100个frame,如何处理每个frame呢,请看下图

输入声音信号 经过 离散傅里叶变换 变成 频谱图,经过多个不同的 filter bank (古圣先贤们设计出来的) 处理后, 得到向量 使用对数变换,经过 离散余弦变换,使用MFCC方法得到向量

同样我们看下哪种输入信号最受欢迎,19年filter bank成为主流

训练一个语音识别系统需要多少数据?

很多很多,google语音识别系统用了上十万的语音数据。。。

语音识别模型的两个不同的角度

seq-to-seq将要被介绍的模型

Listen, Attend, and Spell (LAS)

Connectionist Temporal Classification (CTC)

RNN Transducer (RNN-T)

Neural Transducer

Monotonic Chunkwise Attention (MoChA)

同样我们看下,19年的趋势

下节课。我们将会依次介绍上述提到的模型

接下来深度学习与人类语言处理-语音识别(part2)

references:

深度学习与人类语言处理-语音识别(part1)相关推荐

  1. 深度学习与人类语言处理学习笔记(一)—— 语音识别(理论篇)

    文章目录 1. 语音识别概述 1.1 Token的表示 1.2 Acoustic Feature 2. 语音识别深度学习模型 2.1 Listen,Attend,and Spell(LAS) 2.2 ...

  2. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P28-2)

    Audio BERT 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_DLHLP20.html 视频链接 ...

  3. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P9)

    Language Modeling For Speech Recognition 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tl ...

  4. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P11)

    Voice Conversion 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_DLHLP20.htm ...

  5. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P10)

    Voice Conversion 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_DLHLP20.htm ...

  6. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P12)

    Speech Separation 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_DLHLP20.ht ...

  7. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P17) 任务精简

    Overview of NLP Tasks 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_DLHLP2 ...

  8. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P17) -2

    Overview of NLP Tasks 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_DLHLP2 ...

  9. 课程向:深度学习与人类语言处理 ——李宏毅,2020 (P19)

    BERT and its family:Introduction and Fine-tune 李宏毅老师2020新课深度学习与人类语言处理课程主页: http://speech.ee.ntu.edu. ...

最新文章

  1. ASP.NET 实现站内信功能(点对点发送,管理员群发)
  2. 串—KMP算法(详细)
  3. Java虚拟机调用jni_JNI攻略之十一――启动虚拟机调用java类
  4. java正则过滤特殊字符
  5. 第五章 循环结构课后反思
  6. 【Hibernate】Hibernate查询语言HQL详解
  7. 刚刚,阿里开源 iOS 协程开发框架 coobjc!
  8. 将一个16进制数转化为10进制数
  9. uBLAS——Boost 线性代数基础程序库 (二)
  10. javascript 数组过滤重复对象
  11. Anaconda使用conda连接网络时,出现网络错误CondaHTTPError(包括Anaconda安装与入门)
  12. 记录Android Studio KeyMap 导入的问题
  13. EBS 销售订单登记提示错误 ORA-00604 LPX-00225
  14. 不允许对不可访问的基类 类型强制转换 c++
  15. python爬取网易云_利用python爬取网易云音乐,并把数据存入mysql
  16. php基本变量,PHP-语法及变量基本操作
  17. Packet len* is out of range 解决方法
  18. 机器学习20:基于ResNet50和FaceNet实现人脸识别
  19. 如何解决eNSP启动AR/WLAN设备失败问题
  20. vue 点击获取当前时间上/下周 整周数据

热门文章

  1. nettry 入站事件如何传递到下一个handler
  2. Git 协同开发流程
  3. foobar的来源与历史
  4. 杭电OJ分类题目(2)
  5. 树莓派(Arduino)仿真软件 —— Fritzing
  6. 面向项目(六)—— 错误(异常)信息的书写
  7. Java 线程——Timer TimerTask
  8. 协议(protocol)与网络协议
  9. vs2013 也能重构(refactor )变量名了
  10. utilities(C/C++)