* 英文名:Entropy-enhanced Long Short-Term Memory
* 中文名:熵增强长短期记忆网络
EntropyLSTM 是在传统 LSTM(Long Short-Term Memory,长短期记忆网络)的基础上,引入信息熵(Entropy)作为额外特征的序列预测模型。它的核心思想是:在时间序列建模中,不仅利用过去数据的时间依赖性,还利用序列的不确定性信息(熵)来提升预测的准确性和稳健性。
基于基础LSTM框架,引入熵值计算(如交叉熵、纠缠熵)优化模型,聚焦解决序列数据中特征冗余、依赖捕捉不精准的问题,常见于时间序列预测、金融数据分析等场景。
1. 保留LSTM核心结构:沿用输入门、遗忘门、输出门及细胞状态,确保长序列长期依赖捕捉能力。
2. 熵值优化机制:通过计算数据熵筛选关键特征,过滤冗余信息,同时用熵相关损失函数调整模型参数,加速收敛、减少计算冗余。
3. 适配复杂场景:针对混沌时间序列、金融时序等复杂数据,通过熵结构强化短期非线性特征学习,平衡长期记忆与短期细节捕捉。
4. LSTM 机制:捕捉序列中长期和短期依赖关系。
5. 熵特征增强:计算输入序列的局部熵或全局熵,用作额外输入,让模型对不确定性信息敏感,从而更好地做预测。
* $(f_t)$:遗忘门输出(Forget Gate)
* $(\sigma)$:Sigmoid 激活函数
* $(W_f)$:遗忘门权重矩阵
* $(h_{t-1})$:上一时刻隐藏状态
* $(x_t)$:当前输入
* $(b_f)$:偏置
--------------------------------------------------------------------------------
* $(i_t)$:输入门输出(Input Gate)
* $(\tilde{C}_t)$:候选记忆单元
* $(W_i, W_C)$:权重矩阵
* $(b_i, b_C)$:偏置
--------------------------------------------------------------------------------
* $(C_t)$:当前记忆单元
* $(\odot)$:逐元素乘法
--------------------------------------------------------------------------------
* $(o_t)$:输出门
* $(h_t)$:隐藏状态输出
--------------------------------------------------------------------------------
信息熵用于衡量序列的不确定性
* $(H(X))$:序列 $(X)$ 的熵
* $(p(x_i))$:元素 $(x_i)$ 的出现概率
* $(n)$:序列中可能的不同元素个数
--------------------------------------------------------------------------------
将熵作为额外特征输入到 LSTM
* $(x'_t)$:增强后的输入
* $(H(X_{t-k:t}))$:最近 $(k)$ 个时间步的熵
--------------------------------------------------------------------------------
| 参数名 | 描述 | 值范围 | 默认值 | 建议值 |
|---|---|---|---|---|
| learning_rate | 学习率 | - | - | - |
| sequence_length | 序列长度 | - | - | - |
1. 数据预处理:对序列进行归一化、滑动窗口切分。
2. 熵计算:统计每个窗口的概率分布,计算熵值。
3. 输入增强:将熵值加入每个时间步的输入特征。
4. LSTM 处理:利用 LSTM 捕捉时间依赖性。
5. 预测输出:最后通过全连接层或 softmax 输出预测值。
• 特征筛选更高效:熵值能精准剔除无用特征,降低模型计算成本,适配大规模时序数据。
• 预测精度更高:在金融股价、混沌时序等任务中,比基础LSTM准确率更优,收敛速度更快。
• 场景适配性强:可灵活结合不同熵计算方式,适配金融、气象、交通等多类复杂序列任务。
• 提升预测准确性:熵特征增强了对不确定性数据的识别能力。
• 适应非平稳序列:在序列变化大、噪声高时比普通 LSTM 更稳健。
• 可解释性增强:通过熵可以理解模型对高/低不确定性数据的敏感程度。
• 多步预测能力:结合 LSTM 的长短期记忆能力,可做单步或多步预测。
序列为 236、366、599、688、122,预测下一位(第六位数):
1. 窗口划分:使用长度为 3 的滑动窗口:
----* 窗口 1:236、366、599
----* 窗口 2:366、599、688
----* 窗口 3:599、688、122
2. 熵计算:
----* 统计窗口内数字频率,计算熵 (H(X))。
----* 示例:窗口 1 熵 (H_1 = 1.56)、窗口 2 熵 (H_2 = 1.37)、窗口 3 熵 (H_3 = 1.42)
3. 输入特征增强:
----* 窗口 1 输入:[236, 366, 599, H_1]
----* 窗口 2 输入:[366, 599, 688, H_2]
----* 窗口 3 输入:[599, 688, 122, H_3]
4. LSTM 前向传播:
----* 将增强后的输入送入 LSTM,隐藏状态更新
----* 输出最后隐藏状态 (h_t)
5. 输出预测:
----* 全连接层$/softmax$ 输出下一位数字的概率分布
----* 预测概率最大数字为下一位数,比如 预测结果 = 4
6. 作用:
----* 利用熵增强特征,让模型在数字分布不均、重复出现等情况下做出更合理预测。
无