给神经网络一个不同的视角 - 卷积算子

本文探讨了卷积算子在神经网络中的作用,通过可视化方法解释了卷积过程,强调了可学的空间池化的概念。内容包括锚点阵生成、卷积核应用以及对输入数据的处理,提出这种方法有利于并行优化和反向计算。同时,文章引发了对于编程可导性的思考,讨论了如果所有算法都能逆向操作的可能性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

根据stride 生成锚点阵(从↖开始扩张→↓) - (绿色)
根据 k核尺寸(蓝色)&img图片尺寸(橙色) 画框(黑色),丢弃的点阵 - 红色
裁剪(黑色)
得到裁剪的锚点阵 - (绿色)
用卷积核锚点对图片采样后处理(绿块做锚点,贴上蓝色卷积核)
?处理 最简单的乘&求和

而且这样看,你可以发现卷积(非卷积层)本质是什么东西
在锚点上应用卷积核,保留位置求和

可学的空间池化(*Weight+sumpool)(不计padding的影响)

注意此非卷积层
卷积在外还有一层通道全连接,通道深度

注意这种可视化方法:
可以扩展到任意的尺寸卷积核,图片,并不需要为奇数
如果是纯粹奇数,锚点阵可以视作中心扩张

from PIL import Image
import numpy as np
from einops import rearrange

s = 1
k = 3

im = Image.open(r"0001.png")

im = np.asarray(im)
h,w,c = im.shape

# x-w y-h

# 无求和kk=k,(乘&求和)注意kk=1
im1 = np.zeros((h//s,w//s,kk,kk,c))

# 根据stride 生成锚点阵
# s=1仅是平面,s>1为散点
# 锚点(x,y)
for y in range(0,h,s):
    for x in range(0,w,s):
    	# 根据 k 核尺寸& h w 图片尺寸 画框裁剪 移除点阵,仅做大于裁剪
        if x <= (w-k) and y <= (h-k):
        	# 按照用卷积核锚点对图片采样
            imyx = im[y:y+k, x:x+k]
            # 后续处理
            # (乘&求和)imyx = np.sum(imyx*kernel, axis=(0,1), keepdims=True)
            # 独立了锚点(x,y)维度的赋值
            im1[y//s,x//s] = imyx

im2 = rearrange(im1,'y x ky kx c -> (y ky) (x kx) c')

s1k3 = Image.fromarray(np.uint8(im2))
s1k1.save('s1k3.png')

前面两步数据处理,可以很好的并行优化,后面一步是程序计算

=============
仅输入角度看的扩展版
越白重叠越少

im1 = np.ones(im.shape)*255

for y in range(0,h,s):
    for x in range(0,w,s):
        if x <= (w-k) and y <= (h-k):
            im1[y:y+k, x:x+k] -= 10

k,s = 7,2

这个纯卷积
还真看不出啥
得实现一下卷积层,迁点权重过来
而且大核太handcraft,神经网络根本不用大核
在这里插入图片描述
别直接输出uint8,截断导致衍涉图纹(?)
在这里插入图片描述

===================
这个方法还非常好翻转
那个点阵就是必须储存起来给反向计算的
得到的gradmap他是不知道怎么逆向回input的尺寸
首先翻转O=W*X
然后按照锚点阵去还原输入

是不是很好,回放(?)
就像一个视频你能很好的逆着播放一样
我现在被这启发了,如果人类的编程词法语法,不仅仅是条件语句

都能有能储存起来的翻转格式,一切语句接可导
这怕是要卷爆
不再仅仅是数学可导,编程(基于条件的算法)都可导

可怕可怕

话是这么说,似乎很多语句都不可能有翻转形式
人类是在用语法糖,那些编程句式均不是元算子

========
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值