跳到主内容
快讯直播
AI智模界
AI 词典

时间序列平稳性:假设一破,模型全歪

平稳性(Stationarity)指的是一个时间序列的统计特征不会随着时间平移而改变:无论是今天看、下个月看,还是三年后看,它的均值、方差以及“它和自己的相关性”都保持不变。

打个比方

把序列想象成一根在水平地面上抖动的绳子,比如恒温房间里的温度读数、稳定电路上的电压噪声。它的抖动幅度、抖动节奏都有规律,因此你可以用“过去怎么抖”去推测“接下来会怎么抖”。

非平稳的序列,则是把这根绳子挂在一部正在上升的电梯上:抖动本身可能没变,但整体高度在变。这时,你没法用“过去抖了多少”去猜“下一分钟它会出现在哪一层”,因为你手里数据的均值和方差本身就在漂移。

具体一点:一家电商的日订单量,平时几百单,大促期间几千单,全年还在增长。如果你把这个序列直接喂给 ARIMA(AI 词典:Autoregressive">Autoregressive Integrated Moving Average,自回归积分滑动平均)这类模型,它拟合出的“均值”其实是那段历史的平均水位,对未来没有指导意义。这种时候,模型并不是预测得不准;相反,它赖以成立的假设从一开始就不成立。

三条要求和两个容易混淆的概念

工程上常用的是弱平稳(wide-sense stationarity),它只要求三件事:均值是常数;方差是常数,即波动不会随时间越来越大;任意两个时刻的协方差只跟时间间隔有关,跟“具体是哪一天”无关。更严格的严平稳(strict stationarity)要求整个联合分布不随时间平移而改变,实践中很少真的去验证。

形态均值方差常见处理
平稳恒定恒定可以直接建模
趋势(trend)随时间变通常恒定差分、拟合趋势项
季节性(seasonality)周期性起伏通常恒定季节差分
异方差(heteroskedasticity)可能恒定随时间变对数或 Box-Cox 变换

几个常见的混淆点:白噪声(white noise)是平稳的特例,它额外要求没有自相关;平稳不等于“没有趋势”,去完趋势后可能还剩季节性和方差漂移;平稳也不等于“可预测”,它只保证规律不随时间改变,不保证这个规律有信息量。

把非平稳序列变平稳的常用手段是差分(differencing),差几次就是 ARIMA 里那个 I。判断要差几次,可以看图,也可以用单位根检验(unit root test,常被提到的是 ADF,Augmented Dickey-Fuller)。注意 ADF 的原假设是“存在单位根、不平稳”,p 值小才是拒绝原假设,很多人第一次用时会记反。

对实际工作的意义

只要涉及时间维度的建模,平稳性都是第一个要确认的前提。做回归,两条各自向上爬的曲线能轻松拟合出很高的相关性,这是典型的伪回归(spurious regression);做深度学习,用全量数据的均值方差做归一化,等于把未来的信息泄漏进了训练集,通常的做法是改用滚动窗口统计量;做线上监控,输入分布的缓慢漂移会让模型指标悄悄劣化,而监控这类漂移本质上也是在看平稳性。

最省事的第一步永远是:画图,并叠加滚动均值和滚动标准差。如果这两条线明显在移动或张开,就先别急着调模型。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。