今天又一次栽在了batch normalizaiton

1、训练baseLine的时候,is_training 没有传达到自己编写的子函数,导致baseline的bn层没有学习。修改后可能准确率会进一步提升
2、在分解实验中,bn层是不该学习的,但是却set is_training=True。这样的后果是,虽然一般层被冻结了,bn层的beta,gamma不在var_list中也被冻结了,但是moving_men/variance却在fine_tune过程中改变了,而这是在分解实验中不允许的。这也导致了将W_ave迁移到joint method中,初始准确率近乎为0-----W_reuse与原w_ave网络一致,但moving_men/variance却不匹配了

3、好事是,经过两次坑,现在对bn层基本能掌握能修改能支配了。

你可能感兴趣的:(Tensoflow实战,tensorflow)