Week4:深度学习简介与反向传播算法专题
本周学习了李宏毅《机器学习》课程中深度学习基础介绍与反向传播算法两大内容。课程首先讲解了神经网络的基础构成,介绍了多层感知机的整体结构与激活函数的实际作用,解释了深度网络解决非线性问题的核心原理,同时对比分析了传统浅层模型存在的缺陷。随后重点学习了反向传播算法,依托链式求导法则,完整梳理了前向传播计算、误差反向传递以及参数梯度更新的完整流程,弄懂梯度下降在神经网络训练中的具体计算逻辑,了解深度模型训练的核心流程,完成了从传统线性模型到深度神经网络的学习过渡。
1 深度学习简介
1.1 浅层模型的局限
线性回归、逻辑回归都属于典型的浅层线性模型,只能拟合线性可分的数据样本。面对异或问题、复杂曲线分布以及高维非线性数据,无论如何调整模型参数,浅层模型都难以捕捉数据的真实规律,拟合能力存在明显上限。仅通过增加人工特征的方式改善效果十分有限,无法从根本上解决非线性拟合难题,这也是需要引入多层神经网络与深度学习的核心原因。
1.2 神经网络基础结构
标准的神经网络主要由输入层、隐藏层、输出层三部分组成,多层结构叠加后就构成了深度神经网络,各层分工明确:
输入层:直接接收数据集的原始特征,不做任何计算与变换操作;
隐藏层:是神经网络实现非线性拟合的核心部分,包含大量神经元,每层都会先做线性计算,再通过激活函数完成非线性转换。单神经元线性计算公式为:
![]()
输出层:负责输出最终预测结果,根据任务类型适配不同输出形式。回归任务直接输出连续数值,二分类任务搭配Sigmoid函数,多分类任务则搭配Softmax函数。
1.3 激活函数的核心作用
如果神经网络不添加激活函数,无论叠加多少层网络,最终效果都等价于单层线性模型,无法提升拟合能力。激活函数的核心作用是为网络引入非线性特性,让深度网络能够拟合复杂的数据规律。课程介绍了三种常用基础激活函数:
Sigmoid:公式为 :
![]()
输出区间在0到1之间,缺点是容易出现梯度饱和问题;
ReLU:公式为:
![]()
能够有效缓解梯度消失问题,是目前深度学习中最常用的激活函数;
Tanh:输出区间在-1到1之间,可实现数据中心化处理,但深层网络训练中仍存在梯度衰减的问题。
1.4 深度学习核心优势与适用场景
相较于传统浅层模型,深度学习的优势十分突出,应用场景也更加广泛:
一是非线性拟合能力极强,通过多层隐藏层叠加,理论上足够宽、足够深的网络可以逼近任意连续函数,也就是万能逼近定理;
二是具备自动特征提取能力,无需人工手动设计、筛选特征,网络可逐层自动学习数据的低层、中层、高层抽象特征;
三是适配复杂高维任务,广泛应用于图像识别、语音识别、自然语言处理等传统模型难以适配的场景。
1.5 深度学习训练前置条件
深度神经网络的参数数量庞大,模型复杂度高,极易出现过拟合问题,想要完成有效训练,必须满足两个核心条件:第一,拥有足量的标注训练数据,能够完整覆盖数据的整体分布,保证模型学习到通用规律;第二,搭配高效的参数优化算法,也就是反向传播结合梯度下降算法,以此完成大规模参数的迭代更新。
2 反向传播算法 Backpropagation
反向传播算法是训练深度神经网络的核心方法,其数学本质是多元复合函数的链式求导法则。算法整体分为两个核心阶段,先通过前向传播得到预测结果与整体损失,再通过反向传播逐层求解参数梯度,最后结合梯度下降算法更新网络所有权重与偏置参数。
2.1 阶段 1:前向传播 Forward Pass
前向传播是数据从输入层向输出层逐层传递计算的过程,依次求解每一层神经元的线性输出z 与激活输出a ,最终通过输出层得到模型预测值,并计算全局损失L ,具体计算流程如下:
输入层:a0=x ,直接将原始输入特征作为输入层输出;
隐藏层逐层计算:先完成线性变换,再通过激活函数做非线性映射

式中l 代表网络的第l 层,Wl 为当前层权重矩阵,bl 为当前层偏置,σ 为对应激活函数。
输出层:最终得到模型预测值
![]()
结合真实标签计算样本的整体损失L 。
2.2 阶段 2:反向传播 Backward Pass(链式求导)
反向传播的核心目标,是求解全局损失L 对每一层网络权重Wl 和偏置bl 的梯度,从输出层反向推导至输入层,逐层完成梯度计算,具体推导结果如下:
输出层误差项δL :
![]()
其中⊙ 代表矩阵逐元素相乘,σ'(zL) 为激活函数的导数值。
隐藏层误差项递推公式(链式法则核心):
![]()
借助后一层的误差结果反向推导当前层误差,无需重复计算,大幅降低了网络训练的运算开销。
最终可推导得到参数梯度求解公式:
偏置梯度:

权重梯度:

2.3 参数更新流程
得到所有网络层的参数梯度后,结合设定的学习率η ,利用梯度下降算法同步更新权重与偏置参数,更新公式如下:

反复执行(前向传播计算损失—反向传播求解梯度—更新网络参数)的迭代流程,直至模型损失值趋于稳定、完成收敛,模型训练结束。
2.4 反向传播关键特性与问题
反向传播算法是深度网络高效训练的关键,同时也存在部分训练问题:
第一,计算效率极高,仅需一次前向传播和一次反向传播,就能求解网络全部参数的梯度,远优于逐个参数单独求导的方式;
第二,深层网络易出现梯度消失问题,Sigmoid、Tanh激活函数的导数取值范围极小,多层叠加相乘后,浅层网络的梯度会无限趋近于0,导致浅层参数无法更新;
第三,针对梯度消失问题,课程给出了常用优化方案,包括更换ReLU激活函数、使用残差网络结构、调整参数初始化方式等。
3 本周拓展思考
结合本周课程学习,我对深度学习与网络训练逻辑有了更清晰的认知。浅层模型和深度网络的核心区别,在于是否拥有多层非线性隐藏结构,非线性激活函数是深度模型具备强拟合能力的关键。反向传播的本质只是链式求导,真正实现参数优化的是梯度下降算法,二者配合完成整个神经网络的训练过程。
同时我也理解了梯度消失是早期深度网络难以训练的核心瓶颈,后续的ReLU激活函数、残差连接等技术,都是针对这一问题提出的优化方案。
本周系统掌握了深度学习入门知识与反向传播核心算法,完成了从浅层模型到深度神经网络的知识进阶,理清了多层感知机的完整结构,弄懂了激活函数赋予网络非线性拟合能力的底层逻辑,也明确了传统浅层模型的局限以及深度学习的优势与适用场景。
同时,我了解了反向传播的公式推导过程,依靠链式法则吃透了前向传播、误差反向传递、梯度求解、参数更新的全流程,掌握了深度神经网络的完整训练闭环。后续我会手动复盘反向传播的整套推导过程,尝试代码复现简易多层感知机模型,夯实学习基础。
更多推荐


所有评论(0)