# 第 1 章　绪论

> 来源：https://deeplearning.bnuai.com/chapters/01-introduction ｜ 作者：唐志清（北京师范大学） ｜ 更新：2026-11-01 ｜ 内容依据邱锡鹏《神经网络与深度学习》（https://nndl.ai/）及作者公开课件

## 学习目标

<div class="goals">

- 了解本课程的内容结构、预备知识与参考资料；
- 理解人工智能、机器学习、表示学习、深度学习与神经网络之间的关系；
- 理解**语义鸿沟**问题，区分**局部表示**与**分布式表示**，知道什么是“好的表示”；
- 理解深度学习要解决的核心问题——**贡献度分配问题**；
- 了解神经网络发展的五个阶段及常用的深度学习框架。

</div>

## 课件幻灯片

> 本章课件共 54 页，可在网页中逐页浏览：https://deeplearning.bnuai.com/chapters/01-introduction；PDF 下载：https://deeplearning.bnuai.com/pdf/nndl-ch01.pdf

## 讲义

### 1.1 关于本课程

本课程讨论三个相互关联的概念：[幻灯片 2](#slide-2)

- **人工智能**的一个子领域；
- **神经网络**：一种以（人工）神经元为基本单元的模型；
- **深度学习**：一类机器学习问题，主要解决**贡献度分配问题**。

课程内容按教材分为三部分：机器学习基础（机器学习概述、线性模型），基础网络模型（前馈网络、卷积网络、循环网络、网络优化与正则化、注意力与记忆机制、无监督学习），以及进阶模型（概率图模型、玻尔兹曼机、深度信念网络、深度生成模型、深度强化学习、序列生成模型）。[幻灯片 4](#slide-4)

**预备知识**包括线性代数、微积分、数学优化、概率论和信息论，教材附录《数学基础》对此有系统整理。[幻灯片 5](#slide-5) 除本书外，推荐阿斯顿·张等《动手学深度学习》（有 PyTorch 版）、Bishop《模式识别与机器学习》（PRML）、Nocedal《数值优化》、Boyd《凸优化》，以及斯坦福 CS224n（自然语言处理）、CS231n（计算机视觉）、伯克利 CS285（深度强化学习）等课程。[幻灯片 6](#slide-6) [幻灯片 8](#slide-8) 深度学习领域最重要的学术会议有 NeurIPS、ICLR、ICML、AAAI、IJCAI，以及 ACL / EMNLP（自然语言处理）、CVPR / ICCV（计算机视觉）等。[幻灯片 10](#slide-10)

### 1.2 人工智能

**人工智能**（Artificial Intelligence, AI）就是让机器具有人类的智能，即“计算机控制 + 智能行为”。这一学科的诞生有明确的标志性事件：1956 年的**达特茅斯会议**，John McCarthy 等人在会上正式提出“人工智能”这一名称。[幻灯片 12](#slide-12)

如何判断机器是否“智能”？1950 年，阿兰·图灵在论文《计算机器与智能》中提出了**图灵测试**：一个人在不接触对方的情况下与对方进行一系列问答，如果在相当长时间内无法判断对方是人还是计算机，就可以认为这台计算机是智能的。要通过图灵测试，计算机必须具备理解语言、学习、记忆、推理、决策等能力，这引导了人工智能的许多研究方向：[幻灯片 13](#slide-13) [幻灯片 14](#slide-14)

- **感知**：计算机视觉、语音信息处理；
- **学习**：模式识别、机器学习、强化学习；
- **语言**：自然语言处理；
- **记忆**：知识表示；
- **决策**：规划、数据挖掘。

人工智能的发展经历了**推理期**（基于逻辑与规则的符号系统）、**知识期**（专家系统）和**学习期**（机器学习）几个阶段，其间也经历过两次“寒冬”。[幻灯片 15](#slide-15)

### 1.3 机器学习：从规则到数据

开发一个人工智能系统，传统做法是由专家把知识写成**人工规则**。[幻灯片 16](#slide-16) 但很多现实问题（如识别手写数字、理解语音）的规则难以说清楚，于是转向**机器学习**：让机器从数据中自动学到规律。[幻灯片 17](#slide-17)

从这个角度看，**机器学习 ≈ 构建一个映射函数**：语音识别把声音映射为文字，图像识别把图片映射为类别，围棋程序把棋局映射为落子位置，机器翻译把一种语言的句子映射为另一种语言。[幻灯片 18](#slide-18)

一个直观例子是“芒果机器学习”：如何判断一个芒果是否甜？[幻灯片 19](#slide-19) 我们从市场随机买一批芒果（**训练数据**），记录每个芒果的**特征**（颜色、大小、形状、产地、品牌）和**输出变量**（甜度、多汁程度、成熟度）；设计一个学习算法学习特征与输出之间的关系（**模型**）；下次买芒果时，就可以根据新芒果（**测试数据**）的特征预测其质量。[幻灯片 20](#slide-20)

### 1.4 表示学习

用机器学习解决模式识别任务时，一般流程是：原始数据 → 数据预处理 → 特征提取 → 特征转换 → 预测（识别）。其中特征处理往往依赖人工经验，称为**特征工程**；只在最后一步学习的方法称为**浅层学习**。[幻灯片 23](#slide-23)

**语义鸿沟**是人工智能的核心挑战之一：数据的底层特征（像素、字符串）与高层语义（“这是一只猫”“这首诗表达了思乡之情”）之间存在巨大差距，人们对文本、图像的理解无法从底层特征直接获得。[幻灯片 24](#slide-24)

因此，**数据表示是机器学习的核心问题**。如果有一种算法能自动从数据中学习有效的特征并提升最终模型的性能，这种学习就称为**表示学习**。它的难点在于“好的表示”没有明确的目标。[幻灯片 25](#slide-25) 一般而言，好的表示应当：[幻灯片 26](#slide-26)

1. 具有很强的**表示能力**——同样大小的向量能表示更多信息；
2. 使**后续的学习任务变得简单**——包含更高层的语义信息；
3. 具有**一般性**——是任务或领域独立的，可以迁移到其他任务。

**局部表示与分布式表示**。在计算机中表示语义通常有两种方式：[幻灯片 27](#slide-27) [幻灯片 29](#slide-29)

- **局部表示**（离散表示、符号表示），最典型的是 **one-hot 向量**：用一个 $N$ 维向量表示 $N$ 个对象，每个向量只有一维为 1。它简单、可解释，但维数高、稀疏，且所有向量两两正交，无法度量相似度。
- **分布式表示**：用压缩的、低维的、稠密的向量表示对象，每个对象由多个维度共同表示，每个维度也参与表示多个对象。例如颜色可以用 RGB 三个数值表示，而不必为 1300 多种颜色名各开一维。[幻灯片 28](#slide-28)

| 对象 | 局部表示 | 分布式表示 |
| --- | --- | --- |
| A | [1 0 0 0] | [0.25 0.5] |
| B | [0 1 0 0] | [0.2 0.9] |
| C | [0 0 1 0] | [0.8 0.2] |
| D | [0 0 0 1] | [0.9 0.1] |

分布式表示用 $O(N)$ 个参数就能区分 $O(2^k)$ 个区域（$k$ 为非零参数个数），表示能力远强于局部表示。把局部表示映射为分布式表示的过程称为**嵌入**（embedding）。自然语言处理中的**词嵌入**就是典型例子：语义相近的词（“北京”“上海”，“高兴”“难过”）在嵌入空间中彼此靠近。[幻灯片 30](#slide-30)

**表示学习与深度学习**。要学到一种好的高层语义表示（尤其是分布式表示），通常需要从底层特征开始，经过多步非线性转换。深度结构的优势在于：**特征重用**、**指数级增长的表示能力**，以及通过多步构造获得**抽象表示与不变性**。[幻灯片 31](#slide-31) 与 PCA、LDA、LLE、Isomap 等传统特征提取方法相比，传统方法主要基于任务或先验去除无用特征，而表示学习通过深度模型学习高层语义特征。[幻灯片 32](#slide-32)

### 1.5 深度学习

**深度学习**是机器学习的一个子问题：通过构建具有一定“深度”的模型，让模型自动学习好的特征表示（从底层特征到中层特征，再到高层特征），从而提升预测或识别的准确性。[幻灯片 33](#slide-33)

用数学语言描述，浅层学习直接学习 $y=f(\boldsymbol x)$，而深度学习学习一个复合函数 [幻灯片 35](#slide-35)

$$
y=f^{K}\Big(f^{K-1}\big(\cdots f^{2}(f^{1}(\boldsymbol x))\big)\Big),
$$

其中每个 $f^{k}$ 是一个非线性变换，$K$ 是深度。

```mermaid
flowchart LR
  A["原始数据"] --> B["底层特征"] --> C["中层特征"] --> D["高层特征"] --> E["预测 / 决策"]
  subgraph 表示学习
  B
  C
  D
  end
```

由于中间每一层都没有直接的监督信号，深度学习面临的关键问题是**贡献度分配问题**（Credit Assignment Problem, CAP）：系统中不同的组件（参数）对最终输出结果的贡献或影响各是多少？例如下围棋时，只有终局才知道胜负，那么每一步棋各自贡献了多少？[幻灯片 43](#slide-43) 目前，神经网络是解决贡献度分配问题的最主要模型——用**偏导数**来度量贡献度，通过误差反向传播把最终的误差分配到每一个参数。因此，**神经网络天然不是深度学习，但深度学习天然是神经网络**。

### 1.6 神经网络

**生物神经元**由细胞体、树突和轴突组成，单个神经细胞只有**兴奋**和**抑制**两种状态，人脑约有 860 亿个神经元。[幻灯片 37](#slide-37) 1949 年，加拿大心理学家 Donald Hebb 提出了**赫布法则**：如果神经元 A 的轴突反复、持续地参与使神经元 B 兴奋，那么 A 对 B 的连接效能会增强（“一起激发的神经元连在一起”）。人脑的记忆分为短期记忆和长期记忆，重复足够多次的经验会通过**凝固作用**转化为长期记忆，海马区是其核心区域。[幻灯片 38](#slide-38)

**人工神经网络**由大量神经元及其有向连接构成，需要考虑三方面：[幻灯片 40](#slide-40)

1. **神经元的激活规则**：输入到输出的映射关系，一般为非线性函数；
2. **网络的拓扑结构**：不同神经元之间的连接关系；
3. **学习算法**：如何通过训练数据学习网络参数。

常见的网络结构有前馈网络、记忆网络（反馈网络）和图网络，实际中的网络大多是复合结构。[幻灯片 41](#slide-41)

### 1.7 神经网络发展史

神经网络的发展大致经过五个阶段：[幻灯片 44](#slide-44)

| 阶段 | 时间 | 代表性事件 |
| --- | --- | --- |
| 模型提出 | 1943–1969 | McCulloch & Pitts 提出 MP 神经元模型（1943）；Hebb 学习规则（1949）；Minsky 建造神经网络机 SNARC（1951）；Rosenblatt 提出**感知器**及其学习算法（1958） |
| 冰河期 | 1969–1983 | Minsky 与 Papert 在《感知器》中指出单层感知器**无法解决异或（XOR）问题**、且计算能力不足；Werbos 提出反向传播（1974）但未受重视；福岛邦彦提出带卷积与子采样的**新知机**（1980） |
| 反向传播引起的复兴 | 1983–1995 | Hopfield 网络（1983）；Hinton 提出**玻尔兹曼机**（1984）；Rumelhart、Hinton 等推广**反向传播算法**（1986）；LeCun 把反向传播用于**卷积神经网络**识别手写数字（1989） |
| 流行度降低 | 1995–2006 | 支持向量机等统计学习方法兴起，神经网络理论基础不清晰、优化困难、可解释性差等缺点凸显 |
| 深度学习的崛起 | 2006– | Hinton 等提出**逐层预训练 + 精调**训练深层网络（2006）；深度网络在语音识别、图像分类上取得突破；**AlexNet** 在 ImageNet 竞赛中大幅领先（2012，课件中记为 2013 年，实际为 ILSVRC 2012）；GPU 与大数据推动大规模神经网络训练 |

深度学习带来了语音识别（词错误率从约 1/4 降到 1/8）、计算机视觉、自然语言处理（分布式表示、机器翻译、问答）、信息检索等领域的革命。[幻灯片 49](#slide-49) Hinton、LeCun、Bengio 因在深度学习方面的贡献获得 2018 年图灵奖。[幻灯片 50](#slide-50)

### 1.8 深度学习框架

深度学习框架提供三项核心能力：**简易快速的原型设计**、**自动梯度计算**、**无缝的 CPU / GPU 切换**。[幻灯片 53](#slide-53) 早期有 Theano、Caffe、TensorFlow、Keras、Chainer、MXNet 等，国内有飞桨 PaddlePaddle、MindSpore 等；目前学术界和工业界最常用的是 **PyTorch** 以及 JAX。本课程的编程练习使用 Python，建议从熟悉 NumPy 的矩阵运算开始。[幻灯片 54](#slide-54)

## 本章小结

- 人工智能希望让机器具有人类智能；机器学习通过数据学习映射函数，取代难以手写的规则。
- 数据表示是机器学习的核心问题；表示学习自动学习好的表示，分布式表示（低维稠密向量）比局部表示（one-hot）表达能力更强。
- 深度学习 = 表示学习 + 预测学习的端到端学习，核心难点是贡献度分配问题；神经网络用偏导数（误差反向传播）来分配贡献度。
- 神经网络经历了提出、冰河期、复兴、低潮与深度学习崛起五个阶段。

## 思考题与习题 {#exercises}

<div class="exercise-list">

1. **（概念）** 用一张图（或一段话）说明人工智能、机器学习、表示学习、深度学习、神经网络之间的包含与交叉关系。
2. **（讨论）** 图灵测试有哪些局限？今天的大语言模型能否“通过”图灵测试？这能否说明它们具有智能？
3. **（举例）** 各举一个例子说明：(a) 规则方法比机器学习更合适的场景；(b) 必须用机器学习才能解决的场景。
4. **（计算）** 一个词表有 50,000 个词。用 one-hot 表示时每个词的向量有多少维？若用 300 维词嵌入，存储整个嵌入表需要多少个浮点数？one-hot 向量之间的余弦相似度是多少？
5. **（思考）** 为什么说“神经网络天然不是深度学习，但深度学习天然是神经网络”？深度学习中的“深度”指的是什么？
6. **（编程）** 熟悉 NumPy：用向量化运算（不写 Python 循环）实现矩阵乘法、按行 softmax 和两组向量之间的成对欧氏距离，并与循环实现比较运行时间。

</div>

**部分提示**

- 第 4 题：50,000 维；$50{,}000\times300=1.5\times10^7$ 个浮点数；任意两个不同 one-hot 向量正交，余弦相似度为 0。
- 第 5 题：“深度”是指原始数据到输出之间经过的非线性变换的次数（路径长度），即信用分配路径的长度。

## 延伸阅读

- 教材：邱锡鹏《神经网络与深度学习》第 1 章「绪论」。
- Bengio Y, Courville A, Vincent P. Representation learning: A review and new perspectives. IEEE TPAMI, 2013.
- 实践：[nndl-practice](https://github.com/nndl/nndl-practice) 第 1 章「实践基础」（张量、自动微分等 PyTorch 基础）。
- 第二版对应章节：第 1 章「绪论」。
