在使用蒸馏时,若teacher program里有包含BIGRU会报错
Created by: dflmingle
在teacher program里 定义 encoder_fwd_cell = fluid.layers.GRUCell(hidden_size=128) encoder_fwd_output, fwd_state = fluid.layers.rnn( cell=encoder_fwd_cell, inputs=emb_out, sequence_length=None, time_major=False, is_reverse=False) # 使用GRUCell构建反向RNN encoder_bwd_cell = fluid.layers.GRUCell(hidden_size=128) encoder_bwd_output, bwd_state = fluid.layers.rnn( cell=encoder_bwd_cell, inputs=emb_out, sequence_length=None, time_major=False, is_reverse=True) # 拼接前向与反向GRU的编码结果得到h encoder_output = fluid.layers.concat( input=[encoder_fwd_output, encoder_bwd_output], axis=2) encoder_output=fluid.layers.elementwise_mul(encoder_output,input_mask,axis=-1) 这个结构的话,就会报错,去掉就可以,估计源码中未考虑到某种情况导致出错