用于可视化CNN中间层的特征图预处理

问题描述 投票:0回答:1

我试图可视化CNN的中间层,并在Internet上学习了本教程。在此代码中,特征映射在绘制之前进行了预处理:

channel_image = layer_activation[0,:, :, col * images_per_row + row]
channel_image -= channel_image.mean() # Post-processes the feature to make it visually palatable
channel_image /= channel_image.std()
channel_image *= 64
channel_image += 128
channel_image = np.clip(channel_image, 0, 255).astype('uint8')

我不明白:为什么归一化后,它乘以64并加到128?

neural-network conv-neural-network feature-extraction
1个回答
0
投票

首先,我是一个初学者。其次,您没有提供本教程的链接,但我猜您是在指this one

关于您的问题,我认为这实际上取决于在输入模型进行训练之前如何对输入进行预处理(或标准化)。在这方面我可能是错的,但我的直觉是,这64和128(作者添加到随机噪声图像上的数字)是任意数字,以对图像进行后处理以供以后可视化。

如果使用自定义模型,则这些数字可能会有所不同,具体取决于您在自定义模型中对图像的预处理方式。希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.