赵煜的时序建模学习手札——三种路线概览(统计学/机器学习/深度学习)

时序建模属实是一个令人困惑的抽象概念,因为它被不分场合的混用 (统计学、机器学习、深度学习),术语定义也较为模糊。

1、什么是时序建模?

时序建模就是处理带有时间顺序的数据,并且利用时间顺序处理问题(预测、分类和异常检测)。

需要满足的关键特征(满足以下几点审稿人就很难攻击你的工作不是时序建模):

  • 数据点之间不是独立存在的
  • 顺序很重要
  • 存在时间依赖关系

2、三种时序建模

时序建模主要分为三种:统计学、机器学习和深度学习。
2.1 统计学

这是最经典的时序建模,关注统计规律:自回归模型(AR)、移动平均模型(MA)、ARIMA和状态空间模型。

特点:参数少,可解释性强,适合线性关系
2.2 机器学习

引入更多特征工程和传统算法,将时序问题转化为监督学习问题。例如:特征工程 (提取滞后特征、滑动窗口统计、季节性特征)、算法(线性回归、XGBoost/LightGBM、SVM)

特点:需要大量特征工程,非线性能力有限
2.3 深度学习

能够进一步的处理更加复杂的非线性问题(其实2.1~2.3也就是一个非线性应对能力增长的过程,从2.1统计学的线性回归,到2.3的非线性模型)例如:RNN/LSTM/GRU、TCN、Tranformer

时序建模的核心任务类型

cpp 复制代码
时序建模任务
├── 预测任务(最常见)
│   ├── 单步预测:预测下一个时间点
│   ├── 多步预测:预测未来多个时间点
│   ├── 序列到序列:输入序列 → 输出序列
│   └── 滚动预测:不断用新观测值更新预测
│
├── 分类任务
│   ├── 序列分类:整条时间序列的类别(如心电图分类)
│   └── 时间点分类:每个时间点的类别(如动作识别)
│
├── 异常检测
│   ├── 点异常:单个时间点的异常
│   └── 集体异常:连续时间段的异常
│
└── 生成任务
    ├── 数据增强:生成类似的时间序列
    └── 补全任务:填补缺失的时间点

实际项目中的时序建模流程

cpp 复制代码
1. 问题定义
   ↓
2. 数据探索和预处理
   │   - 处理缺失值
   │   - 平稳性检验
   │   - 季节性分析
   ↓
3. 构建监督学习数据集
   │   - 创建滞后特征
   │   - 定义时间窗口
   │   - 划分训练/验证/测试集(按时间顺序!)
   ↓
4. 模型选择
   │   - 简单任务:传统方法(ARIMA)
   │   - 中等复杂度:树模型(XGBoost)
   │   - 复杂序列:深度学习(LSTM/Transformer)
   ↓
5. 模型训练和评估
   │   - 使用时间序列交叉验证
   │   - 评估指标:MAE, RMSE, MAPE
   ↓
6. 部署和监控

后记

本人在摸索学习的过程中踩过不少奇奇怪怪的坑,大部分都是自己一厢情愿和固有认知导致的左脚绊右脚,例如:

时序建模不仅仅是预测未来的曲线走向,还能完成其他任务;深度学习不一定比统计学好,例如数据量不足和规律明显时就别硬上(造创新点不算);注意避免数据泄露让代码陪着自己骗自己(哈哈);RNN/LSTM/GRU这几个卧龙凤雏是一起的,Transformer和他们不一样。

相关推荐
Rocky Ding*2 小时前
深入浅出GroundingPI技术解析:精确空间感知如何迁移到机器人动作
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·具身智能
ZhengEnCi3 小时前
正样本几万、负样本个位数:极端类别不平衡下怎么训模型(全文可跑)
深度学习
布吉岛的石头4 小时前
Java 程序员第 50 阶段13:对齐税 alignment tax 是什么
人工智能·深度学习·transformer
米饭是菜qy6 小时前
深度学习Transformer详细介绍
人工智能·深度学习·transformer
智码看视界6 小时前
深度学习:生成对抗网络 GAN 原理与图像生成应用
深度学习·生成对抗网络·gan·wgan·图像生成·dcgan·stylegan
eric-sjq6 小时前
小思框架 · 30M 级长上下文新架构对比技术报告
人工智能·python·深度学习·语言模型
无所畏俱的老尹6 小时前
OpenAI 等支持 robots.txt 共享 AI 训练偏好信号:policy token 一次声明多厂商,落地仍待实现
人工智能·深度学习·机器学习·aigc
服务器硬件项目经理7 小时前
《超节点修仙录》· 第一卷·炼气期【第04话】 超节点 vs 普通服务器——不就是多插了几张卡吗?
运维·服务器·人工智能·嵌入式硬件·深度学习·机器学习
tellmewhoisi8 小时前
深度学习28:PyTorch:参数更新方法(AdaGrad和RMSProp)
人工智能·pytorch·深度学习