首页 > 解决方案 > 如何正确屏蔽卷积神经网络中的值

问题描述

我正在为一些图像创建一个编码器-解码器 CNN。每个图像都有一个围绕中心的几何形状 - 圆形、椭圆形等。

我希望我的 CNN 忽略此形状中的所有值。我所有的输入数据值都已标准化为 0-1 左右。我将所有形状值设置为 0。

我认为将它们设置为零意味着它们不会被更新,但是,我的编码器-解码器 CNN 的输出会改变形状。

我能做些什么来确保这些值保持不变并且不会更新?

谢谢!

标签: pythonnumpymachine-learningpytorchconv-neural-network

解决方案


我认为您正在寻找“部分卷积”。这是 Guilin Liu 及其同事发表的一项工作,它扩展了卷积以获取输入掩码和输入特征图,并将卷积仅应用于未掩码的像素。他们还建议如何补偿掩码边界上的像素,内核“看到”有效像素和被掩码的像素。

请注意,它们的实现可能会在使用自动混合精度 (AMP) 时出现问题。


推荐阅读