主页 > 互联网  > 

2.2反向传播:神经网络如何“学习“?

2.2反向传播:神经网络如何“学习“?
一、神经网络就像小学生

想象一个刚学算术的小学生,老师每天布置练习题,学生根据例题尝试解题,老师批改后指出错误。神经网络的学习过程与此相似:

输入层:相当于练习题(如数字图片)输出层:学生的答案(如识别数字是"3")损失函数:老师的批改(计算错误程度)反向传播:学生根据错误调整计算步骤的过程 二、前向传播:先做一遍练习题

假设我们要识别数字"3",神经网络的处理过程如下:

示例:

1输入层数据:[0.5, 0.8] # 像素值 2权重参数:w1=0.3, w2=0.6, 偏置b=0.1 3 4# 隐藏层计算 5h = (0.5*0.3) + (0.8*0.6) + 0.1 = 0.73 6激活值 = 1/(1+e^(-0.73)) ≈ 0.675 # Sigmoid函数 7 8# 输出层计算 9最终输出 = 0.675*0.4 + 0.2 = 0.47 # 假设目标值是0.8 10误差 = (0.8-0.47)^2 / 2 = 0.0545 11

此时网络认为图片有47%概率是"3",但正确答案应该是80%1

三、反向传播:老师批改作业

反向传播就像老师用红笔标注错误步骤:

1. 计算总误差(老师打分)

使用均方误差公式: 总误差 = Σ(预测值 - 真实值)^2 / 2

2. 逆向追溯责任(找错误根源)

通过链式法则逐层计算各参数的责任比例:

预览

以输出层权重w5为例:

1误差对w5的梯度 = (预测值-真实值) * 激活输出 * 激活导数 2 = (0.47-0.8) * 0.675 * 0.675*(1-0.675) ≈ -0.033 3 3. 调整参数(学生改正错误)

按梯度方向调整参数:

1新w5 = 原w5 - 学习率*梯度 2 = 0.4 - 0.1*(-0.033) = 0.4033 3

参数调整幅度就像调音量:误差越大,调整幅度越大

四、生活中的反向传播

假设你调整咖啡配方:

第一次:3g糖→太苦(误差大)反向分析:糖量影响最大第二次:5g糖→稍好(误差减小)继续调整奶量、咖啡粉...

经过多次调整,最终找到最佳配方——这就是神经网络的学习过程!

五、优化学习效率的三个技巧 学习率:就像调整步伐大小 太大容易错过最佳点(0.1是常用初始值) 动量:像下坡时的惯性 避免在局部最优处卡住 批量训练:像同时批改多份作业 更稳定地找到调整方向 六、核心公式总结

步骤

关键公式

类比

前向传播

a = σ(w*x + b)

做练习题

损失计算

L = ½Σ(y_true - y_pred)^2

计算错题数

反向传播

∂L/∂w = ∂L/∂a * ∂a/∂z * ∂z/∂w

分析错误原因

参数更新

w_new = w_old - η*∂L/∂w

调整学习方法

参考资料 反向传播手推公式示例链式法则图解动量优化原理神经网络参数更新可视化5分钟-通俗易懂 - 神经网络 反向传播算法(手算)_哔哩哔哩_bilibili
标签:

2.2反向传播:神经网络如何“学习“?由讯客互联互联网栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“2.2反向传播:神经网络如何“学习“?