语音识别标准之痛

取自 自然语言处理百科

跳转到: 导航, 搜索

语音技术涉及到语音编码、语音合成、语音识别、语音技术应用等多个技术领域。本文讨论的不是语音编码的标准问题,而是对语音合成与识别领域的技术标准做一个研究与探讨。

语音技术涉及到语音编码、语音合成、语音识别、语音技术应用等多个技术领域。目前,关于语音编码,国际标准化组织 ISO和国际电信联盟ITU上已经制订了一系列的技术标准,分别应用在有线通信、移动通信、数字音响等领域。但是,关于语音合成与识别技术的标准还没有一个统一的规范,ISO和ITU在这些领域也没有颁布技术标准和规范。虽然有些标准化组织、研究机构和大公司提出了各自的技术规范草案,但是没有得到广泛的承认和支持。国际上,许多跨国公司,如IBM、Microsoft、AT&T、Naunce、Sun System等对语音技术的研究已经持续了多年,对制定语音技术领域的标准非常关心并积极参与,希望能把各自公司的研究成果纳入到技术规范和标准中去,以期在激烈的竞争中处于技术的制高点。现在,与互联网有关的语音技术应用领域,相关的国际语音标准发展迅速,形成了VoiceXML和SALT两大语音标准阵营,并各自都获得了广泛的支持。但是,对语音合成与识别的核心技术,如系统框架、接口规范等还没有统一的标准。本文不讨论语音编码的标准问题,而是对语音合成与识别领域的技术标准做一个初步的探讨。

语音技术标准的三个层面

虽然目前国际上还没有统一的、得到广泛承认和支持的语音合成与识别领域的技术标准,但是,这方面的研究工作发展迅速,近几年推出了许多研究成果,特别是W3C组织积极推动并发布了多个语音技术应用方面的规范或标准。例如, W3C发布了Voice Browser(语音浏览器)标准的草案。在这个标准中,Voice Browser标准(草案)定义了几种支持语音输入和输出的链接语言。这些链接语言使语音设备可以跨越各种硬件和软件平台,特别是设计了关于对话、语音识别语法、语音合成、自然语言语义和搜集可重复使用的对话组件的链接语言。这些链接语言和组件就构成了未来语音界面框架。现在,这个标准组中的参加成员有 AT&T、Cisco、Hitachi、HP、IBM、Intel、 Lucent、Microsoft、Motorola、Nokia、Nortel、Sun和Unisys等公司。由于语音识别与合成技术还处在迅速发展阶段,制订出一套合适的技术标准很不容易。关于语音技术(除了语音编码)有关标准的制定工作主要集中在三个层面。

语音技术应用: 在这个层面上,主要规定在应用开发中如何使用语音合成与识别技术,即应用程序与语音合成/识别引擎之间的通信协议/语言,许多跨国公司积极参加了这个层面的规范与标准的起草、制订工作,例如,如IBM、AT&T、Naunce、Microsoft、Sun System等,推动并且形成了VoiceXML和SALT两大语音标准阵营。从开发者的角度看,这些标准都是面向应用系统开发用的。万维网联盟W3C主持了VoiceXML的起草和制定工作,并从2000年开始陆续发布了VoiceXML的多个版本,其中包括了语音识别语法规范和语音合成标记语言等。这些标准不仅使应用程序可以移植,而且还能够使语法相关联。VoiceXML 2.0是一种标记语言,用于建立话音界面,相当于带语音功能的HTML。现在已经有数百个大的厂商开发了基于VoiceXML的应用程序。SALT表示语音应用标记语言,它是在现有的标记语言,如在HTML、XHTML的基础上,增加了对语音和多媒体功能的支持而形成的。对语音应用,它主要关注的是如何通过电话得到语音服务。2002年,SALT联盟论坛发布了SALT技术规范的草案,并且把它提交给了W3C,希望能成为技术标准。参加和支持SALT技术规范的大公司包括: Cisco Systems Inc., Comverse Inc., Intel Corp., Microsoft Corp., Philips Speech Processing 以及 SpeechWorks International Inc.等。

语音识别/合成系统性能评测标准: 美国国家技术与标准研究所(NIST)主持了这个方面的工作。从20世纪90年代中期开始,NIST就开始组织语音识别/合成系统的性能评测工作。由于语音识别/合成系统的实现技术各种各样,对它们的评测实际上是相当困难的。20世纪90年代初期的时候,语音识别/合成系统大量推出,但往往出现下面的情况: 某个系统在推出时,声称该系统有很高的性能,但实际应用的时候其性能与宣传的差别很大。因此,NIST认为应制定出一套评价语音识别/合成系统的技术标准,让所有的语音识别/合成系统在这套评测标准下进行评估,以得到客观的性能评价指标。在该领域,NIST陆续制定了评价语音识别/合成系统的词错误率 WER的计算规范,语言模型的复杂度的计算规范,训练和测试语料的选取,系统响应时间标准,合成语音自然度的评价规范,测试程序的规范等。近年来, NIST又制定了针对其它语种(如,汉语,日语等)的评价标准。NIST的评价标准迅速得到了语音识别/合成领域开发者的支持,越来越多的大公司积极参加 NIST组织的评测活动,同时也推动了语音识别/合成技术的发展。国内的“863”智能人机接口专家组也开展了类似的工作,陆续制定了针对汉语语音识别与合成系统性能的评价规范。

语音识别/合成引擎及其开发接口: 在这个层面上还没有一个技术标准或规范被广泛承认和采纳。ISO、ITU、NIST、W3C等标准化组织都没有在该方面推出技术标准或规范。实际上,这方面的工作涉及到许多语音识别/合成系统的具体实现问题,而系统的实现方法千变万化,难以用一个统一的规范和标准来规范。虽然没有语音识别/合成引擎及其开发接口的统一的标准和规范,但一些开发厂商和研究机构还是制定了各自的规范,在各自的语音系统中得到了实现,并随着语音识别/合成系统的推出而发布。

IBM在其推出的语音识别与合成引擎ViaVoice中规定了开发接口,提供了几百个开发接口函数。 Microsoft推出了基于它的语音识别与合成引擎开发语音应用的接口Speech SDK, 在其中也提供了类似的开发接口函数。但是,IBM和Microsoft的语音识别与合成引擎的实现细节没有公开,也没有提供这方面的技术规范。另外,美国的CMU大学、英国剑桥大学电子工程系的HTK开发组都发布了开放式的语音识别与合成引擎的源码以及相应的开发工具,它们的语音识别与合成引擎的实现方法纷纷被众多的开发者所借鉴,从而形成了业界很有影响的开发规范,但是,这些规范也不是标准。目前,有许多语音识别与合成引擎,但是没有提供实现的技术规范,因此,这些系统的实现和提供的接口只是遵守各自特殊的规定,没有规范化并得到广泛的应用。


转自:计算机世界报 2006年06月12日 第22期 B20、B21,有删节。 原文作者:章森 王伟 华绍和

个人工具
工具箱