基于相关性的预测:线性回归
前面说过,我们预测,要么是基于需求的延续性,要么是基于需求的相关性。
移动平均法、指数平滑法都是基于需求的延续性:要么需求相对平稳,有时会高点儿,有时会低点儿,但整体处于一个相对平稳的状态;要么需求呈现一定的上升或下降趋势,或者季节性,而趋势和季节性具备延续性,有一定的可预见性。这些我们在上面已经讲过。
这里我想讲的是相关性。有时候,相关性是以因果关系的形式出现,比如雨越大,伞就卖得越多;天气越冷,羽绒服就卖得越好;网店的流量越多,产品销量就越高。有时候,相关性只是关联关系,并不一定有因果关系。比如预售期间卖得好的产品,正常销售一般也卖得不错;线上畅销的,线下一般也卖得不错。
最常见的相关性是线性关系,也就是说,变量之间存在倍数关系。这里要讲的线性回归,就是量化这种线性关系,并从数理统计的角度出发,判断这种关系的强弱,以及评估据此来调整需求预测的可靠性。
“线性回归”这个名词听起来很高大上,主要是高大上在“回归”[1]二字上。对于“线性”,我们一直在用:如果1小时赚50元,那么2小时就赚100元,3小时就赚150元。这背后的逻辑就是线性关系。
只有一个自变量的线性回归叫简单线性回归,很多时候简称为“线性回归”。回归方程式是:y=ax+b,其中x叫自变量,y叫因变量,a是x和y之间的倍数,b是常数,也叫截距,即x=0的时候,直线与纵轴y交叉的值。当有多个自变量的时候,我们就叫多元线性回归。两种线性回归的基本原理都差不多,都是描述因变量与自变量之间的线性关系,并从数理统计的角度来判断这种关系的强弱。
直观地讲,线性回归就是找到一条能最好地贴近或者模拟样本中的实际情况的直线。这里的“最好地贴近”,就是让预测的误差最小,我们一般用均方误差最小来衡量[2](也叫“最小二乘法”)。简单地说,我们针对每个样本,利用线性回归模型计算预测值,其与实际值的差异就是误差;对误差取平方,然后叠加起来,所有样本的均方误差总和最小的那条直线就是最合适的直线,也是我们要找的线性回归模型。
这看上去需要很多计算,不过不用担心,比尔·盖茨早就替我们打点好了——微软的Excel可以帮我们轻松搞定,计算出线性回归的各种参数,以及相应的各种数理统计指标,百度搜索“如何用Excel做线性回归分析”就可以找到详细的操作说明。[3]
线性回归其实也是人类最基本的学习方法。我们看到新事物,总是会在记忆中寻找可参照的对象,归纳总结,找出一定的规律——最简单、最直观也最常用的规律就是线性关系,然后判断新事物所处的位置,推导出我们想要的结果。正因为如此,线性回归也是机器学习和数据科学中最常用的方法。[4]
举个例子:
案例公司走的是轻资产路线,产品的生产主要由供应商承担。在导入新产品前,案例公司一般先在官网等处预售,通过预售来验证市场需求后,再通过亚马逊等网站大范围推出。预售前,案例公司要做初步的预售预测(初始预测),即在预售期6周内,估计能卖掉多少,以驱动供应商提前开始生产备货(否则,预售客户的等待时间太长,客户体验不好)。
初始预测的准确度一般都相当低。等预售开始后,客户的订单进来了,要根据初步销量,尽快调整预售预测。凭经验,新产品开始预售,第1周卖得好的,在预售的后几周一般也卖得好;反之亦然。也就是说,第1周预售销量很有代表性,我们这里尝试用它来调整整个预售期的预测。
我们先用散点图来初步验证这种关系。我们选择了21个新品作为样本,这些新品都是在过去一年内导入的,预售期间的折扣在70%上下,第1周的销量为20~250个。在散点图上,第1周的销量与预售6周的总销量之间,有相当明显的线性关系,如图1-19所示。
图1-19 预售第1周与前6周销量的散点图
通过散点图,初步确定存在线性关系后,我们可以进行线性回归,量化变量之间的关系。如图1-20所示,我们基于这21个样本,在Excel中运行线性回归。在这里,我们假定截距b为零,也就是说,我们假定前6周销量与第1周销量呈严格的正比关系,得到如下的线性回归方程:
y=3.8×x
式中:y是前6周的预售销量,x是第1周的预售销量。
上述线性回归方程反映了:平均而言,前6周的预售总量是第1周销量的3.8倍,有的产品会高,有的产品会低,但平均水平是3.8倍。究竟高多少,低多少,这个3.8倍的关系有多强,数理统计参数可以给我们更多的信息,让我们继续阅读下面的“小贴士”。
图1-20 用线性回归来量化预售第1周与前6周的销量的关系
[1] 对于“回归”二字,感兴趣的读者可参考《线性回归中“回归”的含义》这篇文章。这篇文章看起来像是一位统计学的大神所写。你不需要懂这些才能做线性回归,但如果能弄懂这里面的专业词汇,应当可以大大提升你的统计学段位,详情参考https://blog.csdn.net/laputa_ml/article/details/80072570。
[2] 是的,这个均方误差就是预测准确度部分讲到的那个“均方误差”。
[3] 线性回归是Excel中Data Analysis插件的一个功能,需要先在Excel中安装这个插件。
[4] Top Data Science and Machine Learning Methods Used in 2018,2019,By Matthew Mayo,KDnuggets,www.kdnuggets.com.