人工智能自然语言处理在录音教材的应用研究

2022-07-13 00:50杨宇凡
电声技术 2022年5期
关键词:解码器编码器音频

杨宇凡

(人民教育电子音像出版社,北京 100081)

0 引言

随着人工智能技术的发展,人工智能相关应用已逐步渗透进各个行业。目前人工智能语音识别技术在客户端的应用较为广泛,而在助力音频内容编辑生产方面的应用研究还比较少,目前暂时没有成熟的支持语音识别的音频工作站软件推出。本文聚焦人工智能语音识别技术辅助语言类录音教材编辑研发应用环节,将语音识别技术与音频工作站和媒资系统相结合,搭建语言类产品的智慧内容生产平台。该研究也可以横向迁移到其他语言录音项目上,如广播剧或者听书节目。因笔者主要从事录音教材的研发相关工作,因此本研究以录音教材中的应用为例。

人民教育电子音像出版社的录音教材产品在质量和理念上均处于国内领先水平,拥有超过30年的语言录音教材创编经验和内容素材积累,对于人工智能自然语言处理的研究和应用有着得天独厚的优势。

1 人工智能自然语言处理概述

人工智能(Artificial Intelligence,AI)是计算机科学的一个分支。它企图了解智能的实质,并生产出一种能以人类智能相似的方式做出反应的智能机器。人工智能技术由英国数学家、逻辑学家艾伦·图灵(Alan Turing)于1950 年开创。1956 年,在达特茅斯学院数学系任教的约翰·麦卡锡(John McCarthy)及在哈佛大学任教的马文·明斯基(Marvin Minsky)正式确立了人工智能这一概念[1]。

人工智能领域的研究包括机器人、语言识别、图像识别、自然语言处理以及专家系统等。其中,自然语言处理(Natural Language Processing,NLP)是人工智能的重要应用分支。自然语言处理最早开始于对机器翻译的研究。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。语音识别是自然语言处理的应用方向之一。历史上,语音识别曾出现过很多种技术实现路径,其中不乏有些路径经过数十年研究后才发现不可行。当前的自然语言处理语音识别技术主要基于人工智能深度学习算法(Deep Learning,DL)和语言模型(Language Model,LM)来实现。本文主要研究的也是基于人工智能深度学习算法结合语言模型实现的语音识别技术在语言类录音教材的编辑研发应用。

2 人工智能语言识别算法基础

2.1 语言模型

在人工智能自然语言处理中,构建语言模型是重要的基础工作之一。自然语言处理最常见的数据是文本数据。文字、字母这类数据是一种离散的时间序列,即字符间的关系并不像温度、长度一样是连续的,不同的先后顺序和排列组合导致不同的语义[2]。

假设一段词汇为T的文本中的词汇依次为w1,w2,w3…,wT,这个序列中的每一个词都是依次生成的,那么语言模型将计算该序列的概率为:

当使用一个大型文本语料库去训练这样的一个语言模型时,就可以得到词频和下一个单词出现的概率数据。这在自然语言处理中用途很大。例如在机器翻译领域,把英文“You leave first”翻译成中文,如果只是对单词进行翻译那么只能翻译成“你离开先”,但如果加入了语言模型对下一个单词出现概率的预测后,那么计算机可计算出“你先离开”出现的概率高于“你离开先”,那么机器翻译就可以改进之前的翻译结果为“你先离开”,从而得到更好的结果。语音识别本质上也是一种翻译工作,只不过源数据从某种外语变成了音频波形。

然而,当句子中的单词序列比较长时,计算量将呈指数级增加,庞大的计算量使得对整句话进行预测十分困难。为了解决这个问题,对语言模型使用马尔可夫假设(Markov-Assumption),可以简化上述语言模型[3]。马尔可夫假设规定一个词的出现概率只与它前面的那个词有关,一个n阶马尔可夫假设序列中下一个词只依赖于其前的n个词,即n阶马尔可夫链(Markov chain of ordern),其中n越大,预测越准确,同时运算量也越大。n阶马尔可夫链表达式为:

使用马尔可夫假设对模型进行简化是不严谨、不准确的,因为下一个单词出现的概率可能并不依赖于前面n个词,但马尔可夫假设依然是数十年来语言模型的主导方法。此外,即便使用了马尔可夫链进行简化计算,运算量依然不小。为了解决马尔可夫链的局限性,本文研究引入了循环神经网络(Recurrent Neural Network,RNN)。在循环神经网络中,每一层的计算结果不仅会输出到下一层,而且还会同时输出一个隐藏状态,给当前层在处理下一个样本时使用。循环神经网络的提出是为了更好地处理序列信息,在处理时空中有相关性的数据和自然语言处理方面有非常重要的应用[4]。

前馈神经网络和循环神经网络如图1 所示。

图1 前馈神经网络与循环神经网络对比

将循环神经网络图按照时间展开后得到图2。

图2 循环神经网络按照时间展开后示意图

使用语言模型马尔克夫链和循环神经网络预测文字对比示意如图3 所示。可以直观地看出,基于马尔可夫链预测文字,预测结果只与预测字前1个字(或n个字)有关。而基于循环神经网络预测的字,不仅与前一个字有关,同时与前边所有的字相关。

图3 马尔克夫链和循环神经网络预测文字对比示意图

循环神经网络在前馈神经网络的基础上,增加一个隐藏状态和时间戳的参数。循环神经网络的表达式为:

式中:h为隐藏单元个数,q为输出个数,t为时间同步状态,φ为隐藏层的激活函数。

通过这个表达式可以看出,模型参数数量上相对马尔可夫链大大简化,计算量也要小的多。而且,即便是用于预测最后一个字符的隐藏参数,也是从第一个序列数据计算而来,也就是与第一个序列数据相关,这就解决了马尔可夫链简化导致的预测精确度下降的问题。总之,循环神经网络就是用较少的模型参数和计算量表达了比较复杂和比较长的基于时空的序列数据。

在实际应用中,通常使用RNN 神经网络的变体——编码器和解码器(Seq2Seq)模型。循环神经网络的功能就是输入一串不定长的序列数据,输出一串定长的序列数据。但这种方式在应用上存在一定局限性。比如把一段语音识别成文字(输入一段语言音频序列,预测输出一段文字序列)这类应用,由于音频和文字是属于两种媒介和形式的信息,因此也是不等长的。

对于这种输入和输出通常都是不定长的情况,传统的循环神经网络无法解决。2014 年,CHO 等提出了编码器和解码器(Seq2Seq)模型,解决了这个问题(编码器与解码器的英文直译作从序列到序列)。编码器与解码器的模型结构大致就是将两个循环神经网络串联起来,其中一个负责序列数据的输入(编码),另外一个负责序列数据的预测输出(解码)。两个循环神经网络之间使用一个中介向量进行连接,称为背景向量(Context Vector)。这个背景向量包含了所有输入端序列经过神经网络编码后的信息,可以作为输出端循环神经网络t0时刻的序列信息,也可以在给到其他时刻与其他时刻的序列信息进行结合。总地来说,输出序列是由输入序列生成的中间背景向量产生的,并不是直接由输入序列产生的,这样的设计就使得输出序列的长度并不受输入序列长度的影响。

在实际应用中,这两个循环神经网络可以使用传统的循环神经网络(RNN),也可以用门控循环神经网络(Gated Recurrent Neural Network,GRU)、长短期记忆神经网络(Long Short-Term Memory,LSTM)等。涉及到机器翻译时,由于机器翻译往往需要比较复杂的映射关系并且需要结合上下文,通常会选用多层的双向循环神经网络。此外,还会引入注意力机制(Attention Mechanism),对不同的词分配不同的权重,以提高计算效率和精确度。编码器与解码器(Seq2Seq)的神经网络如图4 所示。这是一个输入3 个序列输出4 个序列的神经网络图,x代表输入,y代表输出,虚线表示可根据实际情况灵活选择信息传输路由[5]。

图4 编码器与解码器(Seq2Seq)的神经网络示意图

2.2 编码器解码器与声谱图结合在语音识别的应用

在编码器和解码器模型出现前,语音识别领域的专家已经花费了数十年的时间研究语音识别。当时,人们把语音信息人为地分解为“音位”(Phonemes),将“音位”作为基本单元,通过识别音位来实现语音识别。这种通过人工设计构建一种语言模型的方式花费了研究者们多年的精力,导致语音识别系统非常复杂,但却没有获得很好的语音识别效果。

在编码器和解码器模型出现后,人们发现,基于“音位”的语音识别系统已经不再必要了。当然,这也就意味着很多语言专家毕其一生的研究成果变得没有那么大的价值了。但从语音识别技术的发展来说,这恰恰证明了语音识别技术的进步以及编码器和解码器模型的重要性,编码器和解码器模型在语音识别领域的应用是一件里程碑式的事件。

从物理的角度看,人类的语言信息是通过声带、口腔、舌头及唇齿共同形成的复合发声系统的运动,通过周期性地改变大气压强形成的微小的气压变化信号。人们的耳朵或者麦克风就是通过感知气压变化信号从而拾取声音语言信息的。气压变化的幅度越大,声音的音量也就越大,气压变化的速度越快,声音的音调也就越高。通过计算机把气压变化信号记录下来,就形成了音频的波形文件,也就是经常说的WAV 格式或者MP3 格式的音频文件。

这种波形文件被称为声音的时间域表示,可以看作声音的振幅随时间变化的信息。但声音的时间域表示并不能提供非常有用的信息,为了更好地理解声音信号,需要把时间域信息转换为声音的频率域信息。通常使用快速傅里叶变换(Fast Fourier Transform,FFT),将时间域信息表示的波形图转换为用频率域信息表示的梅尔声谱图。梅尔声谱图既可以表示时间信息,又可以表示频率信息。将音频信号转化为图像信号,非常适合作为语言的特征信息进行提取,如图5 所示[6]。

图5 利用快速傅里叶变换将波形图转换为声谱图

之后,直接把用于训练的声谱信息与相对应的文本信息输入编码器和解码器神经网络模型中进行训练,以训练模型参数,通常需要数千小时的音频和对应翻译文本的数据量。从语音信息到文本信息之间的关联对应,是由计算机通过训练数据训练生成的,而非人为设计的“音位”,这就体现了人工智能技术“自我学习”的特性。在实际应用过程中,还需要使用一些更深入的算法解决,比如连接时序分类(Connectionist Temporal Classification,CTC)和注意力模型等[2-4]。

整个基于编码器和解码器模型语音识别训练过程如图6 所示。

图6 基于编码器和解码器模型语音识别训练过程

3 语音识别在语言类录音教材编辑研发中的应用

3.1 基础应用

AI 语音识别技术作为一种语言类录音教材研发辅助工具,生成的文字数据与音频同时存入媒资系统存档。音频或音乐编辑时的文本对照或用于教材内容素材库和音频母版资料库的分析和再利用。出版社历经数十年的出版工作,积累了大量的素材资源,诸如旧版的课文的朗诵素材,这些课文有些随着教科书的修订逐渐被修改、替换。此类资料素材很多往往都是名家名篇、名家演播录制,富有价值,但以目前的手段,很难将其利用起来。由于没有找到很好的方式利用,这些素材就逐渐地变成了单纯的存档资料,也可以被称作“信息孤岛”。即便有个别素材还可以使用,但由于间隔时间太长,素材太过零散,缺乏多维度的标注信息,也很难被挖掘出来加以利用。

传统的媒资管理系统能够解决一部分问题,但是由于媒资管理系统非常依赖素材人工标注,面对海量的母版素材,这样的人工标注成本是巨大的。此外,即便是有专业的人工标注,也只能标注信息的几个维度,当人们想通过历史素材助力新教材研发和应用时,这样的维度往往是不够的。相比之下,目前百度人工智能自然语言处理的词语向量是1 024 个维度[6],大部分是通过人工智能非监督学习(Unsupervised Learning)算法得出的,少部分是通过语言专家人工监督学习(Supervised Learning)获得的。语言专家在这里的作用更多的是评价、校验人工智能算法的结果。通过这种方式,可使在录音教材研发过程中对历史素材的利用达到一个新的高度。通过人工智能化的媒资管理系统,可以很容易地搜索音频内容,使用模糊语义搜索,甚至可以配合声纹识别和人脸识别技术[6],提供更加高效、精准、全面的内容支持,从而使得选题策划质量和效率大大提升。

除了对历史素材的分析,还可以利用人工智能自然语言处理系统横向分析、对比其他出版单位和其他国家的教材,例如分析其他出版机构录音教材产品的形式、用词、主题、情绪、语速及难度等信息,通过人工智能自然语言处理技术进行市场竞品对比分析,可以更有效地助力优化、提升自身产品的品质和市场认可度。

此外,在录音教材音频的编辑和母版制作过程中,可以引入人工智能对于语言信息的音质优化算法。例如,iZotope 公司和Steinberg 等公司已经推出相应的产品,并已被广泛使用。很多原来通过电声技术无法解决的问题,现在可以通过人工智能算法解决。因这方面技术已有成熟的产品,本文不再赘述。

3.2 高级应用

前两节阐述的语音识别,可将其类比成耳和嘴,但人工智能语音识别能实现的不仅仅是这些,其还可以根据文本内容分析出文本背后的情绪、语法等。这对于语言录音教材的编辑与研发有着更重要的意义。例如,利用大数据技术获得用户画像和市场反馈,通过收集到的数据反馈与AI 分析结果进行对照[7],可以继续打磨语言录音教材产品。

现在的人工智能平台可把自然语言处理高级应用分解为五种类型的应用模块(以百度人工智能平台为例),分别是词法句法分析、语言模型、情感情绪分析以及内容预测与生成。在实际应用中,平台提供更为细化的分类,比如地址识别、专有名词识别等模块,也有专门进行词句相似度计算的模块。这些模块主要是针对特定应用场景开发的,可以包含进上述5 种类型应用模块中。

调用百度人工智能开放平台自然语言处理应用程序接口(Application Programming Interface,API)的方法与语音识别合成的方法大体一致,按照官方指导手册的参数和格式编写代码即可,本节将略去详细代码。

词法句法分析即对一段语言文字进行词语分割,对语义结构和词性进行分析[8]。人类的语言具有一定的模糊性,但也正是基于这种模糊性,产生了诸如诗歌这类艺术性的语言。人类在日常运用语言表达的时候往往会携带大量的隐含信息或者言外之意。正确处理语言的模糊性和隐藏信息,是自然处理的难点。使用词法句法分析模型可以较为准确地解决这些问题。词法句法分析的前提是正确地对句子中的词语进行分割。下面是一段词语分割的示例。

例句:我们要确保已经确诊的和尚未确诊的人都做好隔离措施。

如果算法误把“和尚”作为一个名词,那么该句话就变成了“我们要确保已经确诊的和尚,未确诊的人都做好隔离措施”。很明显,这偏离了该句的原始含义。分词错误会直接导致语义理解出错,可见词语分割的重要性。

正确的词语分割为:我们/要/确保/已经/确诊/的/和/尚未/确诊/的/人/都/做好/隔离/措施/。

将这句话输入百度人工智能词法分析引擎,得到的结果如表1 所示。

表1 百度人工智能词法分析引擎输出结果

正确的词法句法分析是处理语言信息的基础。语言模型通过训练已有的语言文字素材,判断给定的语言文字素材是否符合客观语言表达习惯,这通常用于文本纠错或者对语言文字内容进行润色,以提高语言文字的表达质量。

情感情绪分析是自然语言处理技术的重要应用,可以分析出一段语言文字内容背后的情感或情绪。输入一段语言文字信息后,将得到情感和情绪分析的结果。以百度AI 情感分析平台为例,结果低于50%为负向情感,高于50%为正向情感。同样以“我们要确保已经确诊的和尚未确诊的人都做好隔离措施。”这段文字为例,将这段文字输入百度人工智能情感分析模型中,得到的结果为21%,判定为偏负向情感。这个功能可以用于录音教材教育学习平台的内容管理等应用。

内容预测与生成主要用于机器翻译、智能创作及对话系统。其中,机器翻译是目前较为成熟的技术,能够接近人工翻译的水平。智能创作目前主要用于结构化数据的写作,比如写通知公告等。对话系统目前主要用于客服、产品售后反馈等场景,可以用于大幅降低客服等人力成本。

上述自然语言处理高级应用的五个模块和前两节介绍的语音识别与合成,在实际的产品中通常不会独立使用,而是将不同模块组合起来使用,以满足各种需求。

下一章将重点讨论基于人工智能的自然语言处理在录音教材中的应用。

3.3 应用案例运行环境的搭建

本文以Python 语言和百度人工智能平台为例,做一些自然语言处理应用试验。也可以使用Adobe、讯飞等公司的自然语言处理产品。需要注意的是,尚未发行的产品资料需要保密,如果企业对数字资产上传云端有严格的限制,那就需要采用本地离线的方式进行音频的识别处理。目前,Adobe 公司的产品支持本地离线识别处理,用户使用时无需联网。

首先要搭建测试平台开发环境。在本地计算机上安装Python 开发环境和百度人工智能SDK(Baidu-aip)。可先从Python 官方网站下载Python 安装程序并安装,在安装时需勾选PIP(Python 包管理工具)。安装完Python 后,使用PIP,在Windows 命令行中执行“pip install baidu-aip”命令即可在线安装百度人工智能SDK(Baidu-aip)。

完成本地测试环境的安装后,开始配置百度人工智能开放平台。登录百度人工智能开放平台(ai.baidu.com),进入语音技术区,开通语音识别服务,创建一个语音技术应用,系统将自动勾选所有与语音技术相关的功能框。创建成功后,进入到语音技术管理页面,输入相应的AppID、API Key 及Secret Key,并将这3 个参数嵌入到Python 程序里,就可以将程序与百度人工智能平台API 相连接,实现语音识别功能。使用Python 解释器,按照百度人工智能开放平台语音识别SDK 规范,编写一段语音识别代码,如图7 所示。

图7 百度人工智能平台SDK 语音识别Python 代码

百度人工智能开放平台语音识别SDK 的其他参数如表2 所示。

表2 百度人工智能开放平台语音识别参数表

将测试用于语言识别的“test.wav”音频放入Python 代码所指定的路径后,运行代码,得到以下结果,如图8 所示。经比对,语音识别结果与原音频内容相吻合,达到试验预期。

图8 语音识别结果

3.4 语音识别数据建立与应用

语音识别SDK 支持按语义自动分句、分词并生成时间码,可以将输出结果以逗号(Comma)为分隔符的方式输出为CSV(逗号分隔值文件格式)文件。如以逗号为例,文件内容格式如图9 所示。

图9 语音识别数据CSV 数据格式

CSV 文件格式的通用性较强,可以转换成Excel、Access 等格式数据录入到媒资库中,以便进行各种方式的信息检索,避免信息孤岛的产生,助力后续产品的开发。也可直接被Cubase、Nuendo等音频工作站软件直接识别并导入工程,可作为编辑时的文本与波形对照与定位。如图10、图11所示。

图10 将CSV 文件导入Nuendo 音频工作站软件标记轨后的文本波形对照效果

图11 将CSV 文件录入媒资系统后对音频素材的检索效果

4 结语

随着技术的发展,音频编辑处理技术也正向着智能化转变,这将是一次重大的技术变革。本研究将传统的语言录音制作与人工智能自然语言处理语音识别技术相结合,探索出一条可行的路径,助力音频产品的编辑与研发。本文从理论入手,简单地介绍了语音识别理论基础,在目前没有相关应用产品的情况下,率先通过算法代码进行相关功能的实现。相信随着技术的发展,未来越来越多厂家会推出智能化相关的产品。随着人工智能技术的发展,只有掌握最新的人工智能技术,才能继续引领行业。

猜你喜欢
解码器编码器音频
On Doors
基于ResNet18特征编码器的水稻病虫害图像描述生成
Egdon Heath (Extract from The Return of the Native)
WV3650M/WH3650M 绝对值旋转编码器
WDGP36J / WDGA36J编码器Wachendorff自动化有限公司
基于Beaglebone Black 的绝对式编码器接口电路设计*
柏韵音频举办Pureaudio 2021新产品发布会
基于Android环境下的数据包校验技术分析
浅谈SCOPUS解码器IRD—2600系列常用操作及故障处理
做一个二进制解码器