【Tensoflow实战|今天又一次栽在了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层基本能掌握能修改能支配了。
推荐阅读
- Keras|将Pytorch模型迁移到android端(android studio)【未实现】
- Tensorflow|Tensorflow学习笔记----梯度下降
- Tensorflow【branch-官网代码实践-Eager/tf.data/Keras/Graph】_8.19
- nlp|Keras(十一)梯度带(GradientTape)的基本使用方法,与tf.keras结合使用
- tensorflow|tf1.x究竟到底如何如何使用Embedding?
- python|Keras TensorFlow 验证码识别(附数据集)
- AI|bert实现端到端继续预训练
- Tensorflow|cuda由7.0升级到8.0
- tensorflow|利用Tensorflow的队列多线程读取数据
- 《Tensorflow实战》阅读记录