RNNLIB中LSTM节点描述

RNNLIB是由 Alex Graves写RNN开元工具 https://sourceforge.net/projects/rnnl/ 。
支持多维RNN训练(MDRNN 多维,MDMDRNN 多方向+多维),并支持深度网络级联训练。广泛应用于手写识别和语音识别等。

LSTM隐含层只需设定Block个数。
一个block可以有多个cell(但目前一般都是一个block里一个cell)
对于二维数据,一个block需要固定的5个输入信号,分别是:输入门计算用,输出门计算用,遗忘门1计算,遗忘门2计算(因为是二维信息所以有2个遗忘门,一个维度一个),信号变换计算用(真正计算输出用的)。
所以一个block可以看做有5个输入节点,1个输出节点的结构。
而实际训练用输入数据可以多维的,比如图片100*400大小,每次取3*4的小块儿输入到RNN里,那么每个输入数据就是一个12维向量,100*400就右很多个12维向量串联构成(由扫描方式决定)。
对于一个block来看,训练用数据12维度,自己输入信号是5维,所以需要一个[5X12]weight矩阵进行变换。入下图所示:

RNNLIB中LSTM节点描述_第1张图片

你可能感兴趣的:(RNNLIB)