关于3D稀疏卷积的理解

读SECOND论文读到的稀疏卷积,跟推荐读了通俗易懂的解释Sparse Convolution过程 - 知乎 (zhihu.com)

写下简单理解

1.稀疏3D卷积和稀疏2D卷积,都是为了节约计算量

2. 二维图像稀疏卷积的例子

2.1 数据输入

以作者给出的图为例,一个5x5x3通道的图像,除了P1P2,  其他位置为0,那么在稀疏格式的数据中,稀疏数据可以表示为[0.1,0.1,0.1]   [0.2,0.2,0.2],和索引列表[1,2],[2,3],(为YX顺序)

2.2 卷积核定义与稀疏卷积的输出

稀疏卷积核的定义与普通卷积核是相同的

conv2D(kernel_size=3, out_channels=2, stride=1, padding=0)

但稀疏卷积的输出与传统卷积差别较大,有两种定义,分别为regular output definition和submanifold output definition

区别在于,regular中,只要kernel覆盖一个activate input,就可以计算出output,如果

2.3稀疏卷积的计算准备(构建input table和output table)

 计算过程其实是通过hash table来完成的

首先需要构建一个input  hash table

 实际是在记录点的顺序

最左边的vin是点的下标,key_in是input的位置

构建out hash table的过程,实际就是在计算稀疏卷积在哪个位置有输出

2.4稀疏卷积计算

核心在于构建rulebook,将稀疏卷积的数学形式转变为可编程形式

 得到的rulebook中的每一行代表一个atomic operation

坐标为索引,count计数,而v_in和v_out分别代表atomic操作的input hash table 和output hash table中的index

 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值