33 深度神经网络中的前向传播(Forward Propagation in a Deep Network)
一、核心目标 理解如何在 L 层深度神经网络 中执行 前向传播(Forward Propagation) 掌握 单个样本 与 整个训练集(向量化) 两种情况下的计算方式 明确为何在实现中 必须使用 for 循环(无法完全向量化层间计算) 二、符号约定(Notation) 符号 含义 ...
一、核心目标 理解如何在 L 层深度神经网络 中执行 前向传播(Forward Propagation) 掌握 单个样本 与 整个训练集(向量化) 两种情况下的计算方式 明确为何在实现中 必须使用 for 循环(无法完全向量化层间计算) 二、符号约定(Notation) 符号 含义 ...
一、什么是深层神经网络? Logistic 回归:可视为 1 层神经网络(只有输出层,无隐藏层),属于“浅层模型”。 单隐藏层神经网络:共 2 层(1 个隐藏层 + 1 个输出层)。 深层神经网络(Deep Neural Network) :具有 多个隐藏层(通常 ≥2),例如: 2 个隐藏层 → 3 层网络 5 个隐藏层 → 6...
一、Ian Goodfellow 的学术成长路径 1. 转向 AI 的契机 原本研究 神经科学(Neuroscience) 在 Stanford 本科期间,受导师 Jerry Cain 鼓励,选修了 Andrew Ng 的《人工智能导论》 课程中学习了 线性回归(Linear Regression)及其误差分解: \[\text{Error} = \text{B...
一、为什么不能将权重初始化为零? 在逻辑回归(Logistic Regression)中,将权重 $\mathbf{w}$ 初始化为零是可以接受的。 但在神经网络中,如果将所有权重初始化为零,会导致一个严重问题:对称性问题(Symmetry Problem) 。 1. 对称性问题的产生 考虑一个简单的神经网络结构: 输入特征数:$n^{(0)} = 2$ 隐藏层单元...
一、背景:从逻辑回归说起 在逻辑回归中,我们有如下前向传播流程: [\begin{aligned} z &= \mathbf{w}^\top \mathbf{x} + b a &= \sigma(z) = \frac{1}{1 + e^{-z}} \mathcal{L}(a, y) &= -y \log a - (1 - y) \log(1 - a) \e...
🧠 课程主题: 本课程讲解如何对具有一个隐藏层的神经网络实现梯度下降(Gradient Descent),核心在于前向传播(Forward Propagation)和反向传播(Backpropagation)的计算流程。 🔢 网络结构与参数维度 假设: 输入特征维度:$n^{(0)} = n_x$ 隐藏层单元数:$n^{(1)} = n_1$ 输出层单元数(...
🧠 课程主题: 在实现反向传播(Backpropagation) 时,我们需要计算激活函数对输入 $z$ 的导数(即斜率)。本课程介绍了三种常用激活函数(Sigmoid、Tanh、ReLU 及 Leaky ReLU)的导数形式及其在实际编程中的高效计算方式。 1. Sigmoid 激活函数 定义: [a = g(z) = \sigma(z) = \frac{1}{1 + e^...
🧠 课程核心问题 为什么神经网络必须使用非线性激活函数? 简短回答:如果所有层都使用线性激活函数(即恒等函数),那么无论网络有多少隐藏层,整个网络等价于一个单层线性模型,无法学习复杂的非线性关系。 🔍 详细解释 1. 假设使用线性激活函数 考虑一个含一个隐藏层的简单神经网络: 输入:$\mathbf{x} \in \mathbb{R}^{n_x}$ ...
在构建神经网络时,一个非常重要的设计选择是隐藏层和输出层应使用哪种激活函数。激活函数决定了神经元如何将加权输入 $z$ 转换为输出激活值 $a$。 1. 激活函数的作用 引入非线性,使神经网络能够拟合复杂函数。 若没有非线性激活函数,多层网络等价于单层线性模型,无法表达复杂模式。 2. 常见激活函数详解 (1) Sigmoid 函数(逻辑函数) 公式...
一、背景与动机 在训练神经网络时,如果我们对每个训练样本单独进行前向传播(forward propagation),会使用如下形式的循环: for i in range(m): z1[i] = W1 @ x[i] + b1 a1[i] = g(z1[i]) ... 但这种逐样本处理的方式效率低下。向量化(vectorization) 的目标是:一次性...