为什么要了解点数学基础
学习大数据分布式计算时多少会涉及到机器学习的算法,所以理解一些机器学习基础,有助于理解大数据分布式计算系统(例如spark)的设计。机器学习中一个常见的就是gradient descent算法,是线性回归问题的一个基础算法。gradient是数学概念。
Gradient
假设一个函数有n个自变量:f(x1,x2......xn),且每个x都是标量值,那么该函数的gradient就是一个n维的向量函数,每个component是f函数针对xi的partial derivative,f的gradient反映的是f针对所有变量在各自维度的变化的敏感程度(以及正负性,即当自变量增加时,f值是增加还是减小,下同。)的合集。f的gradient记为?f
Partial Derivative
partial derivative是derivative的一个延伸概念,是一个有n维变量的函数f(x1,x2......xn),在假设其他变量值不变、仅有一个变量(假设为xi)变化的情况下,f函数针对该变量的derivative,写为f′(xi),或者?f?xi,f(x1,x2......xn)对xi的partial derivative也是xi的函数,它反映的是f相对于xi的变化的敏感程度(以及正负性)。
Derivative
一个一维变量的函数f(x)的derivative,反映的是f(x)在x的不同值的情况下,当x仅作无限小的变化时,f值的变化与x的变化的比值,因此derivative反映的是f(x)在x的不同值的情况下,f(x)对x的变化的敏感程度(以及正负性)。f(x)的derivative也是x的函数,写为f′(x).
Gradient Descent算法
线性回归问题可以归结为求一个函数f(x1,x2......xn)的(x1,x2......xn)的某一个具体的值,使得f有最小值。
如果把这个求解问题交给你,你能求出来吗?很难把,
而gradient descent算法则能解决这个问题。
……待续
版权声明:本文为博主原创文章,未经博主允许不得转载。