《给第一次学模型的小白:时间序列预测全模型通俗演义》 目录《准备工作时间序列 神经网络零件》一、MLP 多层感知机——最直白但“脸盲”1.1 生活类比1.2 它到底怎么做的1.3 为什么说“致命短板分不清先后顺序”二、RNN 循环神经网络——有记忆但像“传话游戏”2.1 生活类比2.2 核心思想2.3 致命缺陷梯度消失2.4 数模忠告三、LSTM 长短期记忆网络——给记忆装上三道“闸门”3.1 通俗原理3.2 为什么它解决了梯度消失3.3 特点四、GRU——LSTM 的精简高效版4.1 通俗原理4.2 对比 LSTM4.3 使用建议五、Seq2Seq Attention——为多步预测而生5.1 为什么需要它5.2 编码器Encoder5.3 解码器Decoder5.4 Attention 注意力机制提分神器六、TCN 时序卷积网络——并行高速抓特征6.1 为什么 LSTM/GRU 的串行慢6.2 核心技巧因果卷积 膨胀卷积6.3 优点6.4 缺点七、Transformer / Informer / Autoformer——超长时序的天花板7.1 核心创新自注意力Self-Attention7.2 例子7.3 为什么要变体7.4 Informer7.5 Autoformer八、N-BEATS 和 DeepAR——另辟蹊径的利器8.1 N-BEATS纯全连接专门单变量8.2 DeepAR概率预测高分杀招九、总结小白如何记忆和使用这些模型《准备工作时间序列 神经网络零件》1 时间序列数据就是按照时间顺序记下来的数字。比如每 15 分钟的电网负荷、每日销售额、每小时的温度。格式就是时间点1数值, 时间点2数值, ……, 时间点 t 数值2滑动窗口极其重要预测的时候我们不会把全部历史都扔进去而是截取一段“回看窗口”去预测“未来一段”。比如用过去 24 小时的负荷预测未来 12 小时的负荷。look_back 24回看步长predict_step 12预测步长这是所有时序预测的通用操作可以理解为我只能看过去连续一段的录像然后猜接下来发生什么。3神经元、权重和偏置一个神经元就是个最简单的计算单元接收几个数字加权求和再加个偏置最后通过“开关”激活函数输出一个新数字。权重 W 和偏置 b就是模型的记忆训练就是反复调整这些数字让预测变准。4激活函数Sigmoid把数字压到 0~1 之间适合当“门”的控制信号。0 代表关1 代表开。Tanh把数字压到 -1~1 之间常用来生成记忆内容或输出。5逐元素相乘不是矩阵乘法是两个形状一样的矩阵相同位置的数字两两相乘。这种操作在门控里面频繁出现用来决定“保留多少、丢掉多少”。有了这些基础我们就可以把每个模型剖开来看。一、MLP 多层感知机——最直白但“脸盲”1.1 生活类比想象你把 24 张照片一次性扔进一个黑箱机器机器不看照片顺序只看所有照片的整体色彩分布然后猜下一张照片是什么。即使你把第 1 张和第 24 张对调机器的猜测几乎不变——因为它根本不知道“先后”这个概念。1.2 它到底怎么做的把过去 24 小时的数值直接“摊平”成一串长向量塞进网络输入层 → 隐藏层 1 → 隐藏层 2 → 输出未来 12 小时的预测值。整个过程没有任何按时间处理的结构仅仅是一些矩阵乘法和激活函数的叠加。如图所示1.3 为什么说“致命短板分不清先后顺序”因为输入的顺序被彻底忽略了。时间序列的核心就是趋势和先后关联MLP 完全无视这一点。优点代码简单训练飞快几乎不会报错。特别适合做比赛的“基线模型”用来证明你后面复杂模型确实比最简单的好。缺点没有时间观念长序列预测一塌糊涂。什么时候用极短期的预测比如只预测下一步或者数据量极小时可以作为保底方案。二、RNN 循环神经网络——有记忆但像“传话游戏”2.1 生活类比你正在一部连续剧每看一集就根据之前记得的剧情来猜下一集。看第1集 → 生成记忆看第2集 →带着第1集的记忆一起看更新记忆看第3集 →带着前2集的记忆继续更新……这就叫“按时间顺序一步一步读取”。2.2 核心思想RNN 的公式里总有一个“隐藏状态 h”如图的Hidden Layer这个 h 就是记忆。每个时间步新输入与旧记忆结合产生新记忆然后再输出。所以它天然就能捕捉时间先后信息。2.3 致命缺陷梯度消失还是用传话游戏举例30 天前的一句话经过上千个人悄悄话传递到最后已完全走样再也无法影响今天的预测。在数学上早期数据的梯度在反向传播时被连续相乘变得极小模型根本学不到很久以前的信息。2.4 数模忠告比赛千万别直接上原生 RNN直接跳到它的改进版 LSTM 或 GRU。三、LSTM 长短期记忆网络——给记忆装上三道“闸门”3.1 通俗原理LSTM 不光有短时记忆 h还有一个专门运载长期记忆的“细胞状态 C”。它设计了三个门来控制记忆遗忘门决定旧记忆里哪些要丢掉。就像忘记上周无关的琐碎小事。输入门挑选此刻重要的新信息写入长期记忆 C。输出门根据当前情况从长期记忆 C 里挑选此刻需要输出的部分生成短时记忆并用来做预测。门的工作原理就是Sigmoid 输出 0~1 的信号与向量逐元素相乘0 代表“完全丢掉”1 代表“完全保留”。3.2 为什么它解决了梯度消失因为细胞状态 C 在时间上可以像一条高速公路梯度可以几乎无损地往回传几百步。重要的长期记忆被“锁”住不被反复冲刷稀释。这就是为什么 LSTM 能记住很久以前的关键信息。3.3 特点三个门参数多训练稍慢。在复杂、数据量足够的情况下精度上限高。曾是时序预测绝对的主力。四、GRU——LSTM 的精简高效版4.1 通俗原理工程师发现遗忘门和输入门有点重复就把它们合并成一个“更新门”再加上一个“重置门”。更新门一次性决定“保留多少旧记忆纳入多少新信息”。重置门决定“在生成新候选记忆之前先丢掉多少过时的旧记忆”。相当于把 LSTM 的三个开关简化成两个开关细胞状态和隐藏状态也合并了结构更轻便。4.2 对比 LSTMLSTM3 个门参数多训练更耗时但复杂数据集可能上限更高。GRU2 个门参数减少近一半训练更快在绝大多数普通时序任务上效果几乎和 LSTM 一样甚至有时更好。4.3 使用建议如果数据不是特别极端从 GRU 开始往往性价比最高。比赛里常把 LSTM 和 GRU 都试一下择优选择。五、Seq2Seq Attention——为多步预测而生5.1 为什么需要它前面说的 LSTM/GRU 如果直接输出未来 12 步有两种简单做法一次输出 12 个值效果一般一步一步递推用上一步预测值作为下一步输入容易误差累积。Seq2Seq 提供了一种更优雅的“编码-解码”框架专门用于输入一个序列输出另一个序列。5.2 编码器Encoder一个 LSTM 或 GRU 把过去 24 小时的数据全部读完最后打包成一个“上下文向量”记忆总结。5.3 解码器Decoder另一个 LSTM以上下文向量为起点逐步生成未来 12 小时的值。每生成一步都可以把前一步预测当作输入维持时序连贯性。5.4 Attention 注意力机制提分神器注意力机制是一种让模型聚焦于输入中重要信息的技术通过加权方式突出关键特征从而提升模型性能。单纯把全部记忆压成一个固定向量长序列时会丢失细节。Attention 让解码器在生成未来第 k 步时可以自动回看编码器所有时间步的记忆并给重要的时刻打高分。例子预测国庆节用电量模型会自己学会重点看去年国庆那几天的数据而忽略普通工作日。这种动态加权极大地提升了长序列多步预测的精度。六、TCN 时序卷积网络——并行高速抓特征6.1 为什么 LSTM/GRU 的串行慢LSTM 必须按时间顺序从第1步算到第24步每一步都等上一步完成无法并行速度受限。TCN 说我用卷积也能抓时间依赖而且能同时算所有时间点。6.2 核心技巧因果卷积 膨胀卷积因果卷积严格保证在计算 t 时刻输出时绝不会偷看 t1 及以后的未来数据。膨胀空洞卷积通过在卷积核里跳着采样让感受野指数级增大。比如膨胀系数 d4卷积核会取第 1, 5, 9, 13 时刻的数据一步就跨过很长时间间隔。6.3 优点所有时间步可以并行计算训练速度远快于 LSTM/GRU。中等长度的时序预测效果优秀结构稳定。6.4 缺点对于上千步的超长序列它的感受野虽大但建模全局依赖仍不如自注意力机制。七、Transformer / Informer / Autoformer——超长时序的天花板7.1 核心创新自注意力Self-Attention不再需要一步一步传递记忆而是让每个时间点直接和所有时间点建立联系。计算“查询 Query、键 Key、值 Value”通过注意力分数矩阵每个位置都可以从整个序列里提取上下文。7.2 例子预测 8 月 8 日用电量自注意力会一下子参考去年 8 月 8 日、上月 8 日、上周 8 日的数据不受距离限制。7.3 为什么要变体原版 Transformer 计算量和内存消耗都是 O(L²)L 是序列长度几千步时直接爆显存。7.4 Informer针对长序列它利用注意力分数的稀疏性——其实只有少数时间点起关键作用。通过稀疏注意力机制大幅降低计算开销让几千步超长时序变得可行。7.5 Autoformer专门为带有明显周期性如每天峰谷、四季变化的序列设计。它主张把时间序列拆成三部分长期趋势周期波动随机噪声用深度分解模块分别预测再合并在电力负荷、气象等强周期数据上表现极佳。⚠️ 笔记忠告样本少于 1500 条千万不要上手 Transformer 类模型。它们参数多、易过拟合训练集效果完美测试集一塌糊涂。八、N-BEATS 和 DeepAR——另辟蹊径的利器8.1 N-BEATS纯全连接专门单变量结构像一个人工拆解趋势的流水线第一个块去拟合整体“上涨/下跌”趋势拟合完把这个趋势从原序列里减掉残差交给下一个块下一个块去拟合每天的周期性起伏再交给下一个块抓残余的噪声……最后把所有块的预测叠加起来。它完全不使用 RNN 或自注意力只靠全连接层和特殊的残差连接。适合场景只有一条时序曲线比如单条每日用电量、单品种销量预测往往效果惊人。8.2 DeepAR概率预测高分杀招普通模型只会输出一个固定数值“明天负荷 130kW”。DeepAR 不输出定值而是预测一个高斯分布的参数均值 μ 和标准差 σ。训练时使用高斯对数似然损失让模型学习数据的波动范围。预测时你不仅得到期望值还能直接得到95% 置信区间比如“负荷大概率在 125~135 之间”。对比赛的价值涉及库存规划、风险预警、灾害评估的赛题加入置信区间直接拉高论文深度。评委眼前一亮。九、总结小白如何记忆和使用这些模型模型一句话记忆法推荐使用场景MLP摊平即扔无视顺序基线对照、极短预测RNN按顺序读但记忆越传越丢不要用直接学 LSTM/GRULSTM三道门锁住长期记忆复杂长时间序列精度优GRU两道门更轻更快大多数场景效果≈LSTM速度更快Seq2SeqAttn编码读取解码输出注意力自动找重点多步预测比如预测未来12小时/天TCN膨胀卷积并行抓远距离关系需要训练快、中等长度序列Transformer全连接全局视野但吃数据大数据超长序列要求最高精度Informer注意力精简化专治几千步长序超长时序预测Autoformer趋势周期分解对季节周期极度敏感强周期数据如负荷、气温N-BEATS逐块扣趋势、周期、噪声纯 MLP 结构单变量清晰周期序列DeepAR输出分布和置信区间不是单点值需要概率预测、风险量化的任务