反卷积常用方法

反卷积

    一个用于分类任务的深度神经网络通过卷积来不断抽象学习,实现分辨率的降低,最后得到一个较小的FeatureMap,即特征图,通常大小为 5 × 5 5\times5 5×5或者 7 × 7 7\times7 7×7。而图像分割任务需要恢复与原尺寸大小一样的图片,所以需要从这个较小尺度的特征图回复原始图片尺寸,这是一个上采样过程。由于这个过程与卷积正好是对应的逆操作,所以通常称为反卷积。反卷积通常有几种实现方式,一种是双线性插值为代表的插值法,一种是转置卷积。

1.双线性插值

    假如我们已经知道四个点, Q 11 = ( x 1 , y 1 ) , Q 12 = ( x 1 , y 2 ) , Q 21 = ( x 2 , y 1 ) , Q 22 = ( x 2 , y 2 ) Q_{11}=(x_1,y_1),Q_{12}=(x_1,y_2),Q_{21}=(x_2,y_1),Q_{22}=(x_2,y_2) Q11=(x1,y1),Q12=(x1,y2),Q21=(x2,y1),Q22=(x2,y2),如果要知道任一点的值 Q ( x , y ) Q(x,y) Q(x,y),则可以采用插值法。
    首先对 x x x方向进行线性插值:
f ( x , y 1 ) ≈ x 2 − x x 2 − x 1 f ( Q 11 ) + x − x 1 x 2 − x 1 f ( Q 21 ) (1) f(x,y_1)\approx\frac{x_2-x}{x_2-x_1}f(Q_{11})+\frac{x-x_1}{x_2-x_1}f(Q_{21})\tag{1} f(x,y1)x2x1x2xf(Q11)+x2x1xx1f(Q21)(1)
f ( x , y 2 ) ≈ x 2 − x x 2 − x 1 f ( Q 12 ) + x − x 1 x 2 − x 1 f ( Q 22 ) (2) f(x,y_2)\approx\frac{x_2-x}{x_2-x_1}f(Q_{12})+\frac{x-x_1}{x_2-x_1}f(Q_{22})\tag{2} f(x,y2)x2x1x2xf(Q12)+x2x1xx1f(Q22)(2)
    然后再对 y y y方向也进行线性插值:
f ( x , y ) ≈ y 2 − y y 2 − y 1 f ( x , y 1 ) + y − y 1 y 2 − y 1 f ( x , y 2 ) (3) f(x,y)\approx\frac{y_2-y}{y_2-y_1}f(x,y_1)+\frac{y-y_1}{y_2-y_1}f(x,y_2)\tag{3} f(x,y)y2y1y2yf(x,y1)+y2y1yy1f(x,y2)(3)
    先对 y y y方向进行线性插值,再对 x x x方向进行线性插值也能得到相同的结果。

2.转置卷积

    反卷积也被称为转置卷积,即Transposed Convolution,实际上仍然是一个卷积操作。在caffe等框架中,反卷积的实现与卷积使用的是同样的代码。
    卷积如图:
图1.卷积操作
    图1.卷积操作
    反卷积如图:
在这里插入图片描述
    图2.反卷积操作

[参考文档]
[1]言有三.深度学习之图像识别核心技术与案例实战[M].北京:机械工业出版社,2019:110-112.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值