最全【深度学习】:《PyTorch入门到项目实战》卷积神经网络2-2(1),2024年最新面试篇

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

n

2

p

f

1

)

(n+2p-f+1)×(n+2p-f+1)

(n+2p−f+1)×(n+2p−f+1)。所以,要是我们想要保持图像大小不变,则意味着

2

p

f

1

=

0

2p-f+1=0

2p−f+1=0,则

p

=

f

1

2

p=\frac{f-1}{2}

p=2f−1​,在后面我们的卷积核通常会设置为奇数。

为了指定卷积操作中的padding,我们可以指定

p

p

p的值。以上就是padding,下面我们讨论一下如何在卷积中设置步长。

2.步幅(stride)

卷积窗口从输入张量的左上角开始,向下、向右滑动。 在前面的例子中,我们默认每次滑动一个元素。 但是,有时候为了高效计算或是缩减采样次数,卷积窗口可以跳过中间位置,每次滑动多个元素。卷积中的步幅是另一个构建卷积神经网络的基本操作,例如,下面是一个步幅为3的情况。

在这里插入图片描述

如果我们用一个

f

×

f

f×f

f×f的过滤器卷积一个

n

×

n

n×n

n×n的图像,padding

p

p

p,步幅为

s

s

s,在这个例子中

s

=

3

s=3

s=3,因为现在我们不是一次移动一个步长,而是一次移动

s

s

s步,输出于是变为

[

n

2

p

f

s

1

]

[

×

n

2

p

f

s

1

]

[\frac{n+2p - f}{s} + 1] [\times \frac{n+2p - f}{s} + 1]

[sn+2p−f​+1][×sn+2p−f​+1]。[] 表示向下取整。

3.代码实现

3.1 padding实现

pytorch中,padding和stride的都可以在nn中实现

# 导入相关库
import torch
from torch import nn
# 定义计算卷积层函数
def comp\_conv2d(conv2d, X):
    # 这里的(1,1)表示批量大小和通道数都是1
    X = X.reshape((1, 1) + X.shape)
    Y = conv2d(X)
    # 省略前两个维度:批量大小和通道
    return Y.reshape(Y.shape[2:])

# 请注意,padding参数这里每边都填充了1行或1列,因此总共添加了2行或2列
conv2d = nn.Conv2d(1, 1, kernel_size=3, padding=1)#因此这里相当于是一个3×3的kernel加padding=1,那么根据我们的公式可以得到,最终得到的输出和输入一致
X = torch.rand(size=(8, 8))
comp_conv2d(conv2d, X).shape

torch.Size([8, 8])

3.2 stride实现

步幅使用stride参数实现,具体代码如下,设置步幅为2,padding为1,kernel_size为3×3,那么这样根据公式

[

n

2

p

f

s

1

]

[\frac{n+2p-f}{s}+1]

[sn+2p−f​+1]这里n为8,p=1,f=3,s=2,会返回一个4×4的输出。

conv2d = nn.Conv2d(1, 1, kernel_size=3, padding=1, stride=2)
comp_conv2d(conv2d, X).shape

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

1, stride=2)
comp_conv2d(conv2d, X).shape





[外链图片转存中...(img-qRNtssKQ-1715474518623)]
[外链图片转存中...(img-VQDLU6aO-1715474518623)]
[外链图片转存中...(img-q2nOKV7J-1715474518624)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值