python - 如何正确屏蔽卷积神经网络中的值
问题描述
我正在为一些图像创建一个编码器-解码器 CNN。每个图像都有一个围绕中心的几何形状 - 圆形、椭圆形等。
我希望我的 CNN 忽略此形状中的所有值。我所有的输入数据值都已标准化为 0-1 左右。我将所有形状值设置为 0。
我认为将它们设置为零意味着它们不会被更新,但是,我的编码器-解码器 CNN 的输出会改变形状。
我能做些什么来确保这些值保持不变并且不会更新?
谢谢!
解决方案
我认为您正在寻找“部分卷积”。这是 Guilin Liu 及其同事发表的一项工作,它扩展了卷积以获取输入掩码和输入特征图,并将卷积仅应用于未掩码的像素。他们还建议如何补偿掩码边界上的像素,内核“看到”有效像素和被掩码的像素。
请注意,它们的实现可能会在使用自动混合精度 (AMP) 时出现问题。
推荐阅读
- puppet - 在模块/lib/facter/* 下的文件中找到的事实将以什么顺序加载到 puppet 客户端上?
- java - 关于使用模拟条带进行 e2e 测试
- visual-studio - 在 Visual Studio 中切换内置目标
- lisp - 递归地将元素添加到列表中的 Lisp 函数
- python - Python/Numpy - 这个 for 循环的矢量化实现?
- batch-file - 如何使用批处理文件更改配置文件 (config.yml) 中的连接字符串?
- javascript - 为什么 connectedCallback 不适用于本机 HTMLElement(不是自定义元素)?
- bash - bash - 在运行其他命令时不运行某些命令?
- python - 你如何在 Tkinter 中制作下拉菜单?
- flutter - How to center a ListView elements in flutter