这篇论文的深度学习部分本质是一个端到端的回归预测模型输入过去 20 天的数据输出第 21 天的收盘价。但它的网络结构不是简单的“LSTM 堆叠”而是一个CNN-LSTM-CBAM 三级串行流水线。“CNN负责局部感知与降维升维为系统提供高信噪比的基元特征CBAM基于这些基元进行通道与空间的软性掩码重标定实现特征的精炼与梯度引导LSTM利用其门控记忆单元在精炼后的低熵序列上完成长期时序推理。三者串行实现了从‘原始信号’到‘局部模式’再到‘全局决策’的逐级抽象兼顾了模型的拟合能力与泛化能力与抗噪能力。”1. 数据的“形状”变化这是理解所有模型的基础在做深度学习时你必须清楚张量Tensor的维度。假设我们考虑的特征数量为 F比如开盘价、最高价、最低价、交易量等时间步长为 T20批次大小为 B。输入层(B, T, F)——即 B 个样本每个样本包含连续 20 天的 F 个特征。论文的关键操作他们不是直接把 (B, 20, F) 送进 LSTM而是先用卷积模块CNN提取局部趋势此时数据会经历维度置换Permute变成图像格式 (B, 1, F, T)通道数1高特征数宽时间步这样才能让 CNN 的卷积核在“时间轴”上滑动。2. 第一阶段CNN卷积神经网络在干什么论文提到“使用卷积模块生成每个影响因子的特征图Feature Maps”。目的捕捉极短期的局部依赖比如连续 3 天的“微涨微跌”形态。操作用 1×3 或 3×3 的卷积核在 (F, T) 这个二维平面上滑动。输出CBAM 的输入不是原始数据而是CNN 提取出的特征图Fin。这相当于把原始价格数据“升维”了提炼出了更高维度的局部模式。3. 第二阶段CBAM卷积块注意力模块的数学细节论文公式 7-9CBAM 是这篇论文深度学习部分最精彩的地方它分为两个子模块按顺序执行通道注意力 → 空间注意力。注意这里的“空间”在时间序列中就是指“时间轴”。1. 通道注意力Channel Attention—— 公式 (7)公式$bigmMc\left(F\right)\sigma\left(MLP\left(AvgPool\left(F\right)\right)MLP\left(MaxPool\left(F\right)\right)\right)$它在算什么特征图 F 的维度是 (C, H, W)C 是通道数H 是特征维度W 是时间步。通道注意力要算出 C 个权重每个通道一个告诉模型哪些特征因素比如“交易量”比“开盘价”对预测当前价格更重要。具体步骤对 F 在空间维度H 和 W做平均池化AvgPool得到 Favgc形状 C×1×1这代表每个通道的“全局平均水平”。对 F 在空间维度做最大池化MaxPool得到 Fmaxc形状 C×1×1这代表每个通道的“最显著峰值”。将这两个结果分别送入一个共享的两层全连接网络MLP即公式中的 W0, W1把高维特征压缩再还原学习非线性的通道重要性。将两个 MLP 输出的结果逐元素相加经过 σSigmoid 激活函数输出 0~1 之间的通道权重。最终操作将原始的 F 乘以这个通道权重广播乘法得到加权后的特征 F′。2. 空间注意力Spatial Attention—— 公式 (8) 和 (9)公式$\operatorname{Ms}(F)\sigma(f 7 \times 7([\operatorname{AvgPool}(F) ; \operatorname{MaxPool}(F)]))$它在算什么此时输入变成了经过通道注意力加权后的 F′。空间注意力要算出 (H, W) 维度的权重矩阵告诉模型在过去的 20 天里哪几天比如第 5 天和第 18 天的突变对预测第 21 天最有价值。具体步骤在通道轴Channel axis上做平均池化和最大池化得到两个二维矩阵形状 H×W。将这两个矩阵在通道轴上拼接Concat变成一个 2×H×W 的张量。用一个大卷积核 f7×77×7 卷积去扫描这个拼接图将 2 个通道融合成 1 个通道。经过 Sigmoid输出空间权重图。最终操作将这个空间权重乘以 F′极其重要的时间点会被放大不重要的时间点被抑制。你的学习要点这是注意力机制的精髓——“先看关注什么特征通道再看关注什么时刻空间”。4. 第三阶段LSTM长短期记忆网络接收“净化后”的数据论文特别强调CBAM 筛选出的关键信息才会喂给 LSTM。经过 CBAM 重标定后的特征图 F″会被还原回序列格式 (B, T, Fnew)。送入 LSTM 单元。论文中的公式 (1) ~ (6) 是标准 LSTM 前向传播遗忘门公式 2Ft σ(Wf·[Ht-1, Xt] Bf) —— 决定扔掉多少上一时刻的记忆 Ct-1。如果 Ft 接近 0说明模型认为“前几天的旧趋势不重要了”。输入门公式 1 和 4It σ(Wi·...)C′t tanh(Wc·...) —— 决定当前的哪些新信息 C′t 要写入长期记忆 Ct。细胞状态更新公式 5Ct Ft * Ct-1 It * C′t ——这是 LSTM 最核心的“梯度高速路”。这条路径上没有非线性激活函数只有乘法使得 4 年前的梯度可以无损地传回来彻底解决梯度消失。输出门公式 3 和 6Ot σ(Wo·...)Ht Ot * tanh(Ct) —— 决定当前时刻的输出隐藏状态 Ht。关键时间步设定Time Step 20他们不训练整个 4 年的序列而是每次截取连续的 20 天。这意味着 LSTM 的循环核Recurrent Core只需展开 20 步。多出来的 4 年数据被切分成无数个“20 天片段”作为训练样本。5. 损失函数与训练论文未明说但必然存在的细节论文没有写出 Loss 公式但根据“预测价格”这一回归任务必然使用损失函数Loss均方误差MSE或平均绝对误差MAE。Loss 1/N ∑i1N (P真实,i - P预测,i)2优化器极大概率使用Adam自适应矩估计因为它适合处理非平稳时间序列和大规模参数。归一化Normalization论文图 5 和图 6 的纵坐标是“归一化后的价格”。这是深度学习的铁律——必须对价格进行 Min-Max 归一化或 Z-score 标准化否则 Sigmoid/Tanh 激活函数会饱和梯度直接消失。6. 最关键的架构融合点CNN CBAM LSTM 是如何串联的很多人以为顺序是 LSTM → CBAM但论文第 10 页明确指出“结合长短期记忆神经网络和卷积神经网络并加入 CBAM”。实际的数据流顺序推测如下输入原始多维时间序列 (B, 20, F)。Reshape变形为类似单通道图像 (B, 1, F, 20)。CNN 层滑动卷积提取局部趋势输出 (B, C, F′, 20)C 是卷积核数量F′ 是卷积后的新特征维度。CBAM 通道注意力计算 C 个通道的权重重标定哪个卷积核提取的特征最有价值。CBAM 空间注意力计算 20 个时间步的权重重标定这 20 天里具体哪几天最重要。Reshape 还原将加权后的特征图拍平还原为序列 (B, 20, C×F′)。LSTM 层处理这个“注意力净化过”的 20 步序列输出最后一步的隐藏状态 H20。全连接层Dense将 H20 映射到 1 个神经元输出第 21 天的预测价格。7. 为什么比特币预测误差3.08%大于黄金1.85%从深度学习角度这不是模型结构的问题而是数据本质信息熵的问题比特币波动剧烈方差极大。在归一化后它的标签值第 21 天价格变化范围依然很大。模型在反向传播时梯度震荡剧烈难以收敛到全局最优。黄金走势相对平滑时序自相关性极强。这意味着前 20 天的序列几乎已经锁定了第 21 天的值属于“确定性较高”的回归任务因此 MSE 损失天然更低。8. 这篇论文对初学者最大的启发避坑指南不要直接把原始序列扔进 LSTM这篇论文用 CNN 提取局部特征、用 CBAM 过滤噪音相当于给 LSTM 做了“降噪预处理”。这在信号处理中叫“前端增强”能大幅提升 SOTAState-of-the-art效果。注意力机制CBAM的位置极其讲究它放在 CNN 之后、LSTM 之前。如果放在 LSTM 之后相当于在预测结果上做注意力那就变成“事后解释”了对提升精度帮助不大。时间步长20是经过实验对比选的这提醒我们在时间序列中“记忆窗口”是超参数不能用经验拍板必须做网格搜索Grid Search对比验证集误差。