没有数学基础的机器学习,就像厨子不会做菜。
这样的厨子只能去偷其他大厨的菜品说是自己的了。
如果函数的自变量和取值都是实数的话,函数在某一点的导数就是该函数所代表的曲线在这一点上的切线斜率。
————百度百科
假设有个一元函数 f(x),它的曲线图是这样:
其某点的斜率是这样的:
——偷百度百科的
可以观察到,一元函数只能有导数,没有偏导数,因为一元函数的自变量只有一个,方向也只有一个。图像是二维的。
在数学中,一个多变量的函数的偏导数,就是它关于其中一个变量的导数而保持其他变量恒定(相对于全导数,在其中所有变量都允许变化)。百度百科
对于多元函数,通常是指自变量有很多很多很多个(通常是大于等于两个),所以图像也是多维的。 假设有个二元函数C(x,y)
那么该函数某个点p的斜率为:
————偷这位up的图
而我们所说的偏导数普遍是指: 函数C(x,y) 沿着平行于 x 轴和平行于 y 轴两个特殊方位变动时, f(x,y) 的变化率。设求出图上中P点的偏导数:
T1指的是函数在y方向不变,函数值沿着x轴方向的变化率
T2指的是函数在x方向不变,函数值沿着y轴方向的变化率
如何理解上面两句话?T1是y方向不变,x方向变化,也就是将三维问题转化为二维问题上,假设y轴固定,那么P点在X轴的导数就是:
T2也同理,将T1和T2加在一起,就是上上图中的三维图示。此时观察三维图示你就会发现,偏导数的局限性是只能固定X轴或者Y轴方向,只有两个方向。但是在机器学习中,只有两个方向可是远远不够的,肯定要在任意方向都求出来才行,所以就有了方向导数这个概念,但是方向导数概念复杂,可不需要理解,我们可以直接来到梯度。
接着上面的例子,我们求出了点P的T1和T2两个方向的偏导数,俯视该P点即可观察到;
图上为什么会有两个箭头?那是T1和T2的方向啊[doge],那梯度是什么?就是它们俩的和向量:
而且,梯度箭头的方向指向了函数C增长最大的方向,而箭头的长度则代表这个方向上增长的数值~传说中的梯度下降法就是取与梯度相反方向的值,因为梯度箭头的方向指向了函数C增长最大的方向,它的反方向指的就是增长最小的值了。