为什么文本分类加上mask优于动态rnn呢?
来源:11-1 课程总结
追梦逐梦白日做梦
2018-11-09
不太明白这个原理。
写回答
1回答
-
在课程的实战内容中,我们对不同的样本进行了对齐,对齐的手段是裁剪和填充(padding)。对于填充的数据来说,训练中会将填充数据(一般是没有意义的特殊字符)也加入训练,这就给梯度添加了噪音。所以加上mask会变好,因为mask会去除这些噪音。
但是,对于你问题中的动态rnn,加上mask不一定比它好,虽然加上mask去除噪音会比有噪音的要好,但是,去除噪音不止有mask一种方式,还有另一种实现方式就是在动态rnn中标记上所有样本的长度(https://www.tensorflow.org/api_docs/python/tf/nn/dynamic_rnn中的sequence_length参数),这样也能去除噪音。
总结一下,就是,加上mask去除噪音后会比没有去除噪音要好,但是动态rnn可以有另一种方式实现去除噪音,所以加上mask和动态rnn没有可比性。
00
相似问题