Sinovoice-2016-1-20
目录
数据
- 16K 灵云数据
10000小时实际语料的标注目标,已立项400小时的标注; 语料从1000小时中,通过ASR打分,取出中间的400小时;
- 粤语标注了一个测试集,增量9小时,CER:54%;30h,50%
60h trained. no tag text to lm, CER 45% discard english text;
- 维语
已完成120小时;last train 50h; 16K标注,灵云,180小时,收集验收;
大模型
1)16K10000小时的跑一个DNN训练,加深加宽:7层2400x10000 rectifier 保留英文
数据已处理完,提参数中;DNN 92上跑; pdf:10000 8000中文 2000英文 训练第七轮;cer9.20; 900mdl/3500
拷贝一份,启动8个job; 原来的继续;进行MPE; 生成lattice,还没有开始跑;
MPE的训练:
生成lattice 宕机,硬盘已恢复,拷贝数据;部分lattice跑模型; MPE使用部分数据,或领域数据;
6000H 600*4_800 xEnt : 15.16 28.03 6000H 600*4_800 mpe : 12.09 23.51 6776H 1200*4_10000 mpe : 9.48 18.07 10000H 600*4_800 xEnt(迭代21轮) : 15.91 10000H 600*4_800 xEnt(迭代完成) : 15.56 26.71 10000H 2048*7_12000 xEnt(迭代1.7轮) : 10.12 10000H 2048*7_12000 xEnt(迭代2.6轮) : 9.73 10000H 2048*7_12000 xEnt(迭代3.8轮) : 9.51 10000H 2048*7_12000 xEnt(迭代5.1轮) : 9.53 10000H 2048*7_12000 xEnt(迭代6.0轮) : 9.41 17.75 10000H 2048*7_12000 xEnt(700.mdl ) : 9.35 17.71 10000H 2048*7_12000 xEnt(800.mdl ) : 9.27 17.57 10000H 2048*7_12000 xEnt(900.mdl ) : 9.20 17.51 10000H 2048*7_12000 xEnt(965.mdl ) : 9.20 17.60 10000H 2048*7_12000 200H mpe(2.mdl ) : 8.80 15.99 10000H 2048*7_12000 200H mpe(8.mdl ) : 8.71 15.91
200小时的MPE结果,1000小时的MPE,在生成lattice;
2)8K 领域模型,领域通用:设备 7层TDNN2048x10000,含有英文 信道、口音
华为V3信道压缩:4000小时,GMM 分成了100份 识别率下降:下降1-2个点;网络结构增大; MPE今天跑起来一个;用Context有问题的脚本先跑起来;
生成lattice已完成; aliment,MPE中间会输出模型,测试识别率;6台机器; 4天一个Model;
2e-5,发散;比基本的高2个点; 2e-6,重新训练,没有明显的改进; 可以递减,保证训练最好的出来。要该模型中的;
使用最好的模型,测试一下平安的用户测试;
5000小时,所有数据的MPE的模型作为通用模型,再进行每个项目的迭代MPE; mpe(4.mdl)为基础,使用2e5参数,进行迭代; A01(辽宁移动)和平安的模型;
嵌入式
DarkKnowledge训练; 小网络学习大网络,学的会更准,目标函数会更平滑一些; rectifier 4层600*800 DarkKnowledge先不训练。 10000从头训练,nnet3 rectifier 4层600*800 需要使用Darknowledge或CTC 需要一个大模型的,7x2048 TDNN(原始CNN + Context),新造一个Tree,1000leaf(output),语料10000小时;CHAIN,一个phone一个节点;100和1400的训练集上效果都还行; 实验阶段,隐藏层大一些;重新造 Train 修改Decision Tree 3000 一周会有一个中间结果,但不一定能跑完;
解码效率: NNet3的产品化
TagModel
- 加重path或词边:组合词,lm中加重; 晓明、小韩
Path加重,修改fst; 改了一个脚本,但是还有问题;g.fst 测试加重“xx导演的巩俐演的”; Word Vector:分堆 加词表的15万; 手动找到修改,有效果,但是脚本没有调通;
- 识别后处理
已知道这个词错了,可以处理。不知时,还需要处理?
人名识别不好,lm,人名的单字path加重???
勤威项目
- 发布了一个模型:数据62H台湾POI,在6776MPE3上增量;词表量250多万,识别不好;
省市路,分词,句式:tag的方法来做。 晓明 需要测试集,数据中心14日标完。
语音自适应
针对个人的 能提高2~3%(基数CER约10%) 客户端提取ivector,传给服务器;
RNN
LSTM不稳定,和End-to-End Merge,
- End-to-End算法,描述上下文不强,将stat去掉;
100小时验证和预期的差不多,但是大数据和大的LM上,还需要验证。 CTC Kaldi版本,并行的算法完成,在1400h上跑并行。 小汤,目前已超过DNN,MPE:NET3已跑起来。 LSTM
一个Lattice正常 一个糟糕,
第一个方案:
发散变弱;
第二个方案:
CTC TransModel
CTC的MPE已解决; Kaldi-nnet1, Kaldi-CTC, Kaldi-Chain and Eesen on WSJ. If GPU Parallel, then on grid-12 and grid-13. mpe-2 means method that considering Transition instead of CctcTransition when mpe, while mpe-1 means method that considering CctcTransition.
model %WER (test_eval92) %WER (after MPE)
kaldi/nnet1/dnn_2048_4(cd-dnn-hmm) 4.18
kaldi/ctc/decode_bd_tgpr_plm0.15 8.01 kaldi/ctc/decode_bd_tgpr_plm0.15, mpe-2, iter1 7.78 kaldi/ctc/decode_bd_tgpr_plm0.15, mpe-2, iter2 __7.73__
训练数据的并行读取问题?Hadoop?分布式磁盘?特征+lattice
96,实验室;92 8核GPU 16K,215 8K;
粤语16K
声学模型
已训练完成 130H
语言模型
下载语料,训练模型,PPL:1000+ 16K模型:字错误率21.78
粤语8K
69小时的(CER28%) FreeTalk 90小时的(CER27.5%)质检 之前测试集有问题 字面和英文加入,测试集有,训练现在没有; 粤语只训练最后一层;90小时单独训练模型的最后一层加到1400的最后一层; LM差的比较远; 英文单词还没有加(英文的标音:用粤语的音素标); 粤英文的模型,需要训练;
维语8K
声学模型
已训练35小时;借用梦原的模型;用16K的lm Model,WER:30%左右;
语言模型
和新疆大学调试:公司Word;实验室 35H标注文本数据已提供实验室处理; toolkit做完了,维语句子转成monphone串;
发布了一个维语模型,需要识别标注语料,发布的是word模型: model_35h_20150828 CER:0.419693683925
导出64小时,声学和语言模型进行优化。
声纹识别
- 数字串模型训练 正在采集数字串语音数据,预期本月内完成;
- 聚类分类算法 基于Affinity距离的算法研究
- D-Vector
- 短语音的识别:
数字模型:单独训练,ivector和plda需要用数字需要训练。 之前录得语料,独立人只有100人; 16K的找到一个1200人的数据,从中挑选; 8K的采购;但是音量小,是否会有影响?
8个Phone和1个Tele的录音模型已训练完; 跨信道,阈值不一致; 需要解决跨信道的识别问题;
手机和固定电话,需要分开测试; ubm256,需要加大; 组织一下数据,跑D-vector实验;
考勤系统,mic指定; 定制背景模型;
加入情绪,场景的分析,分类的分析;
将测试数据加入训练,看是否有提高?
使用条件的问题:
音量的影响? 背景噪音:如大厅中,人声噪杂的影响?
信道适应? 端点检测 Mic信道 背景噪音
端点检测,信噪比计算; 发音方式:坐着、站着
PLDA adaptation