语音识别技术应用于多媒体教学语音识别技术应用于多媒体教学邵阳 王岚摘 要 本文提出并实现了用于多媒体教学的语音识别系统。该系统实现了从语音到文本的转换,作为多媒体教学中其他相关处理的基础。根据多媒体教学讲座在内容、说话人等方面的特殊性,我们在系统实现上,首先实现了对新闻播报高识别率的基线模型,并在此基础上,采用了声学模型MPE训练,语言模型的自适应,以及多步识别等方法,进而提高了系统性能。该系统在最后的测试中,表现出了对多媒体教学讲座的较高识别率。关键词 语音识别;多媒体教学;MPE训练;语言模型自适应1 引言 语音识别是机器通过识别和理解过程把语音信号转变为相应的文本文件或命令的技术。作为一个专门的研究领域,语音识别又是一门交叉学科,它与声学、语音学、语言学、人工智能、数字信号处理理论、信息理论、模式识别理论、最优化理论、计算机科学等众多学科紧密相连[1, 2]。语音识别经过四十多年的发展,已经显示出巨大的应用前景,高性能的语音识别系统相继问世[3 , 11]。比如,剑桥大学的HTK 大词汇量连续语音识别系统针对非特定人的连续朗读语音识别率已经可以达到90%以上[11]。 同时,随着多媒体技术的快速发展,大量的教学课程以多媒体的形式呈现,包括摄录下来的教学课程视频,相关演示文稿等,平均每小时的教学视频饱含上万字的文本内容。如果依靠人工的听记,将花费大量的人力和资源。 语音识别系统应用与多媒体教学,这是对语音识别应用以及技术的一个新尝试。在本文,我们以成熟的语音识别技术作为基础,提出了针对多媒体教学的语音识别系统。我们首先概要介绍了语音识别系统,包括其中的声学模型、语言模型等主要方面。接着,我们在第2.1章首先实现了一个基线语音识别系统,随后我们针对多媒体教学中讲座的特点对语音识别系统进行了性能提高,并且在测试中表现出了较好的结果。2 语音识别应用于多媒体教学 我们实现了适用于多媒体教学的语音识别系统,可以为多媒体教学系统提供一个语音到文本的转换系统,作为以下功能的基础。 根据语音识别后得到的脚本文件(Transcript),首先,该脚本文件可以制作成为字幕文件,同时,其中的英文语音内容通过机器自动翻译,能生成为中文字幕,呈现给用户。第二,语音识别所生成脚本文件中的关键信息与演示文稿中的文本信息进行关联和匹配,从而实现了演示文稿与学术报告和教学课程视频的自动同步播放。其三,语音识别后脚本文件能被抽取为多层次的词汇信息,进而实现基于内容的视频分段播放。其四,脚本文件可以用于基于内容的多媒体检索和定位[4]。 以下就针对多媒体教学的语音识别系统进行阐述:2.1 语音识别基线系统2.1.1 声学模型的训练与测试数据 共有140小时的语音数据被用于该语音识别系统中声学模型的训练。训练数据主要包括两部分的内容,一部分为Linguistic Data Consortium(LDC)发布的Hub-4新闻类数据,另一部分为我们搜集的讲座类训练数据。各部分训练数据的信息如下表所示:表1 声学模型训练数据统计表᭄ᴹ⑤᭛ӊ᭄Ⳃᘏᯊ䯈(ᇣᯊ)ᷛ⊼(ᇣᯊ)ᮄ䯏㉏5841.530.2䆆ᑻ㉏8267.7446.85ᘏ䅵140109.2477.05䷇㋴ऩܗ䷇㋴Ib;c;ch;d;f;g;h;j;k;l;m;n;ng;p;q;r;s;sh;t;w;x;y;z;zh䷇㋴IIa(1-5);ai(1-5);ao(1-5);e(1-5);ei(1-5);er(1-5);i(1-5);ia(1-5);iao(1-5);ie(1-5);iu(1-5);o(1-5);ou(1-5);u(1-5);ua(1-5);uai(1-5);ue(1-5);ui(1-5);uo(1-5);v(1-5)ᄫ䫭䇃⥛˄CER˅ໄᄺൟeva104ZR001S2(HLDA,Pitch,ML)15.5%58.3%ൟ䇁᭭ᴹ⑤䇁᭭ᑧᇣlm-GTHHub-4ˈTDT4ˈGigaword314M䆡lm-siat㔥Ϟ᧰䲚ⱘ䆆ᑻ㉏䇁᭭390K䆡lm-lecture䆆ᑻݙᆍⳌ݇ⱘ䌘᭭᭛ḷ563K䆡ൟড়ᑊ↨՟OOV(%)PPlexCER(%)lm-GTH--1.34329.633.6lm-GTH+lm-siat9:11.343027.448.5lm-GTH+lm-lecture9:10.38291.031.6Vol.3No.2/Feb.2009᭄ᴹ⑤᭛ӊ᭄Ⳃᘏᯊ䯈(ᇣᯊ)ᷛ⊼(ᇣᯊ)ᮄ䯏㉏5841.530.2䆆ᑻ㉏8267.7446.85ᘏ䅵140109.2477.05䷇㋴ऩܗ䷇㋴Ib;c;ch;d;f;g;h;j;k;l;m;n;ng;p;q;r;s;sh;t;w;x;y;z;zh䷇㋴IIa(1-5);ai(1-5);ao(1-5);e(1-5);ei(1-5);er(1-5);i(1-5);ia(1-5);iao(1-5);ie(1-5);iu(1-5);o(1-5);ou(1-5);u(1-5);ua(1-5);uai(1-5);ue(1-5);ui(1-5);uo(1-5);v(1-5)ᄫ䫭䇃⥛˄CER˅ໄᄺൟeva104ZR001S2(HLDA,Pitch,ML)15.5%58.3%ൟ䇁᭭ᴹ⑤䇁᭭ᑧᇣlm-GTHHub-4ˈTDT4ˈGigaword314M䆡lm-siat㔥Ϟ᧰䲚ⱘ䆆ᑻ㉏䇁᭭390K䆡lm-lecture䆆ᑻݙᆍⳌ݇ⱘ䌘᭭᭛ḷ563K䆡ൟড়ᑊ↨՟OOV(%)PPlexCER(%)lm-GTH--1.34329.633.6lm-GTH+lm-siat9:11.343027.448.5lm-GTH+lm-lecture9:10.38291.031.6 如表 1所示,新闻类训练数据是指从新闻电视或广播中获得的语音训练数据,Hub-4数据来源于三部分内容:1) CCTV(中央电视台)的电视新闻;2)VOA(美国之音)的广播新闻;3)KAZN(洛杉矶商业电台)的广播新闻。新闻类训练数据共有41.5小时的语音数据,其中的30.2小时被进行了标注,共计 35,761句(utterance)。另外,针对多媒体教学的用途,我们还搜集了讲座类训练数据,即多媒体教学中常见的教学、讲座、课程等语音内容。其中包含15名不同的说话人的82个讲座语音数据。讲座类训练数据共有91,034句(utterance)被进行了标注,总时长是46.85小时。 我们同样采用了两种类型的测试数据,即新闻类和讲座类测试数据。新闻类测试数据采用的是NIST发布的eva104 [5]数据,其中包含CCTV的新闻播报约45分钟。讲座类测试数据分别采用了“EAP概述”(简称eap)和 “如何打造自动自发的卓越团队-1”(简称ZR001)2.1.2 基线语言模型 我们使用了多个语料库来训练基线语言模型(Language Model, LM):1)Hub-4新闻播报的脚本;2)LDC发布的TDT4中文语料库;3)Gigaword普通话语料库;4)我们搜集的其他语料资源(将在2.2.1章中详细介绍)。其中,前三部分语料资源含有的词数约为314M。 针对上述语料资源,我们分别采用了基于词的三元语言模型(3-gram LM)建模,然后合并(Interpolate)产生最终的语言模型。其中,由上述前三部分语料资源(Hub-4,TDT4,Gigaword)所生成的语言模型,我们将其作为基线语言模型(简称lm-GTH)。语言模型的具体性能,我们将在2.2.1章中详细介绍。2.1.3 字典和音素单元 在基线系统中,我们采用了含68K词的字典(Dictionary)和词列表(Word-list),用于声学模型和语言模型的训练与测试。字典和词列表中包含有11K英文单词和57K中文单词。字典中所使用的音素集合为带音调(pitch)的音素单元,比如“巴”的发音在字典中表示为:“巴 ba1”。此外,我们的声学模型也是根据上述音素单元进行建模的。在声学的训练过程中,我们共采用了119个不同的音素单元。2.1.4 前端参数化处理 我们在计算特征向量时所用的汉明窗的长度为25毫秒,帧移为10毫秒。同时,在前端参数化处理中,我们所使用的特征向量是带有第零阶倒谱的线性感知预测(PLP),其中包括12阶线性感知预测系数,一阶、二阶和三阶差分倒谱,共39维特征矢量,以及表示帧能量总和的零阶倒谱(zeroth cepstra)。利用异质性线性区别分析(HLDA)[6],我们将扩展的52维特征向量映射为39维特征向量,去除冗余信息。然后,我们对提取的参数特征添加音调(pitch)[7]特征参数,将39维的特征向量扩展到42维的特征向量。表2 用于声学模型的音素单元表2.1.5 基线声学模型 基线系统的声学模型(简称S2)为5状态自左向右的音素单元HMM模型,其中2-4状态为发射状态,第1和第5状态为开始与结束状态。我们采用最大相似度(Maximum Likelihood,ML)原则进行训练,并使用41.5小时的Hub-4新闻类数据作为训练数据。 整个声学模型的训练过程主要分为两个阶段,即单音素模型的训练和三音素模型的训练。每个阶段又都包含了两个步骤,即估计与强制对齐。首先我们针对119个音素单元训练了单音素(monophone)模型。之后,我们考虑到汉语语音的标注是一种字典式标注而不是发音标注,因此将每个语音波形与其标注进行了强制对齐,并且允许语音识别技术应用于多媒体教学7模型合并比例OOV(%)PPlexCER(%)lm-GTH--1.34329.633.6lm-GTH+lm-siat9:11.343027.448.5lm-GTH+lm-lecture9:10.38291.031.6在音素之间插入或者删短时停顿(sp),以及在每句(utterance)的开始与结尾处插入静音(sil)。 在初始单音素模型训练之后,我们在全音素字典的基础上,针对上下文关系,将单音素扩展成了所有可能的三音素(triphone)(约为38K)。我们采用决策树对扩展后的三音素进行了绑定[8]。决策树中所涉及的问题主要是语音学的专家知识,能够处理训练集中未出现的音素上下文关系,合并相似的发音状态,实现对单高斯函数的聚类,绑定后的三音素状态约为3040个。 基线系统的声学模型(S2)针对两种类型的测试集分别进行了识别。基线模型S2采用最大相似度(ML)准则进行训练,且采用了HLDA和pitch。识别过程采用单步识别,识别中使用的语言模型为基线语言模型(lm-GTH)。 表3所述为基线声学模型针对两种类型测试集合的识别结果。其中对新闻类测试集(eva104)字错误率为15.5%,但是,对讲座类测试集(ZR001)的字错误率达到58.3%。可以看到,这样的识别结果显然不能满足多媒体教学系统的识别需求,因此,我们需要对基线识别系统进行优化和提高。表3 基线声学模型的识别结果表2.2 系统性能提高2.2.1 语言模型性能提高 为了提高语言模型在识别系统中的识别效果,我们首先对语言模型的训练数据进行有针对性的扩充。一方面,我们增加语言模型的训练数据量,另一方面我们搜集的语料资源主要是与多媒体教学相关。如2.1.2章所述,我们搜集的语料资源主要从网上以及相关资料文档而来。针对网上语料资源我们会对其进行数据预处理,即清除与内容无关的网页信息,如html提示符,网站广告等信息。我们对从网上搜集的讲座类资源(词数约为390K)进行语言模型建模(简称lm-siat)。另外,我们还搜集讲座内容相关的pdf格式资料文档,并抽取文本内容(词数约为563K),建立语言模型(简称lm-lecture)。语言模型的具体训练语料如下表所示: 我们对不同的语言模型进行合并,并使用相同的声学模型和识别方法,可以得到如下表所示的结果。 表5给出了不同语言模型在讲座类测试集eap上的识别效果,包括复杂度(Perplexity)、未登录词(OOV)以及字识别错误率(CER)。可以看到,如果对基线语言模型合并了非相关内容的语言模型(lm-siat),会对识别效果产生负面影响。但如果对新闻类语料训练的lm-GTH