Tensorflow踩过的坑——模型搭建篇
简要
本系列主要记录在用Tensorflow框架训练深度学习模型时遇到过的一些问题。
问题一:Max Pooling 与Conv(stride=[2,2], padding=‘SAME’)下采样尺度不一
问题描述:
搭建的Multi branch网络,branch1与branch2网络在concat到一起时发现Feature Map的width维度不一致。
cnn_features_part1 = tf.add(cnn_feature_branch1, cnn_feature_branch2) # [B, H/64, W/16, 256]
问题解决:
原因在于tf中Max Pooling与Conv(stride=2,padding=‘SAME’)缩减尺度的差异,如width=23,Max Pooling(kernel=[2,2], strdie=[2,2])后width=11,而采用Conv(stride=[2,2], padding=‘SAME’)方式计算后width=12。