论文部分内容阅读
摘要:该文根据贵州黔东南少数民族地区苗族语言发音特点,对苗语连续语音识别系统进行研究,并尝试采用Sphinx工具应用HMM方法,对苗语连续语音识别系统进行初步设计和识别测试。
关键词:HMM;连续语音识别;Sphinx;苗语
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)31-0190-02
Research on Continuous Speech Recognition System of Miao Minority in Qiandongnan Minority Areas Based on HMM
YANG Jian-ju1,TANG Lu-jie2,LONG Hu1
(1. Big Data Engineering College , Kaili University ,Kaili 556011,China;2. Information Network Center, Kaili University ,Kaili 556011,China)
Abstract: According to the Guizhou ethnic minority area of Qiandongnan Miao language pronunciation characteristics of Miao language continuous speech recognition system, and try to use Sphinx tools using HMM method, continuous speech recognition system and recognition test for the preliminary design of the Miao language.
Key words:HMM; continuous speech recognition; Sphinx; Miao language
随着语音识别技术的广泛应用使其成为国内外研究的热点之一,语音识别主要包括语音层和语言层识别两部分,根据说话人依赖程度可分为特定人语音识别与非特定人语音识别,而根据说话人要求不同可分为孤立词识别与连续语音识别等。
苗语是孤立语系,属于我国少数民族方言,目前苗语根据不同地域发音特点不同可分为东部、中部、西部及滇东北四个方言,其中苗语中部方言又叫黔东方言是苗语的重要分支,主要分布在贵州省东南部、广西省最北部和湖南省西南角,本文在此以分布在贵州省黔东南苗族侗族自治区凯里市三棵树镇及辐射周边地区的中部方言苗语为原型,对苗语连续语音识别系统进行研究设计。
1 系统结构组成
连续语音识别系统可分为四个部分,分别为特征提取、声学模型训练、语言模型训练和解码器等,如下图1所示。
首先对语音数据库中语音先进行预处理,滤掉背景噪声和不重要信息,并进行语音信号端点检测、语音分帧以及预加重等处理,然后提取语音特征,根据训练语音库的特征参数训练出声学模型,对训练文本数据库进行语法、语义分析得到训练模型,最后对输入语音信号根据训练声学模型、语言模型及字典建立识别网络进行语音识别。本文采用Sphinx语音识别系统工具进行系统设计。
2 特征提取
特征提取主要是去除语音信号中无用冗余信息,并提取出能够反映语音信号特征的关键特征参数形成特征矢量序列过程。目前提取特征方法主要采用Mel频率倒谱系数(MFCC),在Sphinx中主要采用MFCC特征提取,首先用帧Frames窗分割语音波形,每一帧有10ms,然后每一帧提取代表改帧语音的39个数字,即得到该帧语音MFCC特征,并用特征向量来表示。
3 声学模型建立及训练
声学模型主要用于计算语音特征和每个发音模板之间的似然度,目的是为每一个声学单元建立一套模型参数;本文采用音素作为训练基本单位,并选用苗语中声母、韵母作为基本声学单元进行建模训练,苗语发音中主要音素有58个,采用HMM连续语音识别模式为上下文相关模式,HMM通常由左向右单向、带自环、带跨越的拓扑结构识别基元建模,一个音素就是一个三至五状态的HMM,单个词则由构成词的多个音素HMM串行构成,连续语音识别模型则由词和静音组合起来的HMM。以苗语“Laox sib mongx sod”(老师您早)句子为例,进行分词处理后,可得到音素表如表1所示。
4 训练语言模型
语言模型是用来计算一个句子出现概率的概率模型。主要决定了哪个词序列的可能性更大,或者在出现了几个词的情况下能够预测下一个即将出现的词语的内容,即语言模型是用来描述词与词之间存在符合语法与否约束的,本文采用N-Gram模型来完成对训练音频文件对应文本文件进行统计,N-Gram模型是基于这样一种假设,每个词N的出现不再与其前面全部上下文历史相关,而只与前面N-1个词相关,整个句子的概率就是各个词出现概率的乘积。通常用的是二元的Bi-Gram和三元的Tri-Gram。Sphinx中是采用二元语法和三元语法的统计语言概率模型,即通过前一个或两个单词来判定当前单词出现的概率P(w2| w1),P(w3| w2, w1)。
5 系统数据源
5.1 语音数据库
本文在此主要以中部苗语中分布在贵州黔东南苗族侗族自治区凯里市三棵树镇及周边地区语音为准音进行研究,本语音数据库收录共2小时录音,训练句子200條,发音人共4人,测试用句子20条,共两人发音,收录共1小时。
5.2 文本数据库
文本数据库包括用来准备训练的文本集合,大多数句子是任意指定的,最好覆盖想要识别的句子里面包含的高频单词或者音素。本系统研究使用苗文文字为1957年12月国务院公布《关于少数民族文字方案中设计字母的几项原则》中规定苗文文字,按照规定苗语四大方言都以拉丁字母为基础的拼音文字,本系统文本数据库中所选苗文句子为贵州省凯里学院少数民族本科及五年制大专班开设特色课程苗族语言课程教材《苗族语文-中部方言》中的简单苗文对话部分,其中训练语句200条,测试用句子20条。
6 语音解码和搜索算法
语音解码即指语音技术中的识别过程。本系统中根据之前已经训练好的HMM声学模型、语言模型及字典建立一个识别网络,然后再根据搜索算法通过该网络寻找一条最佳路径,即寻找最优词串方法。Sphinx中解码技术采用基于动态规划的Viterbi搜索算法,该算法思想是遍历HMM状态网络且保留每一帧语音在某个状态最优路径得分。通常搜索需要进行多遍,第一遍使用代价低的知识源,比如声学模型、语言模型和音标词典等,生成一个候选列表或候选网格,第二遍再在该基础上使用代价高的知识源,如4阶或5阶的N-Gram、4阶或更高的上下文相关模型等,找到最佳路径。
7 实验环境及识别测试
本系统所有软件编译运行环境都是在Win7操作系统下进行,其中选用Sphinxtrain-1.0.8作为声学模型训练工具,Cmuclmtk-0.7作为语言模型训练工具,解码器选择Pocketsphinx和Sphinxbase-0.8。
识别完成后,可将识别结果数据与原始语料数据进行对比,计算出识别正确率分别为:
句子识别正确率为:
Scrr=([1-EsntSnt])×100%
单词识别正确率为:
Wcrr=[Wrd-Ins-Del-SubWrb]×100%
8 结束语
本文在此对基于HMM的黔东南少数民族地区苗语连续语音识别系统中的关键技术包括特征提取、训练及识别算法等进行研究,并采用Sphinx工具进行系统设计,但离成熟稳定的识别系统还有一定差距,尤其规模小、模型复杂等方面还需要有待改进,本文研究对于今后苗语连续语音识别系统进一步研究起到借鉴和促进作用。
参考文献:
[1] 杨涛,范国祖,熊毅. 苗族语文-中部方言[M]. 成都:西南交通大学出版社,2015.
[2] 刘妍秀,付海东. 基于HMM的连续语音识别系统的构建与研究[J].长春大学出版社,2015(2).
[3] 王一蒙. 语音识别关键技术研究[D]. 成都:电子科技大学,2015.
[4] 牧仁高娃. 蒙古语语音识别相关问题研究[D]. 呼和浩特:内蒙古大学,2013.
关键词:HMM;连续语音识别;Sphinx;苗语
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)31-0190-02
Research on Continuous Speech Recognition System of Miao Minority in Qiandongnan Minority Areas Based on HMM
YANG Jian-ju1,TANG Lu-jie2,LONG Hu1
(1. Big Data Engineering College , Kaili University ,Kaili 556011,China;2. Information Network Center, Kaili University ,Kaili 556011,China)
Abstract: According to the Guizhou ethnic minority area of Qiandongnan Miao language pronunciation characteristics of Miao language continuous speech recognition system, and try to use Sphinx tools using HMM method, continuous speech recognition system and recognition test for the preliminary design of the Miao language.
Key words:HMM; continuous speech recognition; Sphinx; Miao language
随着语音识别技术的广泛应用使其成为国内外研究的热点之一,语音识别主要包括语音层和语言层识别两部分,根据说话人依赖程度可分为特定人语音识别与非特定人语音识别,而根据说话人要求不同可分为孤立词识别与连续语音识别等。
苗语是孤立语系,属于我国少数民族方言,目前苗语根据不同地域发音特点不同可分为东部、中部、西部及滇东北四个方言,其中苗语中部方言又叫黔东方言是苗语的重要分支,主要分布在贵州省东南部、广西省最北部和湖南省西南角,本文在此以分布在贵州省黔东南苗族侗族自治区凯里市三棵树镇及辐射周边地区的中部方言苗语为原型,对苗语连续语音识别系统进行研究设计。
1 系统结构组成
连续语音识别系统可分为四个部分,分别为特征提取、声学模型训练、语言模型训练和解码器等,如下图1所示。
首先对语音数据库中语音先进行预处理,滤掉背景噪声和不重要信息,并进行语音信号端点检测、语音分帧以及预加重等处理,然后提取语音特征,根据训练语音库的特征参数训练出声学模型,对训练文本数据库进行语法、语义分析得到训练模型,最后对输入语音信号根据训练声学模型、语言模型及字典建立识别网络进行语音识别。本文采用Sphinx语音识别系统工具进行系统设计。
2 特征提取
特征提取主要是去除语音信号中无用冗余信息,并提取出能够反映语音信号特征的关键特征参数形成特征矢量序列过程。目前提取特征方法主要采用Mel频率倒谱系数(MFCC),在Sphinx中主要采用MFCC特征提取,首先用帧Frames窗分割语音波形,每一帧有10ms,然后每一帧提取代表改帧语音的39个数字,即得到该帧语音MFCC特征,并用特征向量来表示。
3 声学模型建立及训练
声学模型主要用于计算语音特征和每个发音模板之间的似然度,目的是为每一个声学单元建立一套模型参数;本文采用音素作为训练基本单位,并选用苗语中声母、韵母作为基本声学单元进行建模训练,苗语发音中主要音素有58个,采用HMM连续语音识别模式为上下文相关模式,HMM通常由左向右单向、带自环、带跨越的拓扑结构识别基元建模,一个音素就是一个三至五状态的HMM,单个词则由构成词的多个音素HMM串行构成,连续语音识别模型则由词和静音组合起来的HMM。以苗语“Laox sib mongx sod”(老师您早)句子为例,进行分词处理后,可得到音素表如表1所示。
4 训练语言模型
语言模型是用来计算一个句子出现概率的概率模型。主要决定了哪个词序列的可能性更大,或者在出现了几个词的情况下能够预测下一个即将出现的词语的内容,即语言模型是用来描述词与词之间存在符合语法与否约束的,本文采用N-Gram模型来完成对训练音频文件对应文本文件进行统计,N-Gram模型是基于这样一种假设,每个词N的出现不再与其前面全部上下文历史相关,而只与前面N-1个词相关,整个句子的概率就是各个词出现概率的乘积。通常用的是二元的Bi-Gram和三元的Tri-Gram。Sphinx中是采用二元语法和三元语法的统计语言概率模型,即通过前一个或两个单词来判定当前单词出现的概率P(w2| w1),P(w3| w2, w1)。
5 系统数据源
5.1 语音数据库
本文在此主要以中部苗语中分布在贵州黔东南苗族侗族自治区凯里市三棵树镇及周边地区语音为准音进行研究,本语音数据库收录共2小时录音,训练句子200條,发音人共4人,测试用句子20条,共两人发音,收录共1小时。
5.2 文本数据库
文本数据库包括用来准备训练的文本集合,大多数句子是任意指定的,最好覆盖想要识别的句子里面包含的高频单词或者音素。本系统研究使用苗文文字为1957年12月国务院公布《关于少数民族文字方案中设计字母的几项原则》中规定苗文文字,按照规定苗语四大方言都以拉丁字母为基础的拼音文字,本系统文本数据库中所选苗文句子为贵州省凯里学院少数民族本科及五年制大专班开设特色课程苗族语言课程教材《苗族语文-中部方言》中的简单苗文对话部分,其中训练语句200条,测试用句子20条。
6 语音解码和搜索算法
语音解码即指语音技术中的识别过程。本系统中根据之前已经训练好的HMM声学模型、语言模型及字典建立一个识别网络,然后再根据搜索算法通过该网络寻找一条最佳路径,即寻找最优词串方法。Sphinx中解码技术采用基于动态规划的Viterbi搜索算法,该算法思想是遍历HMM状态网络且保留每一帧语音在某个状态最优路径得分。通常搜索需要进行多遍,第一遍使用代价低的知识源,比如声学模型、语言模型和音标词典等,生成一个候选列表或候选网格,第二遍再在该基础上使用代价高的知识源,如4阶或5阶的N-Gram、4阶或更高的上下文相关模型等,找到最佳路径。
7 实验环境及识别测试
本系统所有软件编译运行环境都是在Win7操作系统下进行,其中选用Sphinxtrain-1.0.8作为声学模型训练工具,Cmuclmtk-0.7作为语言模型训练工具,解码器选择Pocketsphinx和Sphinxbase-0.8。
识别完成后,可将识别结果数据与原始语料数据进行对比,计算出识别正确率分别为:
句子识别正确率为:
Scrr=([1-EsntSnt])×100%
单词识别正确率为:
Wcrr=[Wrd-Ins-Del-SubWrb]×100%
8 结束语
本文在此对基于HMM的黔东南少数民族地区苗语连续语音识别系统中的关键技术包括特征提取、训练及识别算法等进行研究,并采用Sphinx工具进行系统设计,但离成熟稳定的识别系统还有一定差距,尤其规模小、模型复杂等方面还需要有待改进,本文研究对于今后苗语连续语音识别系统进一步研究起到借鉴和促进作用。
参考文献:
[1] 杨涛,范国祖,熊毅. 苗族语文-中部方言[M]. 成都:西南交通大学出版社,2015.
[2] 刘妍秀,付海东. 基于HMM的连续语音识别系统的构建与研究[J].长春大学出版社,2015(2).
[3] 王一蒙. 语音识别关键技术研究[D]. 成都:电子科技大学,2015.
[4] 牧仁高娃. 蒙古语语音识别相关问题研究[D]. 呼和浩特:内蒙古大学,2013.