原文链接:机器学习原理
今天来看看数值计算,废话不多说,进入正题。
数值计算
机器学习通常需要大量的数值计算。这里说一下数值计算中的需要注意的问题。
1.Overflow and Underflow 上溢出和下溢出
下溢出是数字接近于零时被舍入成0,上溢出是数字较大的时候将其当成非字符处理。解决的方式类似于变量代换。
[原创] 如何防止softmax函数上溢出(overflow)和下溢出(underflow)
2.Poor Conditioning
Conditioning 反映了一个函数随着输入的改变的改变快慢程度。输入的小改变带来的Function的快速变化会增加科学计算的量,因为舍入误差会给输出带来很大的影响。
3.Gradient-Based Optimization
梯度理论,不详细叙说。
4Jacobian矩阵和Hessian矩阵
雅可比矩阵是由一阶偏导数排列形成的矩阵,海森矩阵是一个自变量为向量的实值函数的二阶偏导数组成的方块矩阵。
5.Constrained Optimization 约束优化
约束优化法(ConstrainedOptimizationMethod):约束优化问题是在自变量满足约束条件的情况下目标函数最小化的问题,其中约束条件既可以是等式约束也可以是不等式约束。实际就是约束条件下的优化,这个条件下的解就是feas