牛顿,物理界的大神,1643年出生于英国的一个小村,根据自由落体现象发现万有引力,他所在的那个时代,应该还没有机器学习这个概念,但是:他通过数学推导得出了重力加速度常量G,并且公布自由落体运动的表达式为:
重力加速度常量g的一半是一个系数,解释了高度h和时间t之间的二次曲线关系;可以想象,在数百年前要根据h和t得到这个二次曲线关系是相当困难的一件事情,牛顿同志应该消耗了不少脑细胞...这件事要搁今天,使用机器学习来求解,大致是个什么概念呢?咱们继续!
首先,假设我们不知h和t之间是什么关系,我们可以在地球的任意位置上做自由落体试验,其结果无非记录数据 h 和 t(即什么样的高度下,对应什么样的时间),然后将获取的这些散点图整合,得到大致如下规律:
上图除了说明自由落体运动近似遵循二次曲线以外,别的什么也说明不了。因此机器学习的模型可能有如下3种情况:
1.线性模型
2.二次曲线模型
3. 高次曲线模型
因此问题就变成了-->根据N组{h,t}数据,求解N个θ;【即x的1次方累加到x的N次方】
当N值很大很大的时候,模型有足够的语料进行训练,对于任意N组数据可以训练得到一个一维数组【θ0,θ1,......,θn】,只不过在绝对理想的情况下只有θ2趋近于4.9【也就是重力加速度的一半即1/2g】,其他位上的θ全部为0;
事实上,重力加速度在不同的经纬度上略有不同,但是在物理学求解的时候一般取理想状态认为g是不变的;在机器学习中,假设g是常量,那么最终的结果也能直接得到: