WHERE FUTURE BEGINS
  • ṢELF ḌEEP ḶEARNING
  • LSE MBA Essentials - The London School of Economics
    • Leading with influence
    • Economics for managers
    • Competitive strategy
    • Corporate strategy
    • Financial accounting
    • Management accounting
    • Analysing financial statements
    • In the mind of the manager
    • Nudging behaviour
    • Organisational culture as a leadership tool
  • Business Foundations Specialization - Wharton Online
    • Introduction to Marketing
      • BRANDING: Marketing Strategy and Brand Positioning
      • Marketing 101: Building Strong Brands Part I
      • Marketing 101: Building Strong Brands Part II
      • Strategic Marketing
      • Segmentation and Targeting
      • Brand Positioning
      • Brand Mantra: The Elevator Speech
      • Experiential Branding
      • CUSTOMER CENTRICITY: The Limits of Product-Centric Thinking
      • Cracks in the Product-Centric Approach
      • Data-Driven Business Models
      • Three Cheers for Direct Marketing
      • Which Firms Are Customer Centric?
      • What is Customer Centricity?
      • Living in a Customer-Centric World
      • More Reflections on Customer CentricityPrev
      • Questions on Customer Centricity
      • GO TO MARKET STRATEGIES: Online-Offline Interaction
      • Online/Offline Competition
      • Friction
      • The Long Tail Theory
      • Preference Isolation
      • How Internet Retailing Startups Grow
      • Customers and Digital Marketing
      • Influence and How Information Spreads
      • Pricing Strategies
      • The 7M
      • BRANDING: Effective Brand Communications Strategies and Repositioning Strategies
      • Brand Messaging & Communication
      • Brand Elements: Choosing a Brand Name
      • Brand Elements: Color & Taglines
      • Brand Elements: Packaging
      • Brand Elements: Persuasion
      • Repositioning a Brand
    • Introduction to Financial Accounting
      • 1.1.1: Financial Reporting Overview
      • 1.1.2: Financial Reporting Example
    • Managing Social and Human Capital
      • Professor Cappelli and Professor Useem Introductions
    • Introduction to Corporate Finance
      • Time Value of Money
      • Intuition and Discounting
      • Compounding
      • Useful Shortcuts
      • Taxes
      • Inflation
      • APR and EAR
      • Term Structure
      • Discounted Cash Flow: Decision Making
      • Discounted Cash Flow Analysis
      • Forecast Drivers
      • Forecasting Free Cash Flow
      • Decision Criteria
      • Sensitivity Analysis
      • Return on Investment
    • Introduction to Operations Management
    • Wharton Business Foundations Capstone
  • Artificial Intelligence Career Program - deeplearning.ai
    • Machine Learning
      • Introduction to Machine Learning
      • Supervised Learning
      • Unsupervised Learning
      • Model Representation - Linear Regression
      • Cost Function
      • Gradient Descent
      • Gradient Descent For Linear Regression
      • Linear Algebra
    • Deep Learning
    • Neutral Networks and Deep Learning
      • Introduction to Deep Learning
      • What is a neural network?
      • Supervised Learning with Neural Networks
      • Why is Deep Learning taking off?
      • About this Course
      • Binary Classification
      • Logistic Regression
      • Gradient Descent
      • Derivatives
      • Computation graph
      • Derivatives with a Computation Graph
      • Logistic Regression Gradient Descent
      • Vectorization
      • Vectorizing Logistic Regression
      • Vectorizing Logistic Regression's Gradient Output
      • Broadcasting in Python
      • A note on python/numpy vectors
      • Explanation of logistic regression cost function (optional)
      • Neural Networks Overview
      • Neural Network Representation
      • Computing a Neural Network's Output
      • Vectorizing across multiple examples
      • Activation functions
      • Derivatives of activation functions
      • Gradient descent for Neural Networks
      • Backpropagation intuition (optional)
      • Random Initialization
      • Deep L-layer neural network
      • Forward Propagation in a Deep Network
      • Getting your matrix dimensions right
      • Why deep representations?
      • Building blocks of deep neural networks
      • Forward and Backward Propagation
      • Parameters vs Hyperparameters
      • What does this have to do with the brain?
    • Convolutional Neural Networks
      • Computer Vision
      • Edge Detection Example
      • Padding
      • Strided Convolutions
      • Convolutions Over Volume
      • One Layer of a Convolutional Network
      • Simple Convolutional Network Example
      • Pooling Layers
      • CNN Example - Fully Connected Layers
      • Why Convolutions?
    • Neural Network Theory [ETH]
    • Natural Language Processing
    • Computer Vision
  • IBM Data Science Professional Certificate
    • What is Data Science?
    • Open Source tools for Data Science
    • Data Science Methodology
    • Python for Data Science and AI
    • Databases and SQL for Data Science
    • Data Analysis with Python
    • Data Visualization with Python
    • Machine Learning with Python
    • Applied Data Science Capstone
  • Data Analytics
    • Python for Data Analysis
    • Data Structure and Algorithms
  • Programming Language
    • Python
    • R
    • SQL
    • C++
    • C
    • Java
    • HTML
  • 机器学习工程师
  • 商业数据分析
Powered by GitBook
On this page

Was this helpful?

  1. Artificial Intelligence Career Program - deeplearning.ai
  2. Convolutional Neural Networks

Padding

PreviousEdge Detection ExampleNextStrided Convolutions

Last updated 5 years ago

Was this helpful?

为了构建深层神经网络 一个你非常需要使用的 对基本的卷积操作的改进是填充(padding) 我们来看看它是如何工作的 在前面我们讲过 如果你用一个3x3的过滤器(filter)卷积一个6x6的图片 你最终会得到的输出是一个4x4的矩阵 这是因为3x3过滤器的可能放的位置的数目是4x4 事实上 为了适应你的6x6矩阵大小 3x3过滤器只有4x4可能的位置 这其中的通用公式是 如果你有一个 n x n 的图片并且想使用一个 f x f 的过滤器 这样输出的维度将会是 (n-f+1) x (n-f+1) 在这个例子中 6-3+1 = 4 这就是为什么你最后得到一个4x4的输出 这其实有两个缺陷:第一个是 如果每一次你使用一个卷积操作,

你的图像都会缩小 例如你从 6x6 降维到 4x4 你做不了几次卷积,你的图片就会变得非常小 也许它会缩小到只有1x1或者别的什么 所以也许你并不希望 每次你想检测边界或者其他的特征时,都缩小你的图片 这就是一个缺陷 第二个缺陷是 图片角落或者边际上的像素 只会在输出中被使用一次 因为它只通过那个3x3的过滤器(filter)一次 然而图片中间的一个像素,比如这一个 会有许多3x3的过滤器(filter)在那个像素上重叠 所以相对而言 角落或者边界上的像素被使用的次数少很多 你丢失了许多图片上靠近边界的信息 所以为了同时解决上述的两个问题 一是输出的逐渐缩小 这在当你构建非常深的神经网络时 你会发现为什么你不希望每一步都缩小图片 因为比如你有一个一百层的深度网络 如果它每一层都会缩小(图片)一点 这样一百层之后你会得到一个非常小的图片 这是一个问题 另一个(问题)是丢失了许多图片边界上的信息 所以为了消除这两个问题 你能做的是在使用卷机操作前 你可以填充(pad)图片 在这种情况下 让我们假设你用一个额外的边缘(border)填充图片 在边界周围用一个1个像素的大小的额外边缘 如果你这么做 你现在的输入已经变成一个通过填充得到的 8x8 图片 而不是 6x6 图片 如果你使用一个3x3过滤器卷积一个8x8图片 现在结果是一个6x6的图片而不是 4x4 所以你通过填充保持了图片的原始大小 6x6 通常当你填充时 你使用0来填充 如果p是填充的数量 所以 在这种情况下 p=1 因为我们使用了一个1像素的额外边缘填充了一圈 这样输出变成了 (n+2p-f+1) x (n+2p-f+1) 所以这个变成了 (6+21-3+1) x (6+21-3+1) 这是(6+2-3+1) = 6 这样你得到了一个 6x6 的输出 保持了初始图片的大小 因此这个绿色的像素事实上影响了 所有这些过滤器的输出 这样的效果是大大降低了 之前的那种边界和角落信息被忽略的严重程度 并且我在这里展示了 使用单个像素填充边缘的效果 如果你需要,你也可以用两个像素填充边缘 这样子你再添加一个额外的边缘 如果你愿意 这里你甚至可以使用更多的像素来填充 我在这里画的是 这里是一个p等于2的填充 到底需要填充多少 我们有两个常见的选择 即valid卷积和same卷积 不是什么很棒的名字

不过valid卷积 基本上意思是没有填充 因此在这种情况下 当你用一个 fxf 过滤器去卷积一个 nxn 的图片 你会得到一个 (n-f+1) x (n-f+1) 维度的输出 这就像是我们在之前的视频中使用的例子 我们用一个3x3的过滤器卷积一个6x6的图片 得到一个4x4的输出 另一个最常用的填充选择 叫做same卷积 意思是你选择的填充将使得 输出大小等于输入大小 所以当我们看一下这个公式 当你用p个像素填充 这就像是n变成了n+2p 然后其余的不变 对吧? 减去f加上1 所以当我们有一个nxn的图片 并且边缘四周的填充是p个像素 这样输出的大小是n+2p-f+1 如果你希望n+2p-f+1=n 即输出和输入大小一致 如果你用这个式子然后解方程 我想 两边n抵消了 然后如果你解p 这个意味着p=(f-1)/2 所以当f是奇数时 这样通过选择填充的大小 你可以保证输出和输入的大小相同 这就是为什么 比如说 当过滤器是3x3时 就像在之前的幻灯片中 可以使输出输入大小相同的填充是 (3-1)/2=1 另一个例子是 如果你的过滤器是5x5 就是说f=5 如果带入这个式子 你会发现需要使用2个像素大小的填充 才能使得在过滤器是5x5的情况下 输出输入相同 通常在计算机视觉(computer vision)领域 f基本上是使用奇数 事实上几乎永远是奇数 并且你很少看到偶数大小的 计算机视觉使用的过滤器 并且我想有两个原因导致这个现象 一是如果f是偶数 你会需要一些不对称的填充 所以只有当f是奇数时 这种same卷积会产生 在四周有相同的维度的一个自然的填充区域 而不是在左边多填充在右边少填充 或者别的不对称的填充 其次当你有一个奇数大小的过滤器 比如3x3或者5x5 这样这可以有一个中心位置 有时候在计算机视觉领域 有一个特殊点是很好的 有一个这样的像素是很好的 你可以称之为中心像素 这样你就可以描述你过滤器的位置 也许这些都不是 为什么f基本上永远使用奇数的很好的理由 但是如果你去读一些卷积相关的文献 你会发现3x3的过滤器非常常见 你会看见一些5x5,7x7 事实上有时候 之后我们会讲到1x1过滤器和它的原理 但是只是约定俗成 我建议你也使用奇数大小的过滤器 我想就算你使用一个偶数f 你也许能得到不错的结果 但是如果你坚持计算机视觉的传统 我一般只用奇数f 所以现在你知道了如何使用填充卷积 为了指定你卷积操作的填充 你可以指定p的大小 或者你可以只说这是一个valid卷积 意味着p=0 或者你可以说这是一个same卷积 意味着使用足够的填充 使得输出输入的大小相等 所以这就是填充 在下一个视频,让我们来讲讲如何实现步幅(stride)卷积