with tf.variable_scope("ner_variables", reuse=tf.AUTO_REUSE):
fw_cell = tf.nn.rnn_cell.BasicLSTMCell(args.rnn_size, state_is_tuple=True)
bw_cell = tf.nn.rnn_cell.BasicLSTMCell(args.rnn_size, state_is_tuple=True)
if is_training:
fw_cell = tf.nn.rnn_cell.DropoutWrapper(fw_cell, output_keep_prob=0.5)
bw_cell = tf.nn.rnn_cell.DropoutWrapper(bw_cell, output_keep_prob=0.5)
fw_cell = tf.nn.rnn_cell.MultiRNNCell([fw_cell for _ in range(args.num_layers)], state_is_tuple=True)
bw_cell = tf.nn.rnn_cell.MultiRNNCell([bw_cell for _ in range(args.num_layers)], state_is_tuple=True)
else:
fw_cell = tf.nn.rnn_cell.MultiRNNCell([fw_cell for _ in
range(args.num_layers)], state_is_tuple=True)
bw_cell = tf.nn.rnn_cell.MultiRNNCell([bw_cell for _ in
range(args.num_layers)], state_is_tuple=True)我用上面的方法加了tf.nn.rnn_cell.DropoutWrapper层,训练时候的准确率可以到达83%,可是测试的时候却只有10%多,这是怎么回事,这里的代码不对劲
16.9k 10
1.8k 9
1.8k 8
2.0k 7
1.5k 7