nnet3-chain-copy-egs用于chain模型输入数据

这篇博客介绍了如何使用nnet3-chain-copy-egs工具对chain模型的数据进行划分和导出,强调了在训练过程中观察模型输入数据的方法。通过例子展示了chain模型输入数据的结构,包括输入特征、上下文帧数以及输出维度等信息。
摘要由CSDN通过智能技术生成

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值