数值计算
2017-01-14 06:28:32 2 举报
AI智能生成
Deep Learning Introduction
作者其他创作
大纲/内容
数值计算
迭代更新
优化(寻找最大值最小值)
线性方程求解
Overflow and Underflow
上溢和下溢会带来数值的不稳定,做算法实现时应该时刻注意
举例:softmax
常用于multinoulli分布
Theano能自动检测并稳定深度学习中常见的数值不稳定的表达式
Poor Conditioning
举例:矩阵求逆会对输入的误差特别敏感,这是求逆操作本身的特性决定的
conditioning代表函数随着输入的微小变化而变化的快慢。太大的的变化可能意味着舍入误差导致了输出的巨大变化。
Gradient-based Optimization
深度学习算法大多涉及优化问题
优化问题往往以某个函数f(x)的最大化/最小化形式出现,通常用最小化来表达
目标函数(objective) / 判据(criterion) / 代价函数(cost function) / 损失函数(loss function) / 误差函数(error function)
微积分与优化问题
导数表示了输入的微小变化对输出的影响
梯度下降:将x往导数的反方向移动一小步可以减小f(x)
f'(x)=0时,导数无法提供移动的方向信息,称为临界点或驻点。
临界点不一定是局部最大/最小点,也可能是鞍点(saddle point)
优化通常寻找的是全局最小点。但在输入是高维的情况下往往难以找到。因此实际上通常找的是f非常小的点。
偏导数:多维输入的情况下,衡量最小化需要使输出是标量。所以需要使用偏导数。
梯度:包含所有偏导数的向量。
多维输入的情况下,临界点是梯度中所有元素都为0的点。
方向导数(directional derivative)是函数f 在u 方向的斜率
为了最小化f,需要找到使f下降最快的方向。
f下降最快的方向在u 与梯度方向相反时取得。
梯度向量指向上坡,负梯度方向指向下坡。
梯度下降:在负梯度方向上移动可以减小f。
学习率:确定步长的一个标量,通常是一个小常数。
通过计算,选择使方向导数消失的步长
在线搜索:计算多个步长结果,选择其中产生最小目标函数值的学习率
梯度下降在梯度的每一个元素为0时收敛
离散空间的梯度下降:爬山算法(hill climbing)
Beyond the Gradient: Jacobian and Hessian Matrix
Jacobian Matrix
包含所有输出对于所有输入的偏导数的矩阵
斜率
Hessian Matrix
多维输入下,f的二阶导数组成的矩阵
曲率
等价于梯度的Jacobian Matrix
Hessian Matrix是对称矩阵,可以分解为一组实特征值和特征向量的正交
特定方向d 上的二阶导数可以写成dTHd。
当d是H的一个特征值时,这个方向的二阶导数就是对应的特征值
其他方向,方向二阶导数是所有特征值的加权平均,与d夹角越小的特征向量具有越大的权重
最大特征值确定最大二阶导数
最小特征值确定最小二阶导数
通过(方向)二阶导数可以预期一个梯度下降步骤能表现的多好
对f(x)在当前点进行二阶泰勒展开并将附近的搜索点代入
搜索点可以表示为三项之和
函数原始值
函数斜率导致的预期改善
子主题
函数曲率导致的校正
这一项如果太大,梯度下降可能是向上移动的
gTHg小于等于0时,增加学习率将永远导致f下降
但学习率大的时候泰勒展开不准确,因此需要采取更加启发式的选择
目标函数能用二次函数很好地近似的情况下,Hessian的特征值决定了学习率的量级
二阶导数还可以用于确定一个临界点是否是局部极值点,或者是鞍点
多维的情况下,需要检测函数的所有二阶导数
用牛顿法等信息指导搜索方法解决Hessian矩阵的条件数很差时梯度下降法表现差的问题
该方法适用于局部极值点附近的收敛,但是无法解决鞍点附近的跳出
深度学习的背景下,限制函数满足Lipschitz连续或其导数满足Lipschitz连续,可以获得一些保证
这个属性允许量化我们的假设 - 梯度下降算法导致的输入的微小变化将使输出只产生微小变化
深度学习中的许多优化问题经过相对较小的修改之后就能满足Lipschitz连续
深度学习中大多数问题都难以表达为凸优化问题,但是一些算法的子模块可以满足
Constrained Optimization
在x的某些集合S中寻找f(x)的极值
方法一
将约束考虑在内后简单得对梯度下降进行修改
方法二
设计一个不同的、无约束的优化问题
通用方法
Karush-Kuhn-Tucker方法
引入广义拉格朗日函数,改写目标函数
然后用KKT条件(必要非充分)描述约束优化问题的最优点
广义拉格朗日的梯度为0
所有关于x和KKT乘子的约束都满足
不等式约束具有“互补松弛性”
0 条评论
下一页