语音识别(ASR)系列之一:总览

最近在系统性调研语音识别模型的发展历程,包括从上世纪八十年代开始流行的GMM/HMM模型,到近两年各种Attention相关模型的探索,在公众号里分享一下,对ASR感兴趣的伙伴可以整体地了解一下语音识别发展的来龙去脉。

由于相关模型众多,为了保证文章结构清晰不冗长,初步计划分5篇文章介绍:总览、混合模型、CTC模型、Transducer模型、Attention相关模型。本篇为第一篇,总体介绍ASR的原理及分类。

ASR的任务

ASR,即Automatic Speech Recognition,自动语音识别,目标是把语音转换为文本。

基本原理

将语音转换为文本,等价于对给定的语音信号,要找一段文字序列使它和语音信号的匹配度最高,即:

其中X表示语音信号,W表示文字序列,通过贝叶斯公式转换为:

为求各种W下上式最大值,最后一等式因分母P(X)与W无关,直接去掉P(X),最后转化为分别最大化 P(X|W) 和 P(W)。

P(X|W):表示给定文字后语音信号的概率,即这句话有多大的可能发出这串音,这是声学模型的任务。

P(W):表示一个文字序列本身的概率,即这一串字本身有多像一句话,这是语言模型的任务。

ASR问题最终转化成了声学模型和语言模型的问题。

语音识别(ASR)系列之一:总览

评估方法

  1. 常用测试数据集

    1. TIMIT:https://catalog.ldc.upenn.edu/LDC93S1, 630人说的8种主要美语口音。

    2. Switchboard (SWB):https://catalog.ldc.upenn.edu/LDC97S62和https://catalog.ldc.upenn.edu/LDC98S75 两个版本, 含多人电话对话。

    3. LibriSpeech:http://www.openslr.org/12/,1000小时16kHz含标注录音。

  2. 评估指标

    WER(最常用):Word Error Rate, 字错率

    PER(少有用):Phoneme Error Rate, 音素错误率

模型分类

根据模型的整体结构,可分为混合模型(Hybrid Model)和端到端模型(End-to-end Model)。

混合模型主要使用HMM(隐马尔科夫模型)计算最终的文本序列(实际是音素序列,后续解释)。HMM计算需要一个状态转移矩阵和发射矩阵,ASR经典模型GMM/HMM中发射矩阵是通过GMM(混合高斯模型)计算的,整个模型混合使用了GMM和HMM,所以叫混合模型。

相对于混合模型,若使用一个模型直接从语音输入得到最终文本序列,则叫端到端模型,主要代表有基于CTC、Transducer和Attention的模型。