Hinton Neural Networks课程笔记3b:线性神经元的误差曲面
来源:互联网 发布:h3c防火墙web配置 端口 编辑:程序博客网 时间:2024/03/29 10:10
引入了误差曲面(error surface)的概念;然后利用误差曲面,分析了简单梯度下降学习算法的一种不适用情况:未归一化。
误差曲面(error surface)
回忆学习感知机过程中应用的权重空间工具,误差曲面坐落的空间与权重空间很类似。误差(error/loss)函数在数据集确定的情况下可以看做是权重的函数,在权重空间的基础上加入误差维度,然后所有<权重,误差>点组成的曲面即为误差曲面。通常情况下,示意图中纵坐标用于指示误差,而横坐标表示权重。如下图所示,上面的是权重为1维的情况下的误差曲面(实际为一个二次曲线),下面为权重为2维的情况下的误差曲面(使用等高线表示,为一个个同心椭圆):
简单梯度下降算法的误差曲面相关解释
回忆上节提及的线性神经元+误差平方和使用的简单梯度下降算法,这里给出了利用误差曲面的解释。分为全数据集梯度下降和在线梯度下降(online/在线)两种:
左面的为全数据集计算梯度的简单梯度下降算法,而右面的为每次只使用一个数据点计算梯度的在线梯度下降(Online)算法。先看全数据集的情况:因为是全数据集,所以每次计算的梯度即为误差曲面的斜率,方向与椭圆的边缘垂直,所以如果步长设置合理,每次都使得权重向椭圆中心(全局最小点)移动,最终收敛于椭圆中心附近。对于每次只使用一个数据点的情况:实际上权重是向某一个超平面移动(因为每次只有一个数据点,所以最小化此数据点计算的误差,即为使得权重最小化
简单梯度下降速度很慢的一种情况
如上图所示,当椭圆很扁的时候,梯度的方向几乎和前往椭圆中心的方向垂直(从而每次大部分都在做无用功,不断抖动,难以收敛)。(笔者注:这种情况通常发生在输入没有做归一化的情况,每一维的输入尺度不一样,却使用同一个学习率,从而导致很大的抖动,难于收敛。)
- Hinton Neural Networks课程笔记3b:线性神经元的误差曲面
- Hinton Neural Networks课程笔记3a:线性神经元的学习算法
- Hinton Neural Networks课程笔记4c:softmax输出神经元
- Hinton Neural Networks课程笔记quiz 3:带有隐层的非线性神经网络不一定能学习线性函数
- Hinton Neural Networks课程笔记1b:神经网络模拟的大脑机理
- Hinton Neural Networks课程笔记2b:第一代神经网络之感知机
- Hinton Neural Networks课程笔记1d:一个简单的机器学习实例
- Hinton Neural Networks课程笔记2c:感知机的几何解释
- Hinton Neural Networks课程笔记2d:为什么感知机的学习算法可以收敛
- Hinton Neural Networks课程笔记2e:感知机的局限性
- Hinton Neural Networks课程笔记3c:学习逻辑斯蒂回归
- Hinton Neural Networks课程笔记3d:反向传播算法(BP)
- Hinton Neural Networks课程笔记2a:三种主要的神经网络框架之前向网络、循环神经网络和对称网络
- Hinton Neural Networks课程笔记3e:如何利用梯度值训练网络(学习策略和过拟合抑制)
- Hinton Neural Networks课程笔记1e: 监督学习、强化学习、无监督学习,及其应用
- Hinton Neural Networks课程笔记4a:使用神经网络做逻辑推理
- Hinton Neural Networks课程笔记4b:神经网络是一种混合概念表示,既可以表示为特征向量,也可以表示为关系
- Hinton Neural Network课程笔记11b: 利用Hopfield Net进行信息存储
- 数据持久化(保存Json文件)---SimpleJson
- 响应式布局的实现
- Angular 4.0_在线竞拍网站(2)_创建项目
- TCP/IP详解
- C#205课的主要内容
- Hinton Neural Networks课程笔记3b:线性神经元的误差曲面
- codevs 1219 骑士游历 DP 解题报告
- 优秀惬意的文章会让你的身心愉悦!
- JAVA的进阶学习之路,从入门到中级
- SVM学习
- Akka(19): Stream:组合数据流,组合共用-Graph modular composition
- springmvc——万事开头难
- 原生javascript实现抽奖动画
- String 源码简析