1.机器学习概念
目的——找函数
机器学习相当于让我们的计算机找一个函数去解决不同方面的问题。比如:
那么如何找到“函数”?
1. 猜测
2.根据训练集确定Loss
MAE && MSE
3. 寻找最佳的w,b
Loack nimima && global minima?
首先,这两个都叫做Critical point。(Critical point指梯度为0的点)
其次,為什麼我们想要知道到底是卡在local minima,还是卡在saddle point呢?
- 因為如果是卡在local minima,那可能就没有路可以走了,因為四周都 比较高,你现在所在的位置已经是最低的点,loss最低的点了,往四周走loss都会比较高,你会不知道怎麼走到其他的地方去
- 但saddle point就比较没有这个问题,如果你今天是卡在saddle point的话,saddle point旁边还是有路可以走的,还是有路可以让你的loss更低的,你只要逃离saddle point,你就有可能让你的loss更低
然后,我们要怎么判断是local mimima还是saddle point呢?
- 你只要算出一个东西,这个东西的名字叫做 hessian,它是一个矩阵,这个矩阵如果它所有的eigen value,都是正的,那就代表我们现在在local minima,如果它有正有负,就代表在saddle point。
最后,其实判断并不重要。
- loacl minima为假问题。由于深度学习的参数很多,维度很高,从低维的空间来看,是没有路可以走的东西,在高维的空间中是有路可以走的,所以一般在DP中不会出现local minima的问题
- saddle point有许多方法可以逃离,且运算量比算Hessian更小。(比如small batch、momentum)