Chapter 1: What Is Time Series Forecasting? Core Concepts and Real-World Use Cases
如果你每天早上打开手机查看当天的天气预报,刷电商时看到“你可能还需要”的商品推荐,通勤时用导航软件查看预计到达时间,甚至只是按时收到你常喝的咖啡品牌的到货提醒,你其实已经每天都在和时间序列预测的结果打交道——只是你可能从未意识到这些看似平常的便利背后,是一整套基于历史数据规律挖掘的技术体系在工作。时间序列预测(Time Series Forecasting)是数据科学领域最贴近日常生活的分支之一,它的核心逻辑非常朴素:通过分析事物过去随时间变化的规律,推断它未来的可能走向。和很多人印象中“高深莫测”的人工智能不同,时间序列预测的入门门槛并不高,哪怕你没有任何数据科学背景,只要跟着本书的节奏一步步实践,也能快速掌握这项能解决实际问题的核心技能。
---
什么是时间序列数据?它和普通表格数据有什么本质区别?
要理解时间序列预测,首先需要搞清楚什么是时间序列数据。简单来说,时间序列数据是按照时间先后顺序采集的一系列观测值的集合,它的核心特征是“观测值之间存在时间依赖性”——即当前的数值不仅受自身固有属性影响,还会受到过去数值的影响。
为了帮你更直观地理解,我们可以对比两种看起来相似但本质完全不同的数据集:
- 普通表格数据(横截面数据):比如某一天全国所有奶茶店的销量记录,每一行代表一家店,包含店铺ID、位置、当日销量、当日温度、是否周末等字段。这里的每一家店的销量都是独立的,A店的销量不会影响B店的销量,样本之间没有时间上的依赖关系。
- 时间序列数据:比如某一家奶茶店过去3年每天的销量记录,每一行代表一天,包含日期、当日销量、当日温度、是否周末等字段。这里的今天的销量会和昨天的销量、上周同一天的销量高度相关,观测值按时间顺序排列,存在明显的时间依赖。
> 📌 新手提示:时间序列的频率没有固定限制,你可以按年、季度、月、周、日、小时、分钟甚至毫秒来记录数据,选择频率的核心原则是:它要匹配你的预测目标。比如你要预测每日的奶茶销量,就用日频数据;你要预测电网的每小时负荷,就用小时频数据;如果你要预测高频交易的股价,就需要用到毫秒级的tick数据。
时间序列的四大核心特征
几乎所有的时间序列数据都会包含以下一种或多种特征,识别这些特征是后续建模的基础: 1. 趋势性(Trend):指时间序列在长时间内呈现的持续上升或下降的总体方向。比如过去10年全球平均气温的逐年上升、某奶茶品牌过去5年的月均销量从10万杯增长到50万杯,都属于明显的上升趋势;而传统功能手机的销量过去10年持续下降,就是下降趋势。 2. 季节性(Seasonality):指时间序列在固定时间周期内呈现的重复波动规律,周期的长度是固定的。比如冰淇淋的销量每年夏天达到峰值、冬天跌入低谷,周期为12个月;地铁客流每天早上8-9点达到早高峰、晚上6-7点达到晚高峰,周期为1天;电商平台的销量在每月末、每年618、双十一出现峰值,周期为1个月。季节性的核心是“周期固定、规律可预期”。 3. 周期性(Cyclicity):指时间序列呈现的不固定周期的波动,通常和经济、行业的大周期相关。比如全球经济的扩张和衰退周期大约每5-8年出现一次,波动的长度不固定,也没有严格的规律可预期,这就是周期性。周期性和季节性的核心区别是:季节性的周期是固定的,而周期性的周期是波动的,没有固定的时间间隔。 4. 不规则性(Irregularity/Noise):指无法用趋势、季节、周期解释的随机波动,通常由突发事件导致。比如2022年某城市因为突发疫情封控,当月矿泉水销量突然暴跌80%;某奶茶店因为附近修路,当月销量突然下降了40%,这些都属于不规则性。不规则性是时间序列预测误差的主要来源,也是模型最难捕捉的部分。
我们可以用一个生活中的