転移学習として訓練済みモデルは非常に有用ですが、たまに途中にDropoutを入れたい、BatchNormを入れたいなど困ったことがおきます。今回はVGG16にBatchNormを入れる、MobileNetにDropoutを入れるを試してみます。 VGG16にBatchNormalizationを入れる 理論と実装上の注意 転移学習としてよく使われるVGG16ですが、実は古臭いモデルでBatchNormalizationが入っていません1。現在の分類問題において、よほどの理由がなければBatchNormalizationは入れるべきなので入れてみましょう2。 VGG16では、「Conv→Conv→Conv→Pool」のように並んでいますが、Conv→Convを「Conv→BatchNorm→ReLU→Conv→…」と置き換えます。また元のConvにはReLUの活性化関数がついているので、Co