在三维曲面上的梯度更新过程中,很多地方出现梯度的下降方向是如下这样走的:
图片来源于百度百科
从图上能够看出,也经常听老师同学说起,梯度下降的方向与等高线的切线方向垂直。
那么为什么会垂直呢?其实是一个高数问题。
解释
假设我们的损失函数为z=f(x,y),在几何上表示是一个曲面,该曲面被平面c(c为常数)所截得的曲线l方程为:
这条曲线l在xoy轴面上的投影是一条平面曲线Q,它在x0y平面直角坐标系中的方程为
则我们称平面曲线Q为函数z=f(x,y)的等高线。
由于等高线f(x,y)=c上任一一点的切线斜率为dy/dx来求。
则等高线f(x,y)=c上任一一点(x,y)处的法线的斜率为:
又因为梯度的计算式子为:
则可以得到梯度的方向为:
从上可以看出梯度的方法与等高线f(x,y)=c上任一一点的法线斜率是相同的。
这也就解释了为什么梯度的方向与等高线切线方向垂直的原因。结论如下:
函数z=f(x,y)在点p(x,y)的梯度的方向与过点p的等高线f(x,y)=c在这点的法线一个方向相同。梯度的方向与等高线切线方向垂直
致谢: