深度学习中,在测试是到底能不能做barch normlization和dropout

BN在测试的时候需要,因为BN相当于在那一层做了一次归一化,所以为了保证测试过程和训练过程的一致性,BN需要保留
【深度学习中,在测试是到底能不能做barch normlization和dropout】 Dropout在测试的时候要去掉,因为Dropout的本质是每个batch训练一个完整网络的子网,然后测试的时候使用这些网络的集成,所以必须要去掉。

■网友
batch normalization可以用在图像中,效果就是加快训练速度。如果要用在文本等离散问题上用layer normalization:它作用于一个x,而不是batch上。dropout可以用来防止过拟合。在你的任务上有没有效果,试了在知道。
■网友
第一,batch normalization,单词拼写有错误
第二,测试时可以用bn,不过需要训练集样本的均值和方差
第三,测试时dropout的keep_prob设置为1,就是不使用dropout,相当于做网络集成,效果会变好

嗯,就酱


    推荐阅读