lstm模型结构画图
时间: 2025-01-06 15:44:52 浏览: 7
### 关于LSTM模型结构图
为了更好地理解LSTM的工作原理,可以通过图形化的方式展示其内部结构。以下是基于已有研究资料整理的一个典型LSTM单元的结构图描述[^3]。
#### LSTM单元的主要组成部分:
1. **遗忘门(Forget Gate)**
遗忘门决定了哪些信息应该被丢弃或保留下来。它接收当前时刻输入\(x_t\)以及前一时刻隐藏状态\(h_{t-1}\),经过线性变换加上偏置项后再通过Sigmoid函数激活得到输出范围在0到1之间的值。当接近0时表示几乎完全忘记;而接近1则意味着大部分会被保存。
2. **输入门(Input Gate)**
输入门负责更新细胞状态向量C̃_t。这一过程分为两步:首先是决定要加入的新候选数值是多少——这由另一个称为“新记忆生成部分”的子模块完成,该部分同样接受\(x_t\)和\(h_{t-1}\)作为输入并通过Tanh层映射至(-1, 1);其次是确定这些新增加的信息究竟有多少比例能够真正进入最终的状态更新中去——这部分工作交给了标准意义上的输入门i_t=Sigmoid(W_i[x_t; h_(t−1)]+b_i)
3. **细胞状态(Cell State)**
细胞状态是整个架构的核心所在,在这里实现了对于历史信息的选择性继承与发展。具体来说就是先利用上述提到过的f_t乘以前一刻的记忆c_(t−1),再把刚刚产生的新内容按一定权重累加以形成新的整体印象c_t=f_t⊙c_(t−1)+i_t⊙C̃_t.
4. **输出门(Output Gate)**
输出门控制着从这个时间步长里向外传递多少有用的数据给下一个节点使用。此操作依旧依赖于Sigmoid函数来判断比重o_t=Sigmoid(W_o[x_t; h_(t−1)]+b_o).最后还要将结果过一遍Tanh从而限定在一个合适的区间内,即得出本次迭代后的隐含层表达形式h_t=o_t⊙Tanh(c_t).
下面是根据以上说明所绘制的一张简化版LSTM单元结构示意图:
```mermaid
graph LR;
A[xt ht-1] --> B{ForgetGate ft}
A --> C{InputGate it}
A --> D{Tanh Ct~}
E[Ct-1] -.->|ft⊙| F[Ct]
G[it⊙Ct~] --> F
H{OutputGate ot} --> I[Tanh(Ct)]
J[ht] <-- |ot⊙|I
style A fill:#ffeb3b,color:black
style B fill:#9ccc65,color:white
style C fill:#9ccc65,color:white
style D fill:#9ccc65,color:white
style E fill:#bbdefb,color:black
style F fill:#e1bee7,color:black
style G fill:#81d4fa,color:black
style H fill:#9ccc65,color:white
style I fill:#ce93d8,color:white
style J fill:#bcaaa4,color:white
```
阅读全文