预测模型入门:从趋势观察开始
很多人第一次接触预测模型,会以为它像天气预报一样,输入今天的数据,明天就能给出准确答案。实际上,模型给出的从来不是确定的事实,而是一组概率。2023年某城市地铁客流预测系统上线时,早高峰进站量的平均绝对百分比误差在8%左右,这意味着预测10万人,实际可能在9.2万到10.8万之间。这个误差范围,才是预测模型真正能提供的价值。
要理解预测,先要理解走势。走势是数据在时间轴上的排列方式,它可能向上、向下、周期波动,或者看起来毫无规律。拿北京过去十年的月平均气温来说,每年7月最高、1月最低,这就是典型的季节性走势。但如果只看某一年12月到次年2月的数据,你可能会得出“气温持续下降”的结论,而忽略春天即将到来的转折。观察走势的第一步,是拉长时间窗口,别被短期波动带偏。
趋势观察中最常见的工具是移动平均。假设你记录某家便利店连续30天的日销售额,直接看数字会眼花缭乱。取7天移动平均后,周末的峰值会被平滑,剩下一条相对清晰的基线。如果这条基线连续三周缓慢抬升,你可以合理推测:附近可能新增了客流,或者某款商品正在热销。注意,这里说的是“推测”,不是“断定”。模型的作用是把这种推测量化,给出一个带置信区间的范围。
入门级预测模型大致分三类。第一类叫朴素模型,直接拿昨天的数据当今天的预测,听起来粗糙,但在很多场景下出奇地有效。比如预测明天某支股票的开盘价,最准的单一指标往往是今天的收盘价。第二类是线性回归,假设未来走势延续过去的斜率,适合趋势平稳的数据。第三类是时间序列模型,比如ARIMA,它同时考虑趋势、季节性和随机扰动。三类模型没有绝对优劣,关键看你的数据具备什么特征。
一个常被忽略的坑是过拟合。2021年有研究团队用复杂神经网络预测某电商平台的日订单量,训练集上的误差不到2%,但上线后第一周误差飙到15%。原因很简单:模型把训练数据里的噪声当成了规律。避免过拟合的实用方法是留出最后20%的数据不参与训练,专门用来检验。如果模型在检验集上表现急剧变差,说明它记住的只是历史,不是走势。
另一个陷阱是平稳性假设。很多经典模型要求数据的基本统计特征不随时间改变,比如均值和方差保持稳定。但现实中的数据往往不平稳。以某共享单车平台的日骑行量为例,2019年均值是每天80万次,2020年2月骤降到12万次,之后又逐步回升。这种结构性断裂,任何基于历史均值的预测都会失效。遇到这种情况,更务实的做法是分段建模,或者引入外部变量,比如天气、政策、节假日。
对入门者来说,最值得养成的习惯不是掌握复杂算法,而是持续观察。每天花十分钟记录你关心的那组数据,画一条简单的折线图,标出异常点,写下可能的原因。三个月后,你会对它的走势产生直觉。这种直觉加上基本的统计工具,往往比盲目套用高级模型更可靠。预测模型的价值不在于精准命中,而在于帮你系统性地思考不确定性。