{
  "source_file": "0930",
  "source_platform": "研究机构",
  "author": "Dive into Deep Learning",
  "title_listed": "Convolutional Neural Networks（章节）",
  "keywords": "CNN,卷积,图像",
  "domain": "图像处理",
  "content_type": "教程/书籍",
  "is_paid_flag": "否",
  "url": "https://www.d2l.ai/chapter_convolutional-neural-networks/index.html",
  "publish_date": "持续更新",
  "corpus_stage": "图像处理",
  "notes": "CNN 系列章节",
  "id": "595e6c9515cf",
  "collected_at": "2026-10-02T16:07:37",
  "title": "7. Convolutional Neural Networks — Dive into Deep Learning 1.0.3 documentation",
  "body_markdown": "Table Of Contents\n7.\nConvolutional Neural Networks\n¶\nImage data is represented as a two-dimensional grid of pixels, be the\nimage monochromatic or in color. Accordingly each pixel corresponds to\none or multiple numerical values respectively. So far we have ignored\nthis rich structure and treated images as vectors of numbers by\nflattening\nthem, irrespective of the spatial relation between pixels.\nThis deeply unsatisfying approach was necessary in order to feed the\nresulting one-dimensional vectors through a fully connected MLP.\nBecause these networks are invariant to the order of the features, we\ncould get similar results regardless of whether we preserve an order\ncorresponding to the spatial structure of the pixels or if we permute\nthe columns of our design matrix before fitting the MLP’s parameters.\nIdeally, we would leverage our prior knowledge that nearby pixels are\ntypically related to each other, to build efficient models for learning\nfrom image data.\nThis chapter introduces\nconvolutional neural networks\n(CNNs)\n(\nLeCun\net al.\n, 1995\n)\n, a powerful family of neural\nnetworks that are designed for precisely this purpose. CNN-based\narchitectures are now ubiquitous in the field of computer vision. For\ninstance, on the Imagnet collection\n(\nDeng\net al.\n, 2009\n)\nit was only the use of convolutional neural networks, in short Convnets,\nthat provided significant performance improvements\n(\nKrizhevsky\net al.\n, 2012\n)\n.\nModern CNNs, as they are called colloquially, owe their design to\ninspirations from biology, group theory, and a healthy dose of\nexperimental tinkering. In addition to their sample efficiency in\nachieving accurate models, CNNs tend to be computationally efficient,\nboth because they require fewer parameters than fully connected\narchitectures and because convolutions are easy to parallelize across\nGPU cores\n(\nChetlur\net al.\n, 2014\n)\n. Consequently,\npractitioners often apply CNNs whenever possible, and increasingly they\nhave emerged as credible competitors even on tasks with a\none-dimensional sequence structure, such as audio\n(\nAbdel-Hamid\net al.\n, 2014\n)\n, text\n(\nKalchbrenner\net al.\n, 2014\n)\n, and time series\nanalysis\n(\nLeCun\net al.\n, 1995\n)\n, where recurrent neural networks\nare conventionally used. Some clever adaptations of CNNs have also\nbrought them to bear on graph-structured data\n(\nKipf and Welling, 2016\n)\nand in recommender systems.\nFirst, we will dive more deeply into the motivation for convolutional\nneural networks. This is followed by a walk through the basic operations\nthat comprise the backbone of all convolutional networks. These include\nthe convolutional layers themselves, nitty-gritty details including\npadding and stride, the pooling layers used to aggregate information\nacross adjacent spatial regions, the use of multiple channels at each\nlayer, and a careful discussion of the structure of modern\narchitectures. We will conclude the chapter with a full working example\nof LeNet, the first convolutional network successfully deployed, long\nbefore the rise of modern deep learning. In the next chapter, we will\ndive into full implementations of some popular and comparatively recent\nCNN architectures whose designs represent most of the techniques\ncommonly used by modern practitioners.\n7.1. From Fully Connected Layers to Convolutions\n7.1.1. Invariance\n7.1.2. Constraining the MLP\n7.1.3. Convolutions\n7.1.4. Channels\n7.1.5. Summary and Discussion\n7.1.6. Exercises\n7.2. Convolutions for Images\n7.2.1. The Cross-Correlation Operation\n7.2.2. Convolutional Layers\n7.2.3. Object Edge Detection in Images\n7.2.4. Learning a Kernel\n7.2.5. Cross-Correlation and Convolution\n7.2.6. Feature Map and Receptive Field\n7.2.7. Summary\n7.2.8. Exercises\n7.3. Padding and Stride\n7.3.1. Padding\n7.3.2. Stride\n7.3.3. Summary and Discussion\n7.3.4. Exercises\n7.4. Multiple Input and Multiple Output Channels\n7.4.1. Multiple Input Channels\n7.4.2. Multiple Output Channels\n7.4.3.\n\\(1\\times 1\\)\nConvolutional Layer\n7.4.4. Discussion\n7.4.5. Exercises\n7.5. Pooling\n7.5.1. Maximum Pooling and Average Pooling\n7.5.2. Padding and Stride\n7.5.3. Multiple Channels\n7.5.4. Summary\n7.5.5. Exercises\n7.6. Convolutional Neural Networks (LeNet)\n7.6.1. LeNet\n7.6.2. Training\n7.6.3. Summary\n7.6.4. Exercises\nPrevious\n6.7. GPUs\nNext\n7.1. From Fully Connected Layers to Convolutions",
  "metadata": {
    "title": "7. Convolutional Neural Networks — Dive into Deep Learning 1.0.3 documentation",
    "description": null,
    "keywords": null,
    "author": null
  },
  "paywall": {
    "listed_paid": false,
    "detected": false,
    "marker": "",
    "public_only": false,
    "policy": "付费/会员内容只保留页面公开可见部分，不绕过付费墙"
  },
  "crawl": {
    "success": true,
    "status_code": 200,
    "error": ""
  },
  "code_blocks": [],
  "images": [
    {
      "status": "ok",
      "url": "https://www.d2l.ai/_static/logo-with-text.png",
      "bytes": 87175,
      "reused": false,
      "local_path": "attachments/595e6c9515cf/images/body-509f124ba61493e64845.png",
      "src": "https://www.d2l.ai/_static/logo-with-text.png",
      "alt": "Dive into Deep Learning",
      "downloaded": true
    }
  ],
  "audio": [],
  "videos": [],
  "links": [
    {
      "href": "https://www.d2l.ai/index.html",
      "label": "",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_references/zreferences.html",
      "label": "LeCun et al. , 1995",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_convolutional-neural-networks/why-conv.html",
      "label": "7.1. From Fully Connected Layers to Convolutions",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_convolutional-neural-networks/conv-layer.html",
      "label": "7.2. Convolutions for Images",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_convolutional-neural-networks/padding-and-strides.html",
      "label": "7.3. Padding and Stride",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_convolutional-neural-networks/channels.html",
      "label": "7.4. Multiple Input and Multiple Output Channels",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_convolutional-neural-networks/pooling.html",
      "label": "7.5. Pooling",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_convolutional-neural-networks/lenet.html",
      "label": "7.6. Convolutional Neural Networks (LeNet)",
      "type": "a"
    },
    {
      "href": "https://www.d2l.ai/chapter_builders-guide/use-gpu.html",
      "label": "Previous 6.7. GPUs",
      "type": "a"
    }
  ],
  "repair_version": 2,
  "repaired_at": "2026-10-14T10:53:45Z",
  "source_url": "https://www.d2l.ai/chapter_convolutional-neural-networks/index.html",
  "papers": [],
  "actual_video_files": [],
  "body_chars": 4308,
  "expected_body_images": 1,
  "discovery_status": "ok",
  "delivery_status": "ok",
  "missing_reason": "",
  "raw_html": "attachments/595e6c9515cf/pages/source.html",
  "local_html": "attachments/595e6c9515cf/pages/article.html",
  "body_base_path": "attachments/595e6c9515cf/pages/",
  "body_markdown_path": "attachments/595e6c9515cf/pages/article.md"
}