我一直在阅读一篇论文A Perceptual Measure for Deep Single Image Camera Calibration,他们采用了DenseNet,最后一层被三个独立的头部取代。
我从keras那里拿走了DenseNet:
base_model = DenseNet169(include_top = False, weights = 'imagenet')
为它的图层设置trainable为False,并按以下方式添加这些头:
x = base_model.output
x = GlobalAveragePooling2D()(x)
x = Dense(4096, activation = 'relu')(x)
psi = Dense(256, activation = 'softmax')(x)
不幸的是,它根本没有收敛:验证错误只是在训练时无限制地增长。我非常肯定训练数据,所以我目前的理论是头部应该稍微复杂一点。
是否有人实施该论文或了解这些头应该是什么样的?