时序分类:从距离度量到深度神经网络

FreeGuideOnline 最新 2026-06-24

时序分类:从距离度量到深度神经网络

1. 什么是时序分类?

时序分类(Time Series Classification, TSC)是机器学习中的一个重要任务,目标是为一条完整的时间序列分配一个类别标签。这里的“时间序列”指按时间顺序记录的一组观测值,例如心电图(ECG)信号、股票价格走势、传感器读数或人体动作捕捉数据。

与传统的表格数据分类不同,时序数据中顺序和依赖关系携带大量信息——类别的差异往往隐藏在波动的模式、变化的速率或特定形状的出现中。

典型应用场景:

  • 医疗诊断:根据心电图判断心率是否正常。
  • 行为识别:通过可穿戴设备加速度计数据识别走路、跑步或坐下。
  • 工业异常检测:监控机器振动信号判断设备状态。
  • 语音识别:将语音波形片段分类为不同音素。

2. 理解时序数据与分类挑战

在开始构建模型前,先明确两个核心概念:

  • 单变量时序:每个时间点只有一个观测值,例如一支股票每日收盘价。
  • 多变量时序:每个时间点有多个通道/特征,例如智能手机同时采集的x、y、z三轴加速度。

分类任务面临的独特挑战包括:

  • 时间扭曲:同类动作可能发生得快或慢,整体拉伸或压缩。
  • 相位偏移:关键模式在时间轴上的起点不同。
  • 噪声与异常值:传感器抖动或环境干扰造成局部突变。
  • 多尺度模式:关键特征可能出现在不同时间窗口内。

好的分类方法必须能够对齐相似模式,并提取对扭曲、平移不敏感的判别特征。

3. 基于距离度量的传统方法

当数据量较小、可解释性要求高时,基于距离的最近邻分类器(K-Nearest Neighbors, KNN)配合恰当的时序距离度量是非常强大的基线。

3.1 欧氏距离的局限

最直观的想法是逐点计算欧氏距离:

\[ D_{Euclidean}(X, Y) = \sqrt{\sum_{t=1}^{T} (x_t - y_t)^2} \]

它要求两条序列长度必须相同,且对时间轴上的微小错位极其敏感。哪怕序列整体形状相似,只要相位错开一点,欧氏距离就会急剧增大,导致错误分类。

3.2 动态时间规整(DTW)——时序对齐的核心

动态时间规整(Dynamic Time Warping, DTW)通过非线性对齐解决时间扭曲问题。它允许一个序列上的点映射到另一个序列的多个连续点,从而找到最小化累积距离的匹配路径。

DTW 核心思想:

  1. 构造一个 (T \times T) 的局部距离矩阵,元素为 (d(i,j) = |x_i - y_j|)(或平方差)。
  2. 利用动态规划寻找从 ((1,1)) 到 ((T,T)) 的最优规整路径,使得累积距离最小,且路径必须单调递增、连续。
  3. 最终 DTW 距离即为规整路径上的累积距离。

关键改进与变体:

  • 约束窗口(如 Sakoe-Chiba 带或 Itakura 平行四边形):限制规整路径的偏离范围,防止病态对齐并加速计算。
  • DTW with Derivative:不直接使用原始值,而是使用一阶差分,更关注形状而非绝对值。
  • 加权DTW:对不同时间点赋予不同权重。

结合 1-NN 分类器(即找训练集中 DTW 距离最近的样本的标签),DTW-1NN 至今仍是许多时序分类基准测试中的强基线。

3.3 其他常用距离度量

  • 编辑距离(如 ERP、LCSS):基于阈值判断两点是否匹配,对噪声更鲁棒,但需调参。
  • 基于特征的度量:提取全局特征(均值、方差、傅里叶系数等)后,在特征空间使用欧氏距离。这种方法会丢失时间顺序信息,但在某些场合有效。

实践建议: 当数据集较小(每个类别少于几百条)、序列长度中等、类别判别依赖整体形状时,DTW-1NN 往往是首选,且无需训练过程,可解释性强。

4. 基于深度神经网络的现代方法

随着数据规模的增长,深度神经网络能自动学习层次化的判别特征,往往在复杂模式、多变量时序和大数据集上取得最优性能。

4.1 多层感知机(MLP)——朴素起点

直接将整条序列展平为一个向量,输入全连接网络。这种方法忽略了时序结构,将每个时间点视为独立特征,通常效果不佳,仅作对比参照。

4.2 卷积神经网络(CNN)——捕捉局部模式

一维卷积 (Conv1D) 天然适合处理时序,因为卷积核在时间轴上滑动,检测局部形状模式(如峰值、下降沿)。

常见架构模式:

  • 堆叠 Conv1D + 批归一化 + ReLU 激活
  • 全局平均池化(Global Average Pooling)替代全连接层,参数量小、可解释性强。
  • 常用变体:全卷积网络(FCN)残差网络(ResNet)。大量实验表明,一个精心设计的 ResNet 在单变量时序分类中通常可以超越 DTW 基线。

多变量处理: 可以在输入时直接将多变量视作多通道(类似于图像的 RGB 通道),或对每个变量使用独立的卷积流再融合。

4.3 循环神经网络(RNN/LSTM/GRU)——建模长期依赖

RNN 按时间步递归处理序列,维持一个隐状态来记忆过去信息。长短期记忆网络(LSTM)门控循环单元(GRU) 通过门控机制缓解了梯度消失问题,更擅长捕获长期依赖。

分类模式:

  • 通常取最后一个时间步的隐状态作为序列表示,输入分类器。
  • 注意力机制(Attention)可加权所有时间步的隐状态,生成更丰富的上下文表示。

注意点: RNN 训练慢,对超长序列可能仍难捕获整个序列的全局关系,且并行性差。在许多 TSC 任务中,CNN 在速度与精度上更具优势。

4.4 Transformer 与自注意力——全局交互的新范式

Transformer 架构凭借自注意力机制直接建模序列中任意两点之间的关系,完全摒弃了递归,可以并行计算。

时间序列 Transformer 特点:

  • 需要有效的位置编码(可学习 embedding 或正弦编码)来注入时序顺序。
  • 多头自注意力允许模型在不同表示子空间关注不同范围的相关模式。
  • 输出端通常使用一个可学习的分类 token 或对全部时间步输出做平均池化,再连接分类层。

注意: 原始 Transformer 计算复杂度为 (O(L^2)),对超长序列可考虑通过稀疏注意力或分层结构降低开销。在有大量数据时,Transformer 往往表现出色。

4.5 混合模型与集成学习

实际应用中,常结合不同模块的优点:

  • CNN-LSTM:CNN 提取局部特征,LSTM 建模高层时间依赖。
  • LSTM + Attention:强调关键时间步。
  • InceptionTime:使用多尺度卷积核的堆叠 Inception 模块,是公开基准上的强算法。

深度集成通过训练多个具有不同初始化的网络并投票,可进一步提升鲁棒性和准确率。

5. 方法选择指南:距离度量 vs. 深度学习

没有一种方法能统治所有场景,选择需权衡以下因素:

维度 DTW / KNN 深度学习 (CNN/ResNet/Transformer)
数据量 小数据集(每个类几十~几百条) 大数据集(每个类数千条以上)
训练时间 无训练;推断时要扫描全训练集,预测慢 训练耗时,但预测极快
可解释性 可展示对齐路径,直观 需要额外解释工具(如 Grad-CAM)
处理多变量 需独立定义距离(如 dependent DTW) 天然支持多通道
长序列 DTW 计算复杂度 (O(L^2)),长序列压力大 通过池化、注意力等可处理,但注意资源
模式类型 擅长形状匹配、整体轮廓 擅长捕捉隐性、多尺度的组合模式

初始实践路线建议:

  1. 无论问题是什么,都先用 DTW-1NN(配合交叉验证选择窗口大小)建立强基线。
  2. 如果数据量充足,尝试 全卷积网络(FCN)残差网络(ResNet),它们训练稳定,常能获得显著提升。
  3. 若序列包含清晰的长期依赖且数据规模较大,可引入 LSTM/GRUTransformer

6. 总结

时序分类涵盖了从严谨的形状匹配到自动特征学习的广阔方法谱系。基于距离的 DTW 以其无需训练、小样本有效、可解释性强的特点,至今仍是入门和基线的首选。而深度神经网络——尤其是 ResNet 和 Transformer——通过端到端学习,不断刷新大型基准上的性能上限,尤其适合复杂模式和多变量场景。

掌握整个谱系,将使你能够针对不同的数据和业务约束,灵活构建高效、鲁棒的时序分类解决方案。下一步,建议在你感兴趣的领域选取公开数据集(如 UCR/UEA Time Series Archive),从 DTW-1NN 开始实践,逐步尝试 FCN 和 ResNet,亲身感受不同方法的特性。