预测基础
预测不是占卜,也不是对未来随口给出一个判断。本课程中的预测指的是:在已有数据、明确目标和可检验方法(testable method)的基础上,对未来状态做出可量化、可评估的估计。一个预测任务至少要回答三个问题:预测什么未来,使用什么信息,以及如何检验它是否可靠;这也是现代预测教材和综述反复强调的基本框架 Hyndman & Athanasopoulos, 2021Petropoulos et al., 2022。
预测的难点在于未来尚未发生,但商业决策必须提前做出。因此,预测的价值不只在于“猜中一个数字”,而在于帮助我们更早、更稳健地配置资源、控制风险和比较方案。
学习目标¶
完成本章后,你应该能够:
区分 forecasting 和 prediction 的含义。
说明一个场景是否可预测,取决于哪些数据和机制条件。
识别时间序列预测中的趋势、季节性、自相关和不确定性。
解释为什么好的预测必须在大量样本和多期未来中接受检验。
用业务语言说明预测误差如何影响后续决策。
从占卜到预测¶
历史上,人们一直试图知道未来。从巴比伦人的肝卜,到二十四节气对季节和气候的周期性总结,人类很早就意识到:未来并不是完全无规律的。有些现象几乎无法提前判断,例如明天是否中彩票;有些现象则存在稳定结构,例如零售销量的节日高峰、用电量的季节变化、旅游需求的恢复节奏。
巴比伦肝卜可以看作早期人类试图寻找关联的例子:天气、牲畜、疾病和虫害之间也许存在某种经验联系,但这种联系没有清晰机制、统一数据和可复现评价。它更接近占卜或解释性叙事,而不是现代意义上的预测。
二十四节气则更接近现代预测的雏形。它来自长期天象和气候观察,能够给出季节变化的点估计(point estimate),也承认“最多相差一两天”这样的不确定性。它不是完全精确的未来知识,而是基于重复规律形成的可用预测。
这个例子也说明了传统预测的成本:规律需要在很长时间里被观察、校正和传承。农业社会可以用上千年的经验稳定节气规律;现代商业没有这种奢侈。一个电商部门可能每天要预测数以万计的商品、地区和仓库组合,很多商品刚上市还没有足够历史数据。如果仍然依赖少数专家慢慢观察,每个品类都手工总结规律,预测系统很快会被规模压垮。
现代预测和占卜的根本区别在于可检验性(testability)。预测必须说明使用了什么信息、如何生成结果、如何评价误差,以及下一次是否可以用同样流程复现。没有这些条件,预测就只是判断或叙事。彩票这类几乎独立随机的事件,即使有人画出复杂图形,也不等于具备可预测性。
Forecasting 与 Prediction¶
Prediction 是一个更宽泛的概念,指对尚未发生或尚未观察到的事件做判断。Forecasting 是其中更严格的一类:它基于历史数据和已知模式,对未来事件做出量化估计。可以这样理解:
所有 forecasting 都是 prediction。
不是所有 prediction 都是 forecasting。
Forecasting 通常要求明确的时间范围、目标变量、数据来源和误差评价方式。
例如,“这个产品未来会火”是一个 prediction;“未来 12 个月每月销量分别是多少,并给出预测区间”才更接近 forecasting。
机器学习中的 prediction 常常是横截面问题(cross-sectional problem)。例如,我们记录一届学生的课堂表现、作业完成情况和其他特征,再预测他们期末成绩是 A、B、C 还是 D。这里的重点是从特征 到标签(label) 的关系。
Forecasting 更强调时间顺序。例如,我们每天记录一个学生的测验成绩,想知道今天的成绩和昨天、前天、过去五周的学习状态是否有关。此时,过去值本身会变成特征:、 等历史信息被用来解释 或预测 。
因此,forecasting 可以看作一类特殊的 prediction:它仍然是在用信息预测结果,只是信息来自同一对象的历史状态、相邻时间点和外部事件。一般 prediction 中,样本之间常被近似看作独立;forecasting 中,行与行之间有时间依赖(temporal dependence)。今天的状态可能来自昨天的状态、上周的状态,甚至过去几个月的累积影响。
随着数据采集越来越自动化,很多原本看似横截面的数据也会带上时间戳(timestamp)。订单、点击、车辆轨迹、课堂表现、设备日志和 API 调用记录都天然包含时间。是否把它们作为时间序列处理,取决于我们是否关心“过去如何影响现在和未来”。
| 问题类型 | 典型输入 | 典型输出 | 关键区别 |
|---|---|---|---|
| Prediction | 学生特征、用户画像、产品属性 | 成绩类别、是否购买、是否违约 | 样本之间通常可近似独立 |
| Forecasting | 历史观测、滞后值(lagged values)、时间特征、外生变量 | 未来一期或多期数值 | 样本按时间排列,前后观测通常相关 |
什么决定可预测性¶
一个问题是否容易预测,通常取决于四个条件。
第一,目标是否存在稳定机制。彩票号码之间近似独立,过去号码对下一期开奖帮助很小;用电量、零售销量和交通流量往往存在季节性、惯性或制度安排,历史信息更可能有用。
彩票例子特别适合提醒我们区分“看起来有图形”和“真的可预测”。研究历史开奖分布、画折线或寻找所谓冷热号,并不会改变下一期开奖的概率。如果只是为了娱乐,可以避开很多人偏好的数字,减少中奖后和别人平分奖金的可能;但这不会提高中奖概率本身。预测必须来自可利用的关联,而不是来自复杂图形带来的心理安慰。
第二,我们是否能观察到关键影响因素。新能源电力需求可能受天气、政策、价格和产业活动影响;保研结果可能受课程成绩、科研经历、排名和综合表现影响。如果这些变量完全缺失,模型只能从历史序列中猜测。
第三,是否有足够的数据支持预测。数据不只是样本数量,还包括频率、质量、覆盖周期和外部变量。一个小学生未来能否考上某所大学,很难在第一天上学时判断;但到了高三,长期成绩、考试排名和学习状态已经形成大量历史信息,预测依据就更充分。
第四,未来与过去是否仍然相关。新冠后出境游恢复这类问题,历史数据的参考价值会下降,因为未来结构已经改变。但这并不意味着完全不能预测:航班运力、酒店预订、手机位置、签证政策和旅游搜索等相关信号,仍可能为恢复节奏提供线索。
这四个条件可以压缩成一句话:预测要求未来和过去之间存在可以学习的联系,并且我们能观察到足够多的相关信息。如果关键机制不可见、样本太少、未来制度发生突变,模型即使在历史上拟合得很好,也可能只是把过去画得很漂亮。
时间序列的基本特征¶
时间序列预测关心的是按时间排列的数据。与普通横截面数据相比,它最重要的特点是相邻观测往往不独立。今天的销量、需求或价格,通常与昨天、上周、去年同月有关。
常见特征包括:
趋势(trend):序列长期上升或下降,例如用户数持续增长。
季节性(seasonality):固定周期内重复出现的模式,例如节假日销售高峰。
自相关(autocorrelation):当前值与过去值之间的相关性,例如本月需求受上月需求影响。
异常(anomaly)与结构变化(structural change):促销、政策、疫情或供应链中断造成的突然变化。
很多特征可以先从图形直观看到,再转化为可计算指标。自动售货机或快递柜中的饮水需求可能有夏季高、冬季低的季节性,也可能有上午、下午和晚上不同的小时周期。用电量可能同时包含季度、月度、周度和日内周期。趋势可以通过移动平均(moving average)等简单方法提取:固定一个窗口,逐步向前滑动并计算局部平均,就能看到比原始波动更平滑的长期方向。移动平均不同于对所有历史值求一个总平均;总平均只给出一条水平线,移动平均则保留了序列随时间变化的方向。
季节性也不只是“每年重复一次”。企业用电可能有季度周期、月末冲业绩带来的月度周期、周五提交任务带来的周周期,以及白天和夜晚的日内周期。英国足球比赛结束后,大量家庭同时烧水喝茶,会给电网带来短时负荷冲击;类似地,如果大量用户同时关灯再开灯,看起来是节能活动,实际上可能对电网造成突发压力。预测这些场景时,模型不仅要知道有周期,还要知道周期发生在哪个时间尺度、会不会被群体行为放大。
“昨天和今天的学习状态”可以用来解释滞后特征:如果今天的表现和昨天、前天、过去五周都有关系,那么过去值就可以被重新组织成预测特征。这也是时间序列预测与一般回归问题的一个重要连接点。
用符号写就是:模型可以把 、 乃至过去多期状态重新组织成特征,用历史依赖解释当前和未来。时间序列预测并不是凭空预测未来,而是在已有信息集中寻找可重复的动态关系。
股票收益率也是这个思想的例子。现实市场中很难找到一个单独变量解释价格波动,新闻、交易行为、情绪和制度约束都会混在一起。与其假设已经找到了全部原因,不如先把价格或收益看成时间相依的数据,研究波动、自相关、异常和外部冲击如何沿时间传播。时间序列方法提供的是一种从时间维度理解复杂系统的方式。
什么是好的预测¶
好的预测不是偶尔一次猜中,而是在可重复的评价中稳定表现良好。只说“我们昨天预测今天股票会涨,而且真的涨了”,证据很弱;如果一个策略在许多时间段、许多资产和许多市场环境中都表现稳定,才更接近可用预测。
我们在这里强调几个朴素但重要的原则:
预测要在大量数据上表现优异。
多条时间序列之间可以交互学习,提升整体预测精度。
历史数据不足时,需要主动创造或补充可用数据。
速度是现代商业预测的重要竞争力。
长期预测通常比短期预测更难,因为误差会逐步累积。
多序列交互学习(multi-series learning)在商业中尤其重要。一个全新产品没有自己的历史销量,但可以参考相似产品、竞品、配套产品和共同购买关系。一个区域需求不稳定,也可以借助其他地区、其他品类和外部变量。预测不一定只盯着一条序列,而是要在更大的数据集合中寻找相似结构。
例如尚未上市的 iPhone 18 没有自身历史销量,但并不等于完全没有预测依据。系统可以参考上一代 iPhone、同生态产品、竞品发布节奏、老用户换机周期、配件购买关系和相似地区的消费结构。预测系统要学习的不是“这个产品过去卖了多少”,而是“与它相似、竞争或共生的对象过去如何变化”。这也是现代多序列预测与传统单序列外推的重要区别。
速度同样是预测质量的一部分。电商平台可能需要每天为成千上万种商品和地区生成补货预测;如果模型太慢,即使误差较低,也可能错过补货、排产或调度窗口。阿里巴巴 3C 预测就是典型场景:系统可能要在夜间为几万类核心商品预测第二天各地需求,例如海淀区某类联想笔记本明天需要多少库存。低估会造成缺货和用户体验下降,高估会占用现金流和仓储空间。因此,评价预测时不要只问“这一次准不准”,还要问:是否在多个时间段、多个序列、多个预测步长上稳定?是否比简单基准模型更好?是否能及时生成,供业务系统使用?
预测与不确定性¶
未来永远无法完全知道,所以预测不应只给一个点估计。更完整的预测应当讨论不确定性,例如预测区间(prediction interval)、情景分析(scenario analysis)或概率分布(probability distribution);概率预测的评价也需要使用鼓励诚实报告分布的评分规则(scoring rule)Gneiting & Raftery, 2007。二十四节气给出日期规律,同时承认前后可能相差一两天;现代预测也应明确误差范围,而不是把一个数字包装成确定事实。
五个专家可能给出五种旅游恢复预测,问题不是简单选择谁“看起来更专业”,而是比较他们的假设、数据、误差记录和决策后果。
在商业应用中,不确定性常常比点预测本身更重要。库存不足和库存过剩的成本不同;产能闲置和产能短缺的风险不同;金融预测中高估和低估可能导致完全不同的交易行为。
预测步长越远,不确定性通常越大。一个孩子今天考了 90 分,预测明天或下周的学习状态还有一定依据;要在一年级时预测十二年后的高考结果,就几乎没有足够信息。冰川变化、气候风险和长期公共健康预测也是类似问题:远期结果不只由历史趋势决定,还会被排放路径、政策选择、技术变化和社会行为改变。青少年近视项目也说明了这一点:如果把 1983-2023 年的近视率趋势直接外推到 2050 年,可能得到“几乎所有高中生都会近视”的荒谬结论。历史趋势本身可能是真的,但社会会调整教育、户外活动和用眼习惯,远期预测必须把机制变化和情景不确定性纳入考虑。
现代时间序列预测¶
现代时间序列预测是统计思维、计算机工程和人工智能的结合。统计思维帮助我们定义目标、误差和不确定性;工程能力帮助我们处理大规模数据、自动化建模和部署;人工智能方法让模型能够从复杂、多源、高维数据中学习结构。
亚马逊和 Google 的预测实践说明,预测已经从单个模型问题变成平台问题。企业需要同时处理大量产品、地区、资源和时间粒度。模型不只是算法,还包括数据管道、特征工程、自动评估、人工干预和业务系统集成。
这也是本课程从传统预测转向 AI 预测的原因。当数据规模和模式复杂度上升时,单靠人眼观察趋势或专家经验已经不够。AI 的价值不是替代所有统计思想,而是帮助我们在更大规模、更复杂的数据中自动发现特征、比较模型、补充外部信息,并把预测更快地接入业务流程。
所以,预测既是 science,也是 art。Science 体现在可检验的数据、模型、误差和流程;art 体现在对假设、场景、外部信息和决策后果的判断。好的预测不是声音更大、模型更复杂或专家头衔更响,而是能用证据说明它为什么可信、什么时候会失效、怎样帮助行动。
小结¶
预测基础可以归纳为一句话:用过去和现在的信息,构造一个可以被检验的未来估计。学习预测时,不要急着选择最复杂的模型。先明确目标变量、预测步长、可用数据、可预测性来源和误差评价方式,再讨论模型。
练习¶
找一个你熟悉的业务场景,说明它更像 prediction 还是 forecasting。
用学生期末成绩和每日测验成绩两个例子,比较横截面 prediction 与时间序列 forecasting。
对自动售货机饮水需求或用电量序列,指出可能存在的趋势、季节性、自相关和异常因素。
设计一个评价方案,说明如何判断一个 12 期预测是否比简单基准更好。
解释为什么彩票号码预测和库存需求预测的可预测性不同。
讨论一个预测很准但决策仍然失败的例子,解释失败可能来自哪里。
参考文献¶
- Hyndman, R. J., & Athanasopoulos, G. (2021). 预测:方法与实践. OTexts. https://otexts.com/fpp3cn/
- Petropoulos, F., Apiletti, D., Assimakopoulos, V., Babai, M. Z., Barrow, D. K., Ben Taieb, S., Bergmeir, C., Bessa, R. J., Bijak, J., Boylan, J. E., Browell, J., Carnevale, C., Castle, J. L., Cirillo, P., Clements, M. P., Cordeiro, C., Cyrino Oliveira, F. L., De Baets, S., Dokumentov, A., … Ziel, F. (2022). Forecasting: Theory and Practice. International Journal of Forecasting, 38(3), 705–871. 10.1016/j.ijforecast.2021.11.001
- Gneiting, T., & Raftery, A. E. (2007). Strictly Proper Scoring Rules, Prediction, and Estimation. Journal of the American Statistical Association, 102(477), 359–378. 10.1198/016214506000001437