画一条怎样的线?
在回答这个问题之前我们必须要了解另外两个问题:
1.为什么要画这条直线? 2.这条直线要具备怎样的特征?
其实这两个问题并不好回答,因为这必然会牵扯到机器学习的理论方面,我真的不想扯那么远(其实我不是很懂怕说错了),只从我们现在要处理的这个实际问题问题——“网站每小时的访问量”入手。
我们要解决的实际问题是:根据现有的访问量变化趋势,来预测未来访问量的变化,看是否会超出现有设备的承受范围,给出时间点,以便网站方能够做好应对方案。
可以说——总结规律,预测未来——就是我们要做的,其中总结规律也可以说是寻找模型。
而现在我们要画的直线就是我们寻找的模型。(其实鬼都知道,这条直线肯定是不行的,不过没有关系先从一维模型开始)
最好的模型是什么呢?最好的模型就是能够精确的说出今后的每小时的访问量是多少,这是不可能的,因为有y和x之间并没有必然的逻辑关系,我们要做的就是试图用一种逻辑关系去“解释”y和x之间的关系,当然就不能胡乱给一个函数模型,评判模型好坏的标准,就是看:归纳出来的值与实际值的差(f(x)-y),虽然不能相等,但差值要尽量小才行,用程序表达就是:
1 def error(f,x,y): 2 return sp.sum((f(x)-y)**2)
留意一下,为什么定义为errer,因为模型与实际值的差的本质就是一个错误——你没有预测正确,与实际值产生误差了;另外为什么用差的平方求和表示,因为误差有正有负,其实取绝对值也可以。
好了,开始划线了
《待续。。。》
这是我手画上去的
时间: 2024-10-02 22:47:49