打开黑盒——用 Excel 硬核拆解 LSTM 的时间记忆魔法
在处理时间序列(比如股票预测、语音识别、文字生成)时,传统的神经网络总是“阅后即焚”,无法记住上下文。于是,LSTM(长短期记忆网络) 诞生了。
很多初学者觉得 LSTM 的图纸就像一团乱麻,什么“门控机制”、“细胞状态”听起来非常抽象。今天,我们不用任何复杂的代码框架,只用最基础的加减乘除,在 Excel 里把 LSTM 算个透彻!
1. 核心概念:传送带与三个门
把 LSTM 想象成一条带有关卡的记忆传送带:
-
细胞状态 (Ct):这就是“记忆传送带”。它从上一个时间步传过来,LSTM 会在上面进行修改(添加或删除记忆),然后传给下一个时间步。
-
隐藏状态 (Ht
):这是当前时间步的“输出面貌”,它不仅会作为结果输出,还会和下一个时刻的输入结合。 -
三个门(Gate):负责拦截和放行信息。本质上,它们就是让输入值通过 Sigmoid 函数(将值压缩到 0 到 1 之间)。如果是 0,就代表“关门/丢弃”;如果是 1,就代表“开门/放行”。
2. 第一步:遗忘门 (Forget Gate, ft
)
目标:决定上一步的旧记忆,我们要忘掉多少?
在 Excel 文件中(E列),我们提取当前的输入 (xt
) 和上一时刻的隐藏状态 (ht-1
),将它们乘以遗忘门权重加上偏置后,套入 Sigmoid 公式:
-

如果算出来是 0.1,说明旧记忆只有 10% 被保留;如果是 0.9,说明 90% 的旧记忆都被保留。
3. 第二步:输入门 (Input Gate,
) 与候选记忆 (
)
目标:决定我们要往传送带上加入什么新记忆?
这里分两部分:
-
准备新素材:通过 Tanh 函数(将值压缩到 -1 到 1 之间),计算出一个候选记忆
(G列)。
-
决定吸收多少:通过输入门
(F列),计算出一个 0 到 1 的系数。
4. 第三步:更新细胞状态(记忆传送带,
)
目标:合并旧记忆与新记忆!
在 Excel 文件中(H列),这是最精彩的一步:
-
新细胞状态
用人话解释:当前记忆 = (遗忘门系数
上个时刻的记忆) + (输入门系数
刚刚产生的新素材)。
通过这个公式,LSTM 成功地把旧知识和新发现融合在了一起。
5. 第四步:输出门 (Output Gate,
) 与隐藏状态 (
)
目标:决定我们要把什么结论汇报给外界?
现在我们有了最新的内部记忆 (),但我们不能把所有的内心活动都直接输出。
我们要通过输出门 (I列)来过滤:
-
最后,把内部记忆通过 Tanh 处理一下,再乘以输出门的系数,就得到了最终的隐藏状态
(J列):
-
更多推荐
所有评论(0)