最近整理了深度学习入门课程的笔记,从最基础的神经网络概念,到反向传播算法的完整流程,把这些核心知识点串联起来,希望能帮像我一样的初学者快速上手,真正打通从理论到实践的认知链路。
一、深度学习的位置:AI技术栈的金字塔尖
人工智能是一个非常宽泛的领域,机器学习是其中的一个分支,而深度学习又是机器学习的一个子集。它的核心是基于人工神经网络,通过模拟人脑神经元的连接方式来学习数据中的特征。
简单来说,深度学习的特点就是"多层"和"反向传播":
-
多层神经网络:负责从数据里层层提取特征,从最基础的像素、声波,到抽象的语义、概念,让模型能理解复杂的模式。
-
反向传播算法:用来优化网络参数,让模型的预测越来越准。它通过计算误差并反向传递,不断调整权重,就像人脑通过反馈修正自己的判断。
-
这种架构让它在图像识别、语音识别和自然语言处理等复杂任务上表现出色,比如手机的人脸解锁、语音助手,背后都是深度学习在支撑。
二、神经网络的基本单元:感知器
感知器是最简单的神经网络,只有两层神经元,它的作用是做线性划分。
它的计算逻辑很直接:
-
输入特征 x1, x2, x3 分别乘以对应的权重 w1, w2, w3
-
把这些加权值加起来,再加上偏置
-
最后通过一个激活函数得到输出 z
用矩阵乘法来表示就是:
g(V \times x) = z
这里的 g 就是激活函数,比如Sigmoid,它能把线性输出映射到0-1之间,让模型可以处理非线性问题。
感知器的局限性也很明显:它只能处理线性可分的数据。如果数据分布像异或(XOR)问题那样无法用一条直线分开,感知器就会失效。这也直接催生了更复杂的多层神经网络。
三、防止过拟合:正则化惩罚
训练模型时,我们可能会遇到一个问题:模型在训练数据上表现很好,但在新数据上却很差,这就是过拟合。
什么是过拟合?
举个例子:输入是 [1,1,1,1] ,如果权重是 [1,0,0,0] ,模型只关注第一个特征,很容易在新数据上失效;而如果权重是 [0.25,0.25,0.25,0.25] ,模型会学习所有特征,泛化能力更强。
过拟合的本质是模型"记住"了训练数据的噪声,而不是学到了通用规律。这时候就需要正则化来约束模型的复杂度。
正则化的作用
正则化的核心思想就是惩罚过大的权重参数,让模型更偏向选择分布均匀的权重,从而避免过拟合。常见的有两种:
-
L1正则化:是所有权重绝对值的和,会让不重要的特征权重直接变成0,起到特征选择的作用。比如在图像识别中,它可能会自动忽略一些无关的像素点。
-
L2正则化:是所有权重平方的和,会让权重变得更小、更均匀,防止个别权重过大主导模型。这就像让团队里的每个人都发挥作用,而不是只依赖少数核心成员。
在实际应用中,L2正则化更常用,因为它的数学性质更稳定,而L1正则化适合需要做特征筛选的场景。
四、优化模型:梯度下降
有了损失函数和正则化,我们还需要找到最小化损失的方法,这就是梯度下降。
核心概念
-
偏导数:在多变量函数中,固定其他变量,只对一个变量求导。比如函数 f(w0, w1) = w0x1 * w1x2 ,对 w1 的偏导数就是 w0x1x2 。偏导数告诉我们,在当前点上,调整这个变量会让函数值怎么变。
-
梯度:是函数所有偏导数构成的向量,它的方向是函数值增长最快的方向。反过来,梯度的反方向就是函数值下降最快的方向。
-
梯度下降法:我们沿着梯度的反方向一步步走,就能找到函数的局部最小值。这里的"步长"就是学习率,它决定了每一步走多大,太小会很慢,太大又可能错过最小值。
常见的梯度下降变体
-
批量梯度下降(BGD):用全部训练数据计算梯度,更新一次权重。优点是稳定,但计算量大,适合小数据集。
-
随机梯度下降(SGD):用单个样本计算梯度,更新权重。优点是速度快,但波动大,容易在最小值附近震荡。
-
小批量梯度下降(MBGD):用一小批样本计算梯度,兼顾了稳定性和效率,是目前最常用的方式。
五、让网络"学会":BP神经网络
BP(Back Propagation,反向传播)是训练深度学习模型的核心算法,它的过程就像一个"试错-修正"的循环:
-
正向传播:输入数据从输入层经过隐藏层,计算到输出层,得到预测值 yp 。这就像我们用现有知识做一次预测。
-
计算损失:用预测值和真实标签计算损失函数(比如均方误差),衡量预测的误差。这相当于给这次预测打分,看差了多少。
-
反向传播:从输出层开始,反向计算每一层权重的梯度,这其实是一个多层隐函数求偏导的过程。它会告诉我们,每个权重对最终误差的贡献有多大。
-
更新权重:用梯度下降法,把权重往梯度的反方向更新一点,让损失变小。这就像我们根据错误调整自己的判断,下次做得更好。
-
循环迭代:重复正向传播和反向传播,直到损失降到可以接受的范围。这个过程可能要迭代成千上万次,就像我们通过反复练习不断提高技能。
BP算法的发明是深度学习发展的里程碑,它让多层神经网络的训练成为可能,也为后来的CNN、RNN等复杂模型奠定了基础。
写在最后
从感知器到BP神经网络,这一路的知识点其实是层层递进的。理解了这些基础,再去看更复杂的CNN、RNN等模型,就会轻松很多。深度学习不是黑魔法,它的每一步都有清晰的数学逻辑,只要我们把这些基础概念啃透,就能真正走进这个领域。