电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
创作
电子发烧友网>电子资料下载>电子资料>PyTorch教程7.3之填充和步幅

PyTorch教程7.3之填充和步幅

2023-06-05 | pdf | 0.21 MB | 次下载 | 免费

资料介绍

回忆一下图 7.2.1中的卷积示例输入的高度和宽度均为 3,卷积核的高度和宽度均为 2,从而产生具有维度的输出表示2×2. 假设输入形状是 nh×nw卷积核形状为 kh×kw,输出形状将是 (nh−kh+1)×(nw−kw+1):我们只能将卷积核移动到它用完像素以应用卷积为止。

在下文中,我们将探索许多技术,包括填充和跨步卷积,它们可以更好地控制输出的大小。作为动机,请注意,由于内核的宽度和高度通常大于1,在应用许多连续的卷积之后,我们往往会得到比输入小得多的输出。如果我们从一个240×240像素图像,10层层5×5卷积将图像缩小为200×200像素,切片30%的图像,并用它抹掉原始图像边界上的任何有趣信息填充是处理此问题的最流行的工具。在其他情况下,我们可能希望大幅降低维数,例如,如果我们发现原始输入分辨率很笨重。跨步卷积是一种流行的技术,可以在这些情况下提供帮助。

import torch
from torch import nn
from mxnet import np, npx
from mxnet.gluon import nn

npx.set_np()
import jax
from flax import linen as nn
from jax import numpy as jnp
from d2l import jax as d2l
No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
import tensorflow as tf

7.3.1. 填充

如上所述,应用卷积层时的一个棘手问题是我们往往会丢失图像周边的像素。考虑 图 7.3.1,该图将像素利用率描述为卷积核大小和图像内位置的函数。角落里的像素几乎没有被使用。

https://file.elecfans.com/web2/M00/AA/41/pYYBAGR9NUyAe85CAAEEPZIO2Q0993.svg

图 7.3.1尺寸卷积的像素利用1×1, 2×2, 和3×3分别。

由于我们通常使用小内核,对于任何给定的卷积,我们可能只会丢失几个像素,但是当我们应用许多连续的卷积层时,这可能会累加起来。这个问题的一个直接解决方案是在输入图像的边界周围添加额外的填充像素,从而增加图像的有效尺寸。通常,我们将额外像素的值设置为零。图 7.3.2中,我们填充一个3×3输入,将其大小增加到5×5. 相应的输出然后增加到4×4矩阵。阴影部分是第一个输出元素以及用于输出计算的输入和内核张量元素:0×0+0×1+0×2+0×3=0.

https://file.elecfans.com/web2/M00/A9/C7/poYBAGR9NU-AUDCLAAGdaRvKYPc237.svg

图 7.3.2带填充的二维互相关。

一般来说,如果我们总共添加ph填充行(大约一半在顶部,一半在底部)和总共pw填充列(大约一半在左边,一半在右边),输出形状将是

(7.3.1)(nh−kh+ph+1)×(nw−kw+pw+1).

这意味着输出的高度和宽度将增加 phpw, 分别。

在许多情况下,我们会想要设置ph=kh−1pw=kw−1给输入和输出相同的高度和宽度。这样在构建网络时更容易预测每一层的输出形状。假如说kh这里很奇怪,我们会垫ph/2高度两侧的行。如果 kh是偶数,一种可能是填充 ⌈ph/2⌉输入顶部的行和 ⌊ph/2⌋底部的行。我们将以相同的方式填充宽度的两侧。

CNN 通常使用具有奇数高度和宽度值的卷积核,例如 1、3、5 或 7。选择奇数核大小的好处是我们可以保留维度,同时在顶部和底部填充相同数量的行,并且左右的列数相同。

此外,这种使用奇数内核和填充来精确保持维度的做法提供了文书上的好处。对于任意一个二维张量X,当核的大小为奇数,且各边的padding行数和列数相同时,产生与输入等高等宽的输出,我们知道输出是通过cross计算

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费