概述
它们让网络能够看到更广的上下文,这对分割和音频至关重要,同时保持分辨率不变。
深入探讨
普通的卷积核接触相邻的像素。扩张卷积通过扩张率将相同的内核权重分开,并跳过其间的像素,因此扩张为 2 的 3x3 内核跨越 5x5 区域,同时仍仅使用 9 个权重。当您以不断增加的速率堆叠层时,这会呈指数级扩展感受野,让网络聚合大规模上下文,而无需进行会缩小特征图的池化或跨步。 atrous一词源自法语a trous,意思是有洞。这在语义分割等密集预测任务中非常宝贵,在这些任务中,您需要宽视角和像素精确的输出,而在 WaveNet 中则需要对长音频依赖关系进行建模。
现实世界的实施
DeepLab 使用空洞卷积和 ASPP 对街道场景进行最先进的语义分割
WaveNet 堆叠扩张因果卷积来生成真实的原始音频和语音
医学图像分割,例如肿瘤或器官边界,其中广泛的背景和精细的细节都很重要
自动驾驶感知的实时场景解析需要大感受野而不损失分辨率
膨胀卷积和空洞卷积的未来
扩张卷积仍然是语义和全景分割、医学成像和音频生成的核心。它们越来越多地与注意力混合在一起,其中扩张提供了廉价的远程感受野来补充自我注意力。关于自适应和可学习的膨胀率以及避免网格伪影的研究仍在继续。期待它们在高效的长序列模型和自治系统的实时场景理解中发挥作用。
付诸实践
为什么这很重要
- 成本与预算. 多年来,架构决策决定着性能和运营成本。
- 更清晰的判决. 技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。
- 质量控制. 更好的工程选择可以减少生产中的可靠性事故。
留意
- 优化一项基准测试可以隐藏更广泛的系统弱点。
- 基础设施和维护成本常常被低估。
- 随着系统变得更加复杂,安全性和可观察性差距可能会扩大。
后续步骤
- 在实施之前定义延迟、质量和成本目标。
- 在实际负载和数据条件下进行基准测试。
- 仪器监控错误、漂移和用户影响。
- 在扩展之前准备回滚和事件响应路径。
不断探索
常见问题
什么是膨胀和空洞卷积?
扩张卷积(也称为空洞卷积)在滤波器权重之间插入间隙,以便内核在不添加参数的情况下覆盖更大的区域。它们让网络看到广泛的上下文,这对于分割和音频至关重要,同时保持分辨率不变。
大于 1 的膨胀率对卷积核有何影响?
膨胀将现有权重分开,在不增加参数数量的情况下扩大感受野。
膨胀率为 2 的 3x3 内核有效跨越了多大的区域?
使用扩张 2 时,每个权重之间会跳过一个位置,因此内核跨越 5x5 的区域,同时仍仅使用 9 个权重。
为什么扩张卷积对于语义分割特别有用?
分割同时需要广泛的上下文和像素级细节;扩张会增加上下文,而不会因池化或跨步而导致下采样。
术语“atrous”源自什么?
Atrous 源自法语“trous”,带有孔洞,描述了内核重量之间插入的间隙。
在 WaveNet 中,为什么堆叠扩张卷积很有价值?
指数级增加的膨胀率让 WaveNet 可以在不使用巨大内核的情况下对数千个音频样本的依赖关系进行建模。