第4卷第3期 智能系统学报 Vol.4 No.3 2009年6月 CAAI Transactions on Intelligent Systems Jn.2009 doi:10.3969/j.issn.16734785.2009.03.013 利用人类计算技术的语音语料库 标注方法及其实现 沈映泉1,刘勇进',蔡骏2,史晓东 (1.暖门大学智能科学与技术系,福建厦门361005;2.Groupe Parole,L0RIA-CNRS&INRIA,BP239,54600Van- doeuvre-les-Nancy,France) 摘要:提出一种基于人类计算的语音语料库标注方法.该标注方法的主要思路是通过一个基于Wb的语言学习系 统来收集由大量学习者(用户)输人的词汇标注和音标标注,并从中选择出现概率最大的用户输入作为语料的正确 标注.为了保证通过这种人类计算方法获得的标注文本的质量,使用了一些计算机辅助机制来校验收集到的标注的 可靠性.采用这种方法实现语音语料库标注的主要优点在于将语料库标注和语言学习相结合,无需专门投入大量的 人力来进行枯燥乏味的语料库标注工作,从而节省了语料库标注的成本.对这种基于人类计算的语音语料库标注技 术进行了探讨,说明了用于收集用户输入的语言学习系统的设计以及标注生成系统的设计.系统的应用表明,该标 注方法能够有效、低成本地生成语音语料库的词汇标注和音标标注. 关键词:语音语料库标注;人类计算;分布式知识获取;基于W©b的语言学习 中图分类号:TP39文献标识码:A文章编号:16734785(2009)03027008 Method and implementation of transcribing speech corpora based on human-computation SHEN Ying-quan',LIU Yong-jin',CAI Jun12,SHI Xiao-dong' (1.Department of Cognitive Science,Xiamen University,Xiamen 361005,China;2.Groupe Parole,LORIA-CNRS INRIA,BP 239,54600 Vandoeuvre-les-Nancy,France) Abstract:A new method is proposed for generating transcriptions of speech corpora based on human-computation. The method depends on collection of orthographic transcriptions and phonetic transcriptions from a large number of users by using a Web-based language learning system and choosing commonly-used labels as the transcriptions of the speech corpora.In order to guarantee the quality of transcriptions,some computer-aided mechanisms are also used to verify the collected transcriptions.This method combines speech data transcribing with language leaming and cuts down the cost of transcribing corpora effectively.The technology of human-computation-based speech cor- pora transcribing and the detailed design of language leamning system have been discussed,transcriptions generation system has also been expatiated in this article.The application of system shows that this method is an effective and economical way to generate orthographic and phonetic transcriptions. Keywords:speech corpora transcription;human-computation;distributed knowledge acquisition;Web-based lan- guage leaming 在语音识别系统的开发中,对语音语料库进行正 言模型的必要条件.然而,为大规模语音语料库添加 确的词汇标注(orthographic transcription)和音标标注 词汇标注和音标标注是一项需要投入大量人力、物力 (phonetic transcription)是建立有效的语音模型和语 资源的任务.由于现有的语音识别系统无法实现语音 语料库的自动标注,故添加词汇和音标标注往往只能 收稿日期:20080702. 通过手工标注来完成.不论是进行词汇标注还是音标 基金项目:国家留学基金资助项目(2006104705):福建省自然科学基 金资助项目(2006J0043):厦门大学“985工程”二期信息 标注,其本质都是将与语音集合对应的标注信息添加 创新平台资助项目(0000-X07204). 通信作者:蔡骏.E-mail:hun.Cai@ulh.ac.be,Jm.Cai@loria.五. 到语料库中.这样的语音标注任务在信息添加的内容
第3期 沈映泉,等:利用人类计算技术的语音语料库标注方法及其实现 .271 和形式上与标注图像信息(labeling images)是类似 足,手工标注方法一般只能用来标注小型语料库(如 的.因此,图像标注的一些实现方法,比如采用基于人 TT)或者大型语料库中的一小部分.这就导致了在 类计算(human computation)的网络游戏)来产生图 开发各种语言的高性能语音识别系统时,常常面临着 像标注的技术,完全可以被借鉴来解决语音语料库标 缺乏高质量标注的大型语音语料库的难题, 注的问题.本文据此提出了一个采用人类计算技术的 1.2自动标注 Wb语言学习系统,该系统将语音语料库的标注任务 为了克服手工标注大型语音语料库存在的难 和英语学习的教学过程结合在了一起,从而在分布式 题,人们开发出了许多可对语音语料库自动添加词 知识获取的基础上实现语音语料库的标注.尽管这个 汇标注和音标标注的方法.对各种自动标注系统,有 Wb语言学习系统与图像标注的网络游戏一样,都采 一个基本的质量要求,那就是自动生成的标注应具 用了人类计算技术,但二者在为用户提供的服务方面 有足够高的准确度,使其能用于声学模型和语言模 存在很大的不同.后者的服务给用户带来的只是游戏 型的训练 的乐趣,而Wb语言学习系统则为英语学习者提供 通常可以用自动语音识别系统(automatic 了一个练习英语听力理解和训练英语发音的学习平 speech recognition,ASR)来生成词汇标注.此外, 台,用户通过这个平台获得的是一个语言学习和训练 ASR系统也可以用来自动生成音标标注,例如可采 的环境 用神经网络、单音子或三音子声学模型来标记和分 割自然口语语音(spontaneous8 peech)的音素序 1 语音语料库的标注 列56.虽然对于新闻广播的标准朗读语音来说,目 在语音识别领域,通常需要对语音语料库进行 前的A$R系统已经能够达到超过90%的词汇识别 词汇标注和音标标注,这两类标注是训练声学模型 准确率7)和80%左右的音素识别准确率,但这样 和语言模型所不可或缺的24.此外,这2种标注在 的应用还远未达到令人满意的程度.自动生成的词 其他领域也有着重要的应用,例如为听力残障人士 汇标注和音标标注中散布着比例相当大的错误成 提供视频字幕,以及对音频或音/视频节目进行基于 分,还需要由人类标注者逐个词、逐个音标地仔细检 内容的搜索等等,由于语音识别系统的质量在很大 查和校对,以保证标注的可用性.因此,目前的自动 程度上取决于在识别引擎建模过程中是否有足够多 语音识别系统应用并没有真正解决手工标注枯燥乏 的精确标注的语音语料,因此,对大规模语音语料进 味、费时费力的问题.另一个更严重的问题是目前技 行高质量的词汇标注和音标标注在语音识别系统的 术水平的ASR系统要求用户发音清晰、语速稳定, 开发中是一个十分重要的环节.由于词汇标注只需 而且发音和语法都必须是正确的.然而在现场新闻 提供给用户一个输入框,接收用户的输入,而后台的 报道当中,往往存在大量的不正规的语音,比如随意 实现上完全和音标标注相同,因此,作者只论述音标 的发音、不完整的词汇、语音中的停顿、迟疑,以及不 标注 时出现的语速变化等等.这些语音现象的存在使得 为语音语料库添加标注信息的方法有手工标注 自然口语语音的自动标注变得十分困难.自然口语 和自动标注2种.下面分别介绍这2种方法的特点 语音的识别率,特别是词汇的识别率是比较低的 及其在应用中面临的困难 (一般低于80%)91.因此,由ASR系统生成的自 1.1手工标注 然口语语音的词汇和音标标注集合无法被用作可靠 手工标注由受过专门的语言学训练的专家来完 的语料库来建立语言模型和声学模型. 成,因此它直接从人类专家那里获取语言学知识虽 有一些音标自动标注系统通过查找发音词典的 然手工标注可借助如Transcriber和WinSnoori等一些 方法将词汇标注文本映射为它们的发音音标).发音 软件工具来完成,但对于标注者来说,标注大型的语 词典由不同的词汇及其对应的发音组成.这种方法的 音语料库是一项枯燥乏味、费时费力的机械性劳动; 应用有一个先决条件,那就是语音的词汇标注已经存 因此在标注过程中容易出错.为了保证标注的质量, 在.对于有多种不同发音,或者有多种口音变化的词 通常需要由一组标注者对所有的标注文本进行交叉 汇,这种查找发音词典的方法往往难以奏效.对于多 校验和核查,以纠正标注中存在的错误.这意味着在 音词,尽管可以建立一个准确的发音词典,词典中同 大型语音语料库标注项目的实施过程中要投入相当 时列出它的所有发音;但是在将一个多音词映射到其 大的人力资源,整个工程往往耗资巨大,手工进行音 发音的过程中,发音词典本身无法提供如何根据上下 标标注尤其如此.正是由于广泛存在的资金投人不 文来为多音字选择对应发音的规则.另外,许多人名
·272 智能系统学报 第4卷 和专有名词往往没有包含在发音词典中,因而无法通 人士的图片阅读辅助软件,要求图片附有准确的文 过查找词典为它们生成音标标注.这些原因导致了词 字描述.但是目前除了手工标注外还没有一种别的 典查找方法生成的音标标注集的准确率偏低,从而无 方法可以用来为图片生成准确的文字描述,而当前 法满足训练高性能声学模型的需要。 的计算机视觉技术中也没有一种别的通用有效的方 2人类计算及其应用 法可以用来确定图片的内容.然而ESP游戏却很好 地解决了这个问题,它将用户希望享受游戏乐趣的 在计算机科学中,将计算过程中的某些步骤或 心理和图片标记任务有机地结合起来,利用人类计 算子交给人类计算者,由人类来完成这些计算功能, 算技术为每幅图片生成有意义的文字描述.实际上, 这样的技术称为人类计算[2] E$P游戏使用了人脑来代替电脑实现分布式计算, 在传统的计算中,人向计算机提交一个问题的 这类游戏一般称为“有目的的游戏”(game with a 形式化描述,然后从计算机得到一个或多个解,由此 purpose,GWP). 来解释问题.但是在人类计算中,人和计算机的角色 3系统的设计 恰好相反:计算机要求一个或一群人来解决一个问 题,然后将他们的解收集起来再进行解释和整合.人 受到GWP思想的启发,作者设计了一个基于 类计算的一般方法是将计算过程中的某些算子的运 人类计算的W®b语言学习系统来解决在语料库标 算交给用户解决,利用人类计算者本身所具有的处 注过程中遇到的难题.GT常受人诟病的一个不足 理能力来解决那些目前还没有可用的自动计算算子 之处在于用户花费大量的时间在游戏中,除了体验 的问题,如自然语言的处理.这也体现出了人类计算 游戏的乐趣外没有其他的收获,无偿地为GWT的 的基本思想:如果能够很好地利用人类自身所具有 开发者提供了人类计算服务.相比之下,设计的 的处理能力,那么很多计算机无法解决的问题就可 Wb语言学习系统不同于纯粹的网络游戏,它将语 以通过人类的计算、处理而得到满意的解决1,3) 料库的标注任务和英语学习过程结合了起来,为用 目前,人类计算技术已经成功地运用到交互系 户提供了一个在线学习英语的服务平台,使得用户 统的设计上,例如通过网页收集广大用户的最具一 能通过练习注音和听写来训练自己的英语发音和听 般性的知识1,B).ESP游戏就是其中的一个典型 力理解.系统将用户在练习过程中输入的音标标注 例子.为了从网络上数以百万计的图片中找到合适 和听写文字收集起来,由此产生语料库的标注 的图片,有些应用软件,如图片搜索引擎和视觉残障 计贷:机铺 发音词典 助校验 m-.. 讨典查找 参考音标 标注 模块 语音片段 词汇标注 语音句子集合 失合 1动语白 1动语白 参考词汇 标注生成 咨标标注 分段模块 训别模块 标注 模块 ,,,, 人T校验 丛于Weh的谱 模块 言学习惯块 H户输入 人类计算 图1基于人类计算的Web系统的结构 Fig.1 Framework of the human-computation-based Web learning system 图1描述了整个系统的框架,基于Wb的语言 语音分段模块的分割后得到语音片段集合.每个语 学习模块是系统的核心,它利用人类计算技术来标 音片段被分别送到Wb学习模块、自动语音识别模 注语料库.系统以语音句子集合作为输入,经过自动 块和词典查找模块.自动语音识别模块和词典查找
第3期 沈映泉,等:利用人类计算技术的语音语料库标注方法及其实现 ·273 模块生成语音片段的参考标注文本.在Wb学习模 户准确、熟练地掌握每个音标的发音,在这个特殊键 块,系统将语音片段播放给用户,当用户对语音片段 盘上增加了音标发音功能.当用户双击键盘上的一 进行标注并提交后,系统收集用户输入的标注串并 个按键时,系统就会播放对应音标的标准发音.键盘 为用户播放下一个语音片段.最后,系统通过标注生 的下面还设置了一些按钮,通过这些按钮用户可以 成模块,对用户输入和参考标注文本进行一定的比 选择跳过一个雅懂的语音段或者向系统提交自己输 较处理后,输出语料库的标注集.在这个过程中,系 入的音标串。 统还使用了人工校验模块对用户的输入进行校验. 3.2自动分段 下面对整个系统设计进行详细地描述, 系统的输人是语音句子的集合,这些句子的长度 3.1用户界面 大多超过108.对于用户来说,标注10s的句子是比 基于Wb的语言学习模块为用户提供了一个 较困难的.为了降低任务的难度,使用自动语音分段 英语学习平台.用户通过Wb页面上的音频播放器 模块将输入的语音句子分割成大约2s的语音片段: 播放英语句子及其各个片段来练习英语发音和听力 当前系统使用的语音文件信噪比比较大,因此 理解.同时,该模块收集用户输入的标注申并将它们 使用了短时能量噪音检测技术来实现语音的自动分 存人XML文件集合中(XML文件的细节将在后面 段1劉.通过计算每个语音顿的短时能量值来确定该 给出).在收集到大量的用户标注申后,系统利用人 语音顿是语音还是静音,当检测到连续100s的静 类计算机制为每个语音片段生成对应的词汇标注和 音时就可以确定一个语音段的端点.通常情况下,每 音标标注、 个句子的开头和结尾都会有一小段的静音.为了防 图2所示的是英语发音训练的网页(hp:/ 止分段模块生成含有较长静音时间的语音片段,做 59.77.21.117:8080/humanComputation/isp/english. 了一些额外的处理来保证生成的每个语音片段中至 j即).用户的任务是收听播放的语句或语音段,然后 少包含一定数量的(比如50个)有效语音帧.如果 输人对应的音标符号串.网页上面的音频播放器可 句子最后一个语音片段所包含的有效语音帧太少的 以播放、重复播放每个语音片段.播放器左边的文本 话,那么模块就把该语音片段和它的前一个语音片 框用来显示当前正在播放的语音段所在句子的词汇 段结合起来.这样就保证了用户不会听到只包含1 文本,为用户的语音理解提供一定程度的提示和辅 个或2个音节的语音片段, 助.如果当前播放的语音片段在系统中尚没有对应 3.3计算机辅助校验(computer-aided verification) 的词汇标注文本,那么文本框中不显示任何内容 对于一个用户输人串,GWP(如CMU的ESP和 定堂等 CYC的FACTory等)对在该输入串上达成一致的用 上n4h9c1乐g 户数量进行统计从而确定它的质量.尽管这种机制能 的 够有效地收集一般的事实和知识,但是这种基于Wb 的游戏本身无法保证其收集到的信息和知识是完全 正确的.在某些情况下,尽管收集到的信息是许多人 的共识,但其实是共同的错误.例如对于语料库标注 任务来说,如果一群学生受到的发音教育是不正确或 两减 者不准确的,那么这些学生输入的标注很可能是一致 22股2种” 错误的.为了防止系统将用户的共同错误输入接纳为 图2语音学习的网页界面 语料的标注,引入了自动语音识别(A$R)模块和词典 Fig.2 The Web page for phonetic learning 查找模块来对用户的输入进行校验, 播放器和文本框的下面是一个输人框,用来显 使用的ASR模块是在WSJ0的CDI、CD2和 示用户输入的音标符号.在系统中,采用的是CMU CD3的语料数据基础上建立起来的,采用WSJ0的 的音标,由15个元音音标和24个辅音音标组成.为 CD14上的Nov.'92 ARPA WSJ Test Set的330个语 了便于用户使用,将这39音标表示成对应的国际音 句进行测试.该模块在词汇级和音素级上识别的准 标并由此构成页面上的1个特殊的键盘,用户只能 确率分别为94%和62.51%.播放给用户的每个语 通过鼠标点击该键盘上的按键来输入音标符号.这 音片段同时也传给A$R模块进行识别,生成其对应 样的设计将用户的输入限制在音标字母集合中,保 的识别词汇申,这里将其称为参考词汇标注.系统用 证用户不会输入非法的音标符号.同时,为了帮助用 ASR模块生成的参考词汇标注来校验用户输人的
274 智能系统学报 第4卷 词申.对同一语音片段,系统将用户输入的词汇串和 PHONE_LABEL phone level annotation 参考词汇标注进行比较,通过编辑距离来计算用 </PHONE LABEL 户输入词汇串的错误率,定义用户输入串和参考词 </LABEL> 汇标注之间的一致性如下: ANNODATA>annotation01 C =1-Romor (1) <WORD_LABEL>word transcription 式中:C表示一致性,Rm表示词错误率.显然,如果 </WORD_LABEL 用户输人的是正确的词串,那么该词串与参考词汇 <WORD_CONFIDENCE m 标注之间的一致性就比较高;反之一致性就比较低, </WORD_CONFIDENCE 因此,词串的一致性可用来衡量用户输入词串的质 PHONE_LABEL phonetic transcription 量.在当前的系统中,一致性值低于0.4的词串将被 </PHONE LABEL> 系统拒绝,这使得低质量的词汇标注不会被系统接 PHONE CONFIDENCE m 纳.不论这样的标注是多少用户的共识,这样的词汇 </PHONE CONFIDENCE 标注也不会出现在人类计算的结果当中. </ANNODATA 词典查找模块的作用和ASR模块类似,不同的 是词典查找模块生成的是语音片段的参考音标标 <ANNODATA annotation20 注.词典查找模块以ASR模块生成的参考词汇标注 <WORD_LABEL>word transcription 做为输人,通过查找发音词典生成参考音标标注.和 </WORD_LABEL> 词串的校验一样,系统将用户输入的音标串和参考 <WORD_CONFIDENCE m 音标标注进行比较,计算二者的一致性;从而对用户 </WORD_CONFIDENCE 输人的音标串进行评价,以滤除用户的低质量音标 <PHONE_LABEL phonetic transcription 串输入 </PHONE LABEL 3.4标注文本的存储 PHONE_CONFIDENCE m 在系统实现中,语音数据以语音句子和片段的 </PHONE CONFIDENCE 形式存储.为每个语音句子生成一个XL文件,用 </ANNODATA> 以存储该语音句子的标注文本和其他信息.XL文 </SEGMENT> 件的模式如下: <?xml version=“1.0”encoding=“UTF-8”?> <SEGMENT segment10 ANNOTATION <FILENAME segment.file </FILENAME> <UTTERANCE speech.file </UTTERANCE <START TIME time of start point <LENGTH number of seconds </LENGTH> </START TIME> <TEXT>orthographic transcription of the sentence SEG LENGTH number of seconds </TEXT> </SEG LENGTH <SAMPLINGRATE 16 <SAMPLINGRATE/> WORDLENGTH>16 </WORDLENGTH> </SEGMENT> <ENDIANNESS little endian </ENDIANNESS> </ANNOTATION> NUMBER_SEGMENTS n 每个SEGMENT标签标记一个切割出来的语音 </NUMBER_SEGMENTS 片段,存储其相关信息.SEGMENT标签都包含5个 <SEGMENT>segment01 子标签,其中FILENAME、START_TIME和SEG- FILENAME segment.file </FILENAME LENGTH分别用于存储语音片段的文件名、语音片 <START_TIME start point </START_TIME 段的开始时间和持续时间,而子标签LABEL中的 <SEG_LENGTH number of seconds WORD和PHONE分别存储ASR模块生成的词串和 </SEG LENGTH> 词典查找模块生成的音标申.另外,用户输入的标注 <LABEL> 及其对应的置信度值存放在子标签ANNODATA WORD LABEL word level annotation 中.其中置信度值(confidence value)用于反映用户 </WORD LABEL> 输人标注的普遍性和一致性.对于每个语音片段