1 nnet3-chain-copy-egs划分数据集
会将cegs.1.ark按照大小平均的划分为cegs.1.1.ark cegs.1.2.ark cegs.1.3.ark
nnet3-chain-copy-egs ark:cegs.1.ark ark:cegs.1.1.ark ark:cegs.1.2.ark ark:cegs.1.3.ark
# 通过这种方式将数据集以txt形式拆分打开来看
nnet3-chain-copy-egs ark:cegs.1.ark \
ark,t:res/cegs.1.1.txt ark,t:res/cegs.1.2.txt ark,t:res/cegs.1.3.txt ark,t:res/cegs.1.4.txt \
ark,t:res/cegs.1.5.txt ark,t:res/cegs.1.6.txt ark,t:res/cegs.1.7.txt ark,t:res/cegs.1.8.txt \
ark,t:res/cegs.1.9.txt ark,t:res/cegs.1.10.txt
2 nnet3-chain-copy-egs导出chain模型的输入数据
为了观察chain模型的输入数据是什么样子,在训练过程中需要将--cleanup.remove-egs $remove_egs
设置为false
cd exp/chain/tdnn_1a_sp/egs
# 将cegs.1.ark转换为txt形式
nnet3-chain-copy-egs ark:cegs.1.ark ark,t:cegs.1.txt
音频id=HAO-HAODEMO(16kHz,时长2.306秒)其中某一部分chain模型输入如下:
- 【sp1.1-HAO-HAODEMO-3】sp1.1表示做了速度扰动,3表示该chain模型输入的chunk是从该utt的3帧开始
- 【<NumInputs>1】仅仅只有1个输入(mfcc特征),若加入i-vector就值为2
- 【<NnetIo> input <I1V> 123】共 123 帧( 103 + 19 + 1 ),[左偏移 -19 帧, 右偏移 103 帧 ]
(左右索引包含)
- 【 [ 后面】紧跟的是 123 帧 × 40 123帧\times40 123帧×40 的mfcc特征
- 【<NumOutputs> 1 】仅仅只有1个输出(pdf-id)
- 【<NnetChainSup> output <I1V> 30】网络输出共30帧,由于
--frame-subsampling-factor 3
,且nnet3-am-info和exp/chain/tdnn_1a_sp/egs/info中的 l e f t _ c o n t e x t = 19 r i g h t _ c o n t e x t = 14 left\_context=19 \quad right\_context=14 left_context=19right_context=14,这样相当于在当前帧做输入的时候需要 [ − 19 , c u r r , 14 ] [-19,curr,14] [−19,curr,14]的上下文信息作为输入【每隔3帧作为一次输出帧】,因此整个chunk需要送入:
30 ( 输 出 数 量 ) ∗ 3 + 19 + 14 = 123 帧 ( 输 入 数 量 ) 30(输出数量)*3+19+14=123帧(输入数量) 30(输出数量)∗3+19+14=123帧(输入数量) - 【<LabelDim> 2392】pdf-id的数量
- 【<End2End> F】不是端到端模型
- 【<DW2> [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ]】在每输出帧(维度30)上pdf-id的后验概率
<NnetChainSup> output <I1V> 30 <I1> 0 0 0 <I1> 0 3 0 <I1> 0 6 0 <I1> 0 9 0 <I1> 0 12 0 <I1> 0 15 0 <I1> 0 18 0 <I1> 0 21 0 <I1> 0 24 0 <I1> 0 27 0 <I1> 0 30 0 <I1> 0 33 0 <I1> 0 36 0 <I1> 0 39 0 <I1> 0 42 0 <I1> 0 45 0 <I1> 0 48 0 <I1> 0 51 0 <I1> 0 54 0 <I1> 0 57 0 <I1> 0 60 0 <I1> 0 63 0 <I1> 0 66 0 <I1> 0 69 0 <I1> 0 72 0 <I1> 0 75 0 <I1> 0 78 0 <I1> 0 81 0 <I1> 0 84 0 <I1> 0 87 0 <Supervision> <Weight> 1 <NumSequences> 1 <FramesPerSeq> 30 <LabelDim> 2392 <End2End> F
</Nnet3ChainEg> sp1.1-HAO-HAODEMO-96 <Nnet3ChainEg> <NumInputs> 1
<NnetIo> input <I1V> 144 <I1> 0 -19 0 <I1> 0 -18 0 <I1> 0 -17 0 <I1> 0 -16 0 <I1> 0 -15 0 <I1> 0 -14 0 <I1> 0 -13 0 <I1> 0 -12 0 <I1> 0 -11 0 <I1> 0 -10 0 <I1> 0 -9 0 <I1> 0 -8 0 <I1> 0 -7 0 <I1> 0 -6 0 <I1> 0 -5 0 <I1> 0 -4 0 <I1> 0 -3 0 <I1> 0 -2 0 <I1> 0 -1 0 <I1> 0 0 0 <I1> 0 1 0 <I1> 0 2 0 <I1> 0 3 0 <I1> 0 4 0 <I1> 0 5 0 <I1> 0 6 0 <I1> 0 7 0 <I1> 0 8 0 <I1> 0 9 0 <I1> 0 10 0 <I1> 0 11 0 <I1> 0 12 0 <I1> 0 13 0 <I1> 0 14 0 <I1> 0 15 0 <I1> 0 16 0 <I1> 0 17 0 <I1> 0 18 0 <I1> 0 19 0 <I1> 0 20 0 <I1> 0 21 0 <I1> 0 22 0 <I1> 0 23 0 <I1