Keras-LSTM Layer

LSTM层
from tensorflow.python.keras.layers import Dense
from tensorflow.python.keras import Sequential
model = Sequential()
model.add(LSTM(200,input_dim =100,timestep=100,activation=tanh)) 
核心参数

units: 输出空间的维度
input_shape(timestep,input_dim): timestep可以设置为None,由输入决定,input_dime: 输入维度,当使用该层为模型首层时,应指定该值(或等价的指定input_shape)
activation: 激活函数,默认tanh
return_sequences:布尔值,默认False,控制返回类型。若为True则返回整个序列,否则仅返回输出序列的最后一个输出
input_length:当输入序列的长度固定时,该参数为输入序列的长度。当需要在该层后连接Flatten层,然后又要连接Dense层时,需要指定该参数,否则全连接的输出无法计算出来

输入shape

形如(samples,timesteps,input_dim)的3D张量

输出shape

如果return_sequences=True:返回形如(samples,timesteps,output_dim)的3D张量否则,返回形如(samples,output_dim)的2D张量

详细参数
tf.keras.layers.LSTM(
units,
activation=“tanh”,
recurrent_activation=“sigmoid”,#用于重复步骤的激活功能
use_bias=True,#,是否图层使用偏置向量
kernel_initializer=“glorot_uniform”,#kernel权重矩阵的 初始化程序,用于输入的线性转换
recurrent_initializer=“orthogonal”,#权重矩阵的 初始化程序,用于递归状态的线性转换
bias_initializer=“zeros”,#偏差向量的初始化程序
unit_forget_bias=True,#则在初始化时将1加到遗忘门的偏置上
kernel_regularizer=None,#正则化函数应用于kernel权重矩阵
recurrent_regularizer=None,#正则化函数应用于 权重矩阵
bias_regularizer=None,#正则化函数应用于偏差向量
activity_regularizer=None,#正则化函数应用于图层的输出(其“激活”)
kernel_constraint=None,#约束函数应用于kernel权重矩阵
recurrent_constraint=None,#约束函数应用于 权重矩阵
bias_constraint=None,#约束函数应用于偏差向量
dropout=0.0,#要进行线性转换的输入单位的分数
recurrent_dropout=0.0,#为递归状态的线性转换而下降的单位小数
return_sequences=False,#是否返回最后一个输出。在输出序列或完整序列中
return_state=False,#除输出外,是否返回最后一个状态
go_backwards=False,#如果为True,则向后处理输入序列并返回反向的序列
stateful=False,#如果为True,则批次中索引i的每个样本的最后状态将用作下一个批次中索引i的样本的初始状态。
time_major=False,
unroll=False,#如果为True,则将展开网络,否则将使用符号循环。展开可以加快RNN的速度,尽管它通常会占用更多的内存。展开仅适用于短序列。
)

guidlink: https://blog.csdn.net/jiangpeng59/article/details/77646186

你可能感兴趣的:(Keras-LSTM Layer)