ImageVerifierCode 换一换
格式:DOC , 页数:25 ,大小:280.50KB ,
资源ID:6985265      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/6985265.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(EasyTraining模型训练流程文档.doc)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

EasyTraining模型训练流程文档.doc

1、 安徽中科大讯飞信息科技有限公司 Anhui USTC iFlyTek CO.,LTD. The EasyTraining Toolkit 系统概览及流程指南 科大讯飞 版权所有(2006)可以加上你的名字和详细日期、版本1.0 第23页 目 录

2、 目 录 0 一.系统概述 1 二.上下文相关(Context-dependent)模型的训练流程 3 2.1 上下文无关模型的训练 4 2.1.1 用CompV估计全局方差 4 2.1.2 用ModelGen克隆monophone 5 2.1.3 分割训练数据列表 5 2.1.4 用HLEd将词级MLF文件转为音素级MLF文件 5 2.1.5 HERest训练不带sp的monophone模型 6 2.1.6 在monophone中加入停顿模型sp 7 2.1.7 HERest训练带sp的monophone模型 8 2.1.8 校正训练数据 10 2.1.9 用校正后

3、的数据训练模型 11 2.2 克隆上下文相关(context-dependent)模型 13 2.3 状态绑定上下文相关模型 15 2.4 分裂高斯 16 2.5 生成最终模型 18 三.右相关声母及带调韵母模型的训练流程 19 3.1 无关模型的训练流程 19 3.2 克隆右相关声母及带调韵母模型 19 3.3 分裂高斯 20 3.4 得到最终模型 20 四.HTK声学模型测试 21 4.1 HParse生成语法网络 21 4.2 HVite识别 21 4.3 HResults计算识别率 22 五.版本信息 23 一.系统概述 The EasyTrai

4、ning Toolkit是一个以HTK为基础而开发的用于大词汇量连续语音识别系统模型训练和测试的工具包,目前的版本支持上下文相关(context-dependent)模型和、右相关声韵母模型及带调模型的训练和测试,两种模型只需要配置不同的基础文件即可。EasyTraining统一MLE训练的框架流程图如下图所示: 图1.1 Easytraining 统一MLE训练框架图 The EasyTraining Toolkit的特点: n 统一框架 n 跨平台(WIN32、Linux兼容) n 较少基础文件准备 n 断点恢复 n 训练数据检查 n 决策树聚类状态数指

5、定 n 清除中间文件 n 并行化 n 灵活配置 表1 上下文相关模型基础文件列表 config.all HTK config文件 dict.mono dict.test 训练及测试词典 HHEd.fixsil sil处理命令及问题集 HHEd.questionset HLEd.wrd2mono_nosp MLF处理命令文件 HLEd.wrd2mono_sp HLEd.mono2tri modelgen.cmd Mono-phone模型克隆文件 proto_E 模型原型文件 proto_sp syllable.mlf 词级ML

6、F train.scp 训练文件列表 表2 右相关声韵母及带调右相关声母及带调韵母模型基础文件列表: config.all HTK config文件 sy.dict sy.dict.notone 带调及不带调词典 HHEd.fixsil sil处理命令及问题集 HLEd.wrd2mono_nosp MLF处理命令文件 HLEd.wrd2mono_sp HLEd.mono2sy modelgen.cmd.sy66 Mono-phone模型克隆文件 proto_E 模型原型文件 proto_sp Syllable_tone.mlf 词级MLF(带

7、调) train.scp 训练文件列表 二.上下文相关(Context-dependent)模型的训练流程 本节以Tri-phone模型训练为例,介绍用HTK对上下文相关(context-dependent)模型的训练流程,Tri-phone单元都是基于基准的上下文无关的音素声韵单元(简称即Mono-phone)进行跨词的上下文扩展所得。其中sil为上下文无关(context independent)的模型,sp为相关可穿越(context free)模型。 模型命名规则为:左相关-模型+右相关,例如_a-a+b。 下图为声学模型训练过程的基本流程: 图2

8、1 Easytraining基本训练流程图 从图中可以看出,整个模型训练的过程可以分成下面四个部分: 第一部分:上下文无关模型 第二部分:上下文相关模型 第三部分:决策树状态绑定模型 第四部分:最终测试模型 下图为声学模型训练的详细流程图: 图2.2 Easytraining声学模型训练的详细流程图 2.1 上下文无关模型的训练 2.1.1 用CompV估计全局方差 HcompV计算出所有训练数据的全局均值和方差,并用全局均值和方差取代原型文件proto中的0均值和1方差,生成global模型作为下一步克隆时的基准原型模型;同时,将全局方差的0.01倍设为方差

9、下限并输出vFloor方差下限文件。 命令行如下: $cmd = "$g_bin_HCompV -m -f 0.01 -C $g_cf_Mono -S $g_scp_Training -o global -M $g_dir_Mono/Init $g_prt_Proto"; 输入文件: 1. -C $g_cf_Mono 为配置文件config; 2. -S $g_scp_Training 为所有训练数据全目录文件名列表文件train.scp; 3. $g_prt_Proto 为定义HMM结构的原型文件proto; 输出(目录:$g_dir_Mono/In

10、it)文件: 1. -o global 输出为全局均值和方差的MMF文件global; 2. vFloor 输出下限方差文件vFloor; 2.1.2 用ModelGen克隆monophone此步骤请进一步给出一个modelgen命令文件的例子 ModelGen将上一步得到的global作为原型基准模型,克隆出每一个音素(phone)的HMM模型,并把所有克隆出来的音素模型参数保存在MMF文件“hmm0/MODELS”中。 $cmd = "$g_bin_EasyTraining -ModelGen -H $g_dir_Mono/Init/g

11、lobal -v $g_dir_Mono/Init/vFloors -M $g_dir_Mono/Init/hmm0/MODELS $g_cmd_EasyTraining_ModelGen"; 输入文件: 1. -H $g_dir_Mono/Init/global 为上一步得到的global文件; 2. -v $g_dir_Mono/Init/vFloors 上一步得到的vFloors文件; 3. $g_cmd_EasyTraining_ModelGen 编辑命令文件(包含要克隆的phone及其状态数); 输出文件:

12、1. -M $g_dir_Mono/Init/hmm0/MODELS 克隆后包含所有音素模型的MMF文件; 2.1.3 分割训练数据列表 SplitScripts将所有训练语音的全路径列表文件$g_scp_Training分割成$g_nSplit等份,用于在下一步分别训练模型乃至实现并行化。 命令行如下: $cmd = "$g_bin_EasyTraining -SplitScript $g_scp_Training $g_nSplit"; 参数: 1. $g_nSplit 需要分割的数量; 输入文件: 1. $g_scp_Training

13、 待分割的全部训练语音的全路径列表文件; 输出文件: $g_scp_Training.1,$g_scp_Training.2,…,$g_scp_Training. $g_nSplit。 为分割成$g_nSplit等份后每一部分数据的路径列表文件名。 2.1.4 用HLEd将词级MLF文件转为音素级MLF文件此处请加入原始MLF和处理后MLF的例子(就像我ppt里给的那样,可以直接copy过来)。并指出作为基础文件的MLF需严格按照格式来写,即:sil与noise等必须显式的标出,sp则可放宽 HLEd将基于词的MLF(Master Label File)标注文件转为基于音素

14、的MLF标注文件;同时,生成不带sp的音素列表文件$hmmlist_mono_sp。 命令行如下: $cmd = "$g_bin_HLEd -l $strStar -d $g_dict_Mono -i $g_dir_Mono/MLF.mono.nosp -n $g_hmmlist_mono_nosp $g_cmd_HLEd_Word2Mono_nosp $g_mlf_Word"; 输入文件: 1. -d $g_dict_Mono 音素词典文件; 2. $g_cmd_HLEd_Word2Mono_nosp 由词转为音素的编辑命令文件;

15、 3. $g_mlf_Word 基于词的MLF标注文件; 输出文件: 1. -i $g_dir_Mono/MLF.mono.nosp 不含sp的音素标注MLF文件; 2. -n $g_hmmlist_mono_nosp 不含sp的音素列表文件; 2.1.5 HERest训练不带没有sp的monophone模型 HERest对训练数据进行训练,得到不带sp的monophone模型。这个过程可以跳过,即可以直接训练带sp的模型。如果要跳过,直接设置全局布尔变量$g_bTieSilSp即可(流程可见图2.3)。 训练这个过程分两步进行训练,首先,对每一个已经分割

16、好的训练语音列表文件$g_scp_Training.i(i表示第i个列表文件)中的语音特征都要进行训练。 命令行如下: $cmd = "$g_bin_HERest $g_strBinaryFlag -p $j $g_strPruning -C $g_cf_Mono -H $g_dir_Mono/Init/hmm$k/MODELS -M $g_dir_Mono/Init/hmm$i -S $g_scp_Training.$j -I $g_dir_Mono/MLF.mono.nosp $g_hmmlist_mono_nosp"; 参数: 1. -p $j 当j>0时,进行并行训练

17、对每一部分训练数据会产生一个HER.acc文件; 当j=0时,读取所有HER.acc文件,对所有训练数据进行训练训练结果进行汇总; 2. $g_strBinaryFlag 二进制标志,如果值为“-B”,表示输出存储为二进制文件; 输入文件: 1. -C $g_cf_Mono 配置文件config; 2. $g_dir_Mono/Init/hmm$k/MODELS 每轮迭代训练前的MMF文件; 3. -S $g_scp_Training.$j 第j个训练数据列表文件,表示这一次训练只用 -S $g_scp_Training.$j中的数据

18、进行训练; 4. -I $g_dir_Mono/MLF.mono.nosp 用于训练的MLF音素标注文件(由第3步生成); 5. $g_hmmlist_mono_nosp 用于训练的音素列表文件(由第3步生成); 输出文件: 1. -M $g_dir_Mono/Init/hmm$i 指定第i轮训练时,产生的HER.acc文件存储目录; 上述训练完成后,再用所有数据进行一次训练: 命令行如下: $cmd = "$g_bin_HERest $g_strBinaryFlag -p 0 $g_strPruning -C $g_cf_Mono

19、 -H $g_dir_Mono/Init/hmm$k/MODELS -M $g_dir_Mono/Init/hmm$i -s $g_dir_Mono/Init/hmm$i/occ.0 $g_hmmlist_mono_nosp"; for($j=1; $j<=$g_nSplit; $j++) { $cmd = $cmd . " $g_dir_Mono/Init/hmm$i/HER$j.acc"; } 参数: 1. -p $j $j=0

20、表示要读取所有HER.acc文件,对所有训练数据进行训练; 2. $g_strBinaryFlag 二进制标志,值为“-B”,表示输出存储为二进制文件; 3. $g_strPruning “-t 250.0 150.0 1000.0 –v 0.00001 –w 1.0” ; -v 0.00001表示方差下限;-w 1.0表示混合高斯分布权重的门限为1.0*MINMIX,权重小于该值时置为零;-t参数是为了加快训练速度设置的,一般形式为-t f [i l]这里f表示计算后向概率时,如果其(对数)值与最大的后向概率值的差值超过f,则忽略这些后向概率值,同样,只计算有有效后向概率的前向

21、概率,此外,如果前向后向概率的乘积与总的概率之比小于某一门限时,这些前向后向概率被忽略,如果对某句话来说,f这个门限太小,则会导致处理该句话时失败,此时如果i,l两个参数同时被设置,则门限提高i,重新处理该句话,直至门限到达l 。 输入文件: 1. -C $g_cf_Mono -H $g_dir_Mono/Init/hmm$k/MODELS $g_hmmlist_mono_nosp同前; 2. $g_dir_Mono/Init/hmm$i/HER$j.acc 所有的HER.acc文件。 输出文件: 1. -s $g_dir_Mono/Init/hmm$i/occ.0 训练过程产

22、生的统计文件occ.0; 2. -M $g_dir_Mono/Init/hmm$i 第i轮训练完成后,得到新的MMF文件MODELS的存储目录; 2.1.6 在monophone中加入停顿模型sp 经过前面几步已经得到了在编辑命令文件$g_cmd_EasyTraining_ModelGen中列出的所有音素的monophone模型,这一步将停顿模型sp加入到monophone模型中去。 首先,用HHEd把将sp加入到前面训练好的MODELS中(与sil模型捆绑)sil模型加入2-4、4-2的状态跳转,并把其中间状态设置为一个宏”silst”。 命令行如下: $cmd = "

23、g_bin_HHEd -C $g_cf_Mono -H $modelnow –w $g_dir_Mono/FixSilSp/MODELS.fixsil $g_cmd_HHEd_Fixsil $g_hmmlist_mono_nosp"; 输入文件: 1. -C $g_cf_Mono 配置文件config; 2. -H $modelnow 前面训练好的模型MODELS(MMF文件); 3. $g_hmmlist_mono_nosp 由第3步产生的音素列表文件; 4. $g_cmd_HHEd_Fixsil 加入sp对sil模型进行处理的编辑命令文件; 输出文

24、件: 1. –w $g_dir_Mono/FixSilSp/MODELS.fixsil 加入sp对sil模型处理之后的MODELS(MMF文件) 其中,$g_cmd_HHEd_Fixsil的编辑命令内容为: AT 2 4 0.2 {sil.transP} AT 4 2 0.2 {sil.transP} TI silst {sil.state[3]} 其次,用HLEd得到含有sp模型的音素列表文件及音素标注文件,命令行与第3步基本相同,此处也请给出例子(使用前使用后) 不同在于第3步得到的是不带sp的音素列表文件及音素标注文件。 命令行如下: $cmd = "$g

25、bin_HLEd -l $strStar -d $g_dict_Mono -i $g_dir_Mono/MLF.mono -n $g_hmmlist_mono_sp $g_cmd_HLEd_Word2Mono_sp $g_mlf_Word"; 输入文件: 1. -d $g_dict_Mono 音素词典文件; 2. $g_cmd_HLEd_Word2Mono_sp 由词转为音素(含sp)的编辑命令文件; 3. $g_mlf_Word 基于词的MLF标注文件; 输出文件: 1. -i $g_dir_Mono/MLF.mono

26、 包含sp的音素标注文件; 2. -n $g_hmmlist_mono_sp 包含sp的音素列表文件; 下面是$g_cmd_HLEd_Word2Mono_nosp和$g_cmd_HLEd_Word2Mono_sp的内容比较这里的格式乱了,需要调整一下。我删除了IS sil sil这句话,这个曾经加过,但在以后的版本中已取消了这句话 : $g_cmd_HLEd_Word2Mono_nosp $g_cmd_HLEd_Word2Mono_sp EX DE sp ME sp sp sp ME sil sil sp ME sil sp sil ME sil sil silE

27、X DE sp IS sil sil ME sp sp sp ME sil sil sp ME sil sp sil ME sil sil sil EX ME sp sp sp ME sil sil sp ME sil sp sil ME sil sil silEX IS sil sil ME sp sp sp ME sil sil sp ME sil sp sil ME sil sil sil 完成这两个步骤后,就得到了带sp的monophone模型,接下来要结这一模型进行训练。 2.1.7 HERest训练带sp的monophone模型 这一阶

28、段的训练过程与第5步训练不带sp的monophone模型基本上是一样的。唯一不同的就是所用的音素标注文件(MLF)和音素列表文件(hmmlist)这两个文件不一样,第5步用的是$g_dir_Mono/MLF.mono.nosp 和$g_hmmlist_mono_nosp,而现在这一步用的是$g_dir_Mono/MLF.mono和$g_hmmlist_mono_sp。 经过迭代训练后,得到了训练好的带sp的mono-phone模型MODELS,上述2.1.1~2.1.7得到mono-phone模型的整个过程可以用下面的流程图来表示: 图2.3 上下文无关的mono-phone训练流

29、程图 2.1.8 较正校正训练数据 为了防止在训练数据集中出现对模型训练不起作用的“坏数据”,需要对训练数据进行挑选,认为“合格”的数据才能继续进入后面的模型训练。训练数据挑选也是一步可选的步骤,设置全局布尔变量$g_bCheckScript即可选择。,较正校正训练数据分三个步骤进行: 首先,对音素词典进行较正扩展,命令行如下: $cmd = “$g_bin_EasyTraining -MakeMPDict $g_dict_Mono $g_dir_Mono/Align/dict.align $g_strNonPhoneList"; 参数: 1. $g_strNonPhon

30、eList 值为“sil sp”。 输入文件: 1. $g_dict_Mono 没有经过较正扩展的音素词典文件; 输出文件: 2. $g_dir_Mono/Align/dict.align 较正扩展后的音素词典文件; 其次,再对基于词的MLF标注文件进行较正处理,生成词一级的、不含任何填塞模型(sil、sp、noise、garbage等等)的MLF标注。该步骤通过下面两个命令行实现,即先生成较正处理MLF标注文件所必需的HLEd编辑命令文件,命令行如下: $cmd="$g_bin_EasyTraining -MakeWordOnlyHLEdCmd $g_d

31、ir_Mono/Align/HLEd.MLF.align $g_strNoTiePhoneList"; 参数: 1. $g_strNoTiePhoneList 值为“sil sp”; 输出文件: 1. $g_dir_Mono/Align/HLEd.MLF.align 下面较正处理MLF文件所需的编辑命令文件; 然后,由HLEd命令对MLF标注文件进行较正处理,命令行如下: $cmd = "$g_bin_HLEd -l $strStar -i $g_dir_Mono/Align/MLF.align $g_dir_Mono/Align/

32、HLEd.MLF.align $g_mlf_Word"; 输入文件: 1. $g_mlf_Word 较正处理前的MLF标注文件; 2. $g_dir_Mono/Align/HLEd.MLF.align 上一命令行产生的编辑命令文件; 输出文件: 1. -i $g_dir_Mono/Align/MLF.align 较正处理后的MLF标注文件; 最后,对训练数据进行较正Force-Alignment。 $cmd = "$g_bin_HVite -b sil -a -m $g_strBeam -y lab -C $g_cf_Mono

33、 -H $modelnow -i $g_dir_Mono/Align/MLF.Aligned.$j -I $g_dir_Mono/Align/MLF.align -S $g_scp_Training.$j $g_dir_Mono/Align/dict.align $g_hmmlist_mono_sp > $g_dir_Mono/Align/LOG.HVite.Split.$j"; 输入文件: 1. -C $g_cf_Mono

34、配置文件config; 2. -H $modelnow 当前模型文件; 3. -I $g_dir_Mono/Align/MLF.align 较正后的词级MLF标文件; 4. -S $g_scp_Training.$j 第j批训练数据; 5. $g_dir_Mono/Align/dict.align 较正Multi-Pronunciation后的音素词典文件; 6. $g_hmmlist_mono_sp 音素列表文件; 输出文件: 1. -i $g_dir_Mono/Align/MLF.Aligned.$j 对第j批数据测试的结果; 2

35、 $g_dir_Mono/Align/LOG.HVite.Split.$j 测试结果日志文件; 从日志文件中,选出“合格”的训练数据(初步定为Force-Alignment能存活的文件),并保存,命令行如下: 参数:$g_nSplit 分割训练列表的个数; $cmd = "$g_bin_EasyTraining -GetSVVUtt $g_dir_Mono/Align/LOG.HVite.Split $g_scp_Aligned_Training $g_nSplit"; 输入文件: 1. $g_dir_Mono/Align/L

36、OG.HVite.Split 测试结果日志文件; 输出文件: 1. $g_scp_Aligned_Training 较正校正后合格的训练数据列表; 2.1.9 用较正校正后的数据训练模型 用上一步得到的较正校正后的训练数据再进行训练,首先对数据分开进行训练。 命令行为: $cmd = "$g_bin_HERest $g_strBinaryFlag -p $j $g_strPruning -C $g_cf_Mono -H $g_dir_Mono/Align/hmm$k/MODELS -M $g_dir_Mon

37、o/Align/hmm$i -S $g_scp_Aligned_Training.$j -I $g_dir_Mono/MLF.mono $g_hmmlist_mono_sp"; 输入文件: 1. -C $g_cf_Mono 配置文件config; 2. -H $g_dir_Mono/Align/hmm$k/MODELS 待训练的MMF模型文件; 3. -S $g_scp_Aligned_Training.$j 较正校正后的训练数据列表文件; 4. -I $g_dir_Mono/MLF.mono 包含sp的音素标注文件; 5.

38、 $g_hmmlist_mono_sp 包含sp的音素列表文件; 输出文件: 1. -M $g_dir_Mono/Align/hmm$i 第i轮训练时,产生的HER.acc文件存储目录; 然后对全部数据进行训练汇总,命令行如下: $cmd = "$g_bin_HERest $g_strBinaryFlag -p 0 $g_strPruning -C $g_cf_Mono -H $g_dir_Mono/Align/hmm$k/MODELS -M $g_dir_Mono/Align/hmm$i

39、 -s $g_dir_Mono/Align/hmm$i/occ.0 $g_hmmlist_mono_sp"; for($j=1; $j<=$g_nSplit; $j++) { $cmd = $cmd . " $g_dir_Mono/Align/hmm$i/HER$j.acc"; } 输入文件: 1. -C $g_cf_Mono 配置文件config; 2. -H $g_dir_Mono/Align/hmm$k/MODELS 待训练的MMF模型文件MODELS;

40、3. $g_hmmlist_mono_sp 包含sp的音素列表文件; 2. $g_dir_Mono/Align/hmm$i/HER$j.acc 所有的HER.acc文件; 输出文件: 1. -s $g_dir_Mono/Align/hmm$i/occ.0 训练过程产生的统计文件occ.0; 2. -M $g_dir_Mono/Align/hmm$i 第i轮训练完成后,得到新的MMF文件MODELS的存储目录; 通过上述9个步骤就完成了整个monophone模型的训练过程,下一步将monophone模型克隆为上下文相关(context-dependent)模型。图2

41、4给出了对训练数据进行检查的程序流程图: 图2.4 Force-alignment检查训练数据流程图 2.2 克隆上下文相关(context-dependent)模型 首先,用HLEd生成上下文相关模型MLF标注文件请给出例子 (下面进行上下文相关模型的训练时需要用到该文件)。 命令行如下: $cmd = "$g_bin_HLEd -l $strStar -i $g_dir_Context/MLF.context -n $g_hmmlist_context $g_cmd_HLEd_Mono2Context $g_dir_Mono

42、/MLF.mono"; 输入文件: 1. $g_dir_Mono/MLF.mono 含sp的monophone音素标注MLF文件; 2. $g_cmd_HLEd_Mono2Context HLEd命令编辑文件; 输出文件: 1. $g_dir_Context/MLF.context 上下文相关音素标注MLF文件; 2. $g_hmmlist_context 上下文相关音素列表文件; 其次,用MakeM2CHHEdCmd生成从Mono-Phone克隆到Tri-Phone的HHEd命令编辑文件。需要指出的是,此编辑文件还将各个phone的状

43、态转移矩阵绑在了一起。 命令行如下: $cmd = "$g_bin_EasyTraining -MakeM2CHHEdCmd $g_hmmlist_mono_nosp $g_hmmlist_context $g_dir_Context/HHEd.Mono2Context"; 参数: 1. $g_hmmlist_context 只将该文件名作为输入参数; 输入文件: 1. $g_hmmlist_mono_nosp 不含sp的音素列表文件; 输出文件: 2. $g_dir_Context/HHEd.Mono2Context HHEd命令编辑

44、文件; 接着,通过执行HHEd命令将monophone模型转化为上下文相关模型。 命令行如下: $cmd = "$g_bin_HHEd -C $g_cf_Context -H $modelnow -M $g_dir_Context/hmm0 $g_dir_Context/HHEd.Mono2Context $g_hmmlist_mono_sp"; 输入文件: 1. $g_cf_Context 配置文件config; 2. -H $modelnow 第9步得到的monophone模型MODELS; 3. $g_di

45、r_Context/HHEd.Mono2Context HHEd命令编辑文件; 4. $g_hmmlist_mono_sp 不含sp的音素列表文件; 输出文件: -M $g_dir_Context/hmm0 上下文相关模型MODELS存放目录; 最后,对得到的上下文相关模型$g_dir_Context/hmm0/MODELS进行迭代训练。和前面训练过程一样分两步进行,即先对训练数据分开进行训练,然后再对全部数据进行训练。 对训练数据分开进行训练的命令行如下: $cmd = "$g_bin_HERest $g_strBinaryF

46、lag -p $j $g_strPruning -C $g_cf_Context -H $g_dir_Context/hmm$k/MODELS -M $g_dir_Context/hmm$i -S $g_scp_Aligned_Training.$j -I $g_dir_Context/MLF.context $g_hmmlist_context"; 输入文件: 1. -C $g_cf_Context 配置文件config; 2. -H $g_dir_Co

47、ntext/hmm$k/MODELS 待训练的MMF模型文件; 3. -S $g_scp_Aligned_Training.$j 较正校正后的训练数据列表文件; 4. -I $g_dir_Context/MLF.context 上下文相关的音素标注文件; 5. $g_hmmlist_context 上下文相关的音素列表文件; 输出文件: 1. -M $g_dir_Context/hmm$i 第i轮训练时,产生的HER.acc文件存储目录; $cmd = "$g_bin_HERest $g_strBinaryFlag -p

48、0 $g_strPruning -C $g_cf_Context -H $g_dir_Context/hmm$k/MODELS -M $g_dir_Context/hmm$i -s $g_dir_Context/hmm$i/occ.0 $g_hmmlist_context"; for($j=1; $j<=$g_nSplit; $j++) { $cmd = $cmd . " $g_dir_Context/hmm$i/HER$j.acc";

49、 } 输入文件: 1. $g_cf_Context 配置文件config; 2. -H $g_dir_Context/hmm$k/MODELS 待训练的MMF模型文件MODELS; 3. $g_hmmlist_context 包含sp的音素列表文件; 2. $g_dir_Context/hmm$i/HER$j.acc 所有的HER.acc文件; 输出文件: 1. -s $g_dir_Context/hmm$i/occ.0 训练过程产生的统计文件occ.0; 2. -M $g_dir_Context/hmm$i 第i轮训练完成后

50、得到新的MMF文件MODELS的存储目录; 2.3 状态绑定上下文相关模型 首先,要生成用于绑定状态的HHEd编辑命令文件,命令行如下: $cmd = "$g_bin_EasyTraining -MakeClstHHEdCmd $g_dir_TiedContext/Clst.log $statnow $g_qst_QuestionSet $g_cmd_EasyTraining_ModelGen $g_dir_TiedContext/HHEd.Clustering $g_dir_TiedContext/TREE $g_hmmlist_tiedco

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服