1. 什么是一维卷积神经网络(1D-CNN)

1.1 定义与核心思想
1D-CNN 是专门用于处理一维序列数据的卷积网络结构。
卷积核只沿着一个方向滑动(通常是时间轴),从而实现:
- 捕捉局部时间模式(local temporal pattern)
- 建立多尺度感受野(multi-scale receptive field)
- 增加时间维度上的特征组合能力
典型输入格式为:
(batch_size, seq_len, input_dim)
为了使用 PyTorch 的 Conv1d,需要转换为:
(batch_size, channels=input_dim, seq_len)
其中:
- seq_len:时间步长度(如过去 10 天)
- input_dim:每个时间步的特征维度(如传感器数量、指标数量)
2. 1D-CNN 的适用场景
1D-CNN 特别适合以下任务:
✔ 时间序列预测(能源、电力、气象、金融等)
捕捉短期局部模式,如周期、趋势、小范围波动。
✔ 信号处理(语音、振动、加速度)
通过卷积核识别局部频率模式和形态变化。
✔ 多传感器/表格时间序列建模
在工业场景中常用于压力、温度、震动等实时监控数据。
✔ CNN + RNN 的混合架构
CNN 用于特征提取,后接 LSTM/GRU 用于长序列建模。
3. 1D-CNN 的结构解析
1D 卷积结构通常由以下组件组成:
输入 → Conv1d → ReLU → BatchNorm → Pooling → 全连接层输出
多个卷积层堆叠可以扩大网络的有效感受野,使模型能够捕捉更长时间跨度的模式。
核心优势对比 LSTM
| 指标 | 1D-CNN | LSTM/GRU |
|---|---|---|
| 并行计算 | ✔ 强 | ✘ 序列依赖 |
| 训练速度 | 快 | 较慢 |
| 捕捉局部模式 | ✔ 强 | 中等 |
| 长期依赖建模 | 需要堆叠 dilated CNN |

