时间序列模型发展历程(第五讲:第二代——机器学习时序模型 | SVR/RF/XGBoost/浅层ANN)

(时间 = 特征工程)

时间序列模型发展历程(第一讲:AR/MA/ARMA)-CSDN博客

时间序列模型发展历程(第二讲:平稳性危机与ARIMA诞生、SARIMA)-CSDN博客

时间序列模型发展历程(第三讲:指数平滑法 / Holt / Holt-Winters)-CSDN博客

时间序列模型发展历程(第四讲:State Space Models)-CSDN博客

目录

一、历史背景:人们开始"厌倦数学假设"

二、这一代模型的核心转变(非常关键)

三、时间是如何被"特征化"的?

常见时间特征

四、SVR:第一个"非线性救星"

[1️⃣ SVR 在干什么?](#1️⃣ SVR 在干什么?)

[2️⃣ SVR 的优势与局限](#2️⃣ SVR 的优势与局限)

[五、Random Forest / XGBoost:树的时代](#五、Random Forest / XGBoost:树的时代)

[1️⃣ 树模型怎么看时间?](#1️⃣ 树模型怎么看时间?)

[2️⃣ 为什么树模型在时序上反而很强?](#2️⃣ 为什么树模型在时序上反而很强?)

[六、浅层 ANN:连接主义的早期尝试](#六、浅层 ANN:连接主义的早期尝试)

[1️⃣ 它们本质是什么?](#1️⃣ 它们本质是什么?)

[2️⃣ 为什么它们没成为"终极解"?](#2️⃣ 为什么它们没成为“终极解”?)

七、这一代模型的哲学总结(非常重要)

[🔥 历史的必然:RNN 的登场](#🔥 历史的必然:RNN 的登场)


一、历史背景:人们开始"厌倦数学假设"

到现在你已经看到,第一代模型有一个共同特点:

  • 强假设(线性、平稳、高斯)

  • 模型结构固定

  • 对异常、非线性非常敏感

现实世界给了统计模型当头一棒:

数据越来越多,世界越来越不干净。

于是一个非常"工程师式"的问题被提出来:

我能不能不理解时间,
只要预测准就行?

这正是第二代模型的精神。


二、这一代模型的核心转变(非常关键)

在这一代里,发生了一件本质性改变

时间,不再被当作"结构",
而是被压扁成"特征"。

数学上你可以理解为:

其中:

  • ϕ(⋅):特征工程

  • f(⋅):通用回归器


三、时间是如何被"特征化"的?

这是理解这一代模型的钥匙。

常见时间特征

  • 滞后值:yt−1,yt−7

  • 滚动统计:mean, std, max

  • 差分

  • 时间编码(hour, weekday)

📌 关键点:

模型本身不"知道"时间,
时间是你手动塞进去的。


四、SVR:第一个"非线性救星"

SVR全称是support vector regression(支持向量回归),是SVM(支持向量机support vector machine)对回归问题的一种运用。SVR通过在数据两侧创建一个"间隔带",对落入间隔带内的样本不计算损失,只对间隔带外的样本计算损失,从而优化模型。

1️⃣ SVR 在干什么?

Support Vector Regression 的核心是:

在高维空间中拟合一个"平坦但容忍误差"的函数

数学形式(概念层面):

📌 时间在哪里?

  • 在输入特征 xt

  • 不在模型结构里


2️⃣ SVR 的优势与局限

优势

  • 强非线性(核技巧)

  • 小样本表现好

局限

  • 对特征极度敏感

  • 不可扩展到大规模

  • 无时间结构感知


五、Random Forest / XGBoost:树的时代

树模型不是时间模型,
它们是"静态函数逼近器"。

时间只是输入的一部分。


1️⃣ 数学定义:树模型到底在学什么?

所有树模型(RF / XGBoost)都在学一个函数:

其中:

  • 特征向量

  • :由树(或树集成)构成的分段常数函数

📌 关键点

f 本身 不依赖时间索引 t

只依赖你"喂进去"的数值。


2️⃣ 时间是怎么进入模型的?(非常关键)

时间只能通过 特征工程 进入:

(1)滞后特征(lag features)

👉 你人为规定一个窗口长度 k


(2)滚动统计量


(3)时间戳特征

📌 注意

时间不是"连续演化的对象",

而是被打碎成了一堆数。

树模型只会问问题:

"某个特征是否大于一个阈值?"

于是:

  • 时间被离散切分

  • 顺序信息消失

📌 一个非常重要的事实:

树模型对"顺序"不敏感,
只对"数值关系"敏感。


3️⃣ 树模型为什么对"顺序"不敏感?(数学原因)

单棵树在做的事情是:

其中:

  • :由一系列

    定义的超矩形区域

  • ​:叶节点预测值

📌 重要结论

树只关心:
"某一维大不大"

而不关心:
"这一维来自哪一时刻"

所以:

  • yt−1,yt−2\]=\[3,1

  • yt−1,yt−2\]=\[1,3

在树眼里只是"不同点",

没有"先后"的概念。


4️⃣ 那为什么它们在时序任务上反而很强?

因为现实世界的很多时序问题,本质并不是"动力系统"

从数学角度看:

树模型擅长拟合:

其中:

  • f:高度非线性

  • 存在阈值效应

  • 条件异方差(variance depends on state)

📌 典型场景:

  • 金融风控(不同区间完全不同机制)

  • 推荐系统(规则 + 非线性交互)

  • 运维告警(if-then 逻辑)

👉 在这些问题中:

"时间顺序"反而不如"状态位置"重要

现实中的很多时序问题:

  • 非线性

  • 异方差

  • 有交互项

树模型:

  • 不怕异常值

  • 不怕尺度变化

  • 自动建交互

👉 在工业界(金融、推荐、运维)
至今仍是主力。


5️⃣ 它们在时间建模谱系中的位置

你可以非常明确地说:

RF / XGBoost

并不建模时间演化,

而是对时间窗口内的状态做条件回归。

这也是为什么:

  • 外推能力弱

  • 长期预测容易崩


六、浅层 ANN(MLP):连接主义的早期尝试

1️⃣ 数学定义:MLP 到底是什么?

一个标准 MLP 学的是:

其中:

  • ​:固定维度输入

  • :参数

  • :非线性激活

📌 关键事实

​ 是一个
无记忆(memoryless)映射


2️⃣ 时间是怎么被处理的?

完全和树一样:靠窗口。

👉 不同点只在于:

  • MLP 是连续函数

  • 树是分段常数函数


3️⃣ 为什么它们学不到"真正的时间"?

从数学上看:

  • 输入维度固定

  • 没有状态 ht

  • 没有递归关系

所以:

它学的是

的映射,

而不是
的动力学。


4️⃣ 长期依赖为什么难?(一句到位)

因为:

所有时间信息都被压缩进了一个静态向量,
而模型不知道哪个维度"更早"。

即便你告诉它:

  • 这是

  • 这是

它也只能通过参数硬记。


5️⃣ 它们失败的"历史必然性"

你现在可以这样总结:

浅层 ANN 在时序建模中失败,

不是因为表达能力不够,

而是因为它们没有"状态"和"时间递归"。

这正是为什么:

👉 RNN 是一次"结构革命",不是调参革命


七、这一代模型的哲学总结(非常重要)

这一代模型,本质是:

第二代机器学习方法将时间序列问题
转化为静态回归问题,
从而牺牲了对系统动态结构的建模能力。

代价是:

  • 时间结构完全外包给工程

  • 无法端到端学习依赖

📌 你现在应该自然地问一句:

有没有一种模型,
既不靠手工特征,
又能自己学时间结构?


🔥 历史的必然:RNN 的登场

这不是巧合,而是逻辑必然

  • State Space 已经告诉我们:

    时间 = 状态演化

  • ML 已经告诉我们:

    非线性很重要

于是下一代模型只做了一件事:

把状态转移函数变成神经网络。

时间序列模型发展历程(第六讲:第三代------深度学习 RNN / LSTM)-CSDN博客

相关推荐
aircrushin15 分钟前
OpenClaw开源生态与AI执行能力的产业化路径
人工智能
是糖糖啊21 分钟前
OpenClaw 从零到一实战指南(飞书接入)
前端·人工智能·后端
踩着两条虫44 分钟前
从设计稿到代码:VTJ.PRO 的 AI 集成系统架构解析
前端·vue.js·人工智能
孤烟1 小时前
吓瘫!我用1行代码攻破公司自研AI权限系统,数据裸奔一整夜(附攻击payload+防御源码)
人工智能·ai编程
哥布林学者1 小时前
高光谱成像(三)主成分分析 PCA
机器学习·高光谱成像
掘金一周1 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了 | 掘金一周 3.5
前端·人工智能·agent
vivo互联网技术2 小时前
ICLR2026 | 视频虚化新突破!Any-to-Bokeh 一键生成电影感连贯效果
人工智能·python·深度学习
OpenBayes贝式计算2 小时前
边看、边听、边说,MiniCPM-0-4.5 全双工全模态模型;Pan-Cancer scRNA-Seq 涵盖三种生物学状态单细胞转录数据集
人工智能·深度学习·机器学习
OpenBayes贝式计算2 小时前
教程上新丨基于500万小时语音数据,Qwen3-TTS实现3秒语音克隆及精细调控
人工智能·深度学习·机器学习