热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

标准的LSTM网络以及公式

LSTM使用一个特殊的存储记忆单元可以改善RNN的梯度消失问题,因此在许多自然语言处理任务中它比RNN有更好的性能。LSTM单元的基本结构如下图所示。它由输入门iti

LSTM使用一个特殊的存储记忆单元可以改善RNN的梯度消失问题,因此在许多自然语言处理任务中它比RNN有更好的性能。LSTM单元的基本结构如下图所示。

在这里插入图片描述
它由输入门iti_{t}it,忘记门ftf_{t}ft,输出门oto_{t}ot,以及一个记忆单元ctc_{t}ct组成。

给定一个文本序列x={x1,x2,…,xn},xtx=\left\{x_{1}, x_{2}, \ldots, x_{n}\right\}, x_{t}x={x1,x2,,xn},xt 表示当前时间步ttt的输入,ht−1h_{t-1}ht1表示上一步LSTM的输出。

LSTM通过门更新记忆单元状态,添加或删除信息以保留与任务相关的内容。 iti_{t}it乘以候选值utu_{t}ut决定了添加到记忆单元的新的输入信息。ftf_{t}ft 乘以ht−1h_{t-1}ht1 决定从记忆单元状态中移除的已有信息。输出门oto_{t}ot决定从记忆单元状态最终的输出信息。

输入门:
it=σ(W(i)xt+U(i)ht−1+b(i))i_{t}=\sigma\left(W^{(i)} x_{t}+U^{(i)} h_{t-1}+b^{(i)}\right)it=σ(W(i)xt+U(i)ht1+b(i))
忘记门:
ft=σ(W(f)xt+U(f)ht−1+b(f))f_{t}=\sigma\left(W^{(f)} x_{t}+U^{(f)} h_{t-1}+b^{(f)}\right)ft=σ(W(f)xt+U(f)ht1+b(f))
输出门:
ot=σ(W(o)xt+U(o)ht−1+b(o))o_{t}=\sigma\left(W^{(o)} x_{t}+U^{(o)} h_{t-1}+b^{(o)}\right)ot=σ(W(o)xt+U(o)ht1+b(o))

记忆单元候选值:
ut=tanh⁡(W(u)xt+U(u)ht−1+b(u))u_{t}=\tanh \left(W^{(u)} x_{t}+U^{(u)} h_{t-1}+b^{(u)}\right)ut=tanh(W(u)xt+U(u)ht1+b(u))
记忆单元状态更新:
ct=it⊙ut+ft⊙ct−1c_{t}=i_{t} \odot u_{t}+f_{t} \odot c_{t-1}ct=itut+ftct1
输出:
ht=ot⊙tanh⁡(ct)h_{t}=o_{t} \odot \tanh \left(c_{t}\right)ht=ottanh(ct)


推荐阅读
author-avatar
风云时尚_榜中榜_434
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有