深度学习14—循环神经网络RNN实战+MNIST案例+IMDB案例

RNN相关的网络层定义

循环层

keras.layers.SimpleRNN( # 全连接的 RNN,其输出直接被反馈到输入。

units : 正整数,输出空间的维度。
activation = 'tanh' : 要使用的激活函数。
use_bias = True : 该层是否使用偏置向量。

kernel_initializer = 'glorot_uniform' : kernel权值矩阵的初始化器。
    用于输入的线性转换。
recurrent_initializer = 'orthogonal' : recurrent_kernel权值矩阵初始化器
    用于循环层状态的线性转换。
bias_initializer = 'zeros' : 偏置向量的初始化器。
kernel_regularizer = None : kernel权值矩阵的正则化函数。
recurrent_regularizer = None : recurrent_kernel权值矩阵的正则化函数。
bias_regularizer = None : 偏置向量的正则化函数。
activity_regularizer = None : 层输出(它的激活值)的正则化函数。
kernel_constraint = None : kernel权值矩阵的约束函数。
recurrent_constraint = None : recurrent_kernel权值矩阵的约束函数。
bias_constraint = None : 偏置向量的约束函数。

dropout = 0.0 : 单元的丢弃比例,用于输入的线性转换。
recurrent_dropout = 0.0 : 单元的丢弃比例,用于循环层状态的线性转换。

return_sequences = False : 是返回输出序列中的最后一个输出,还是全部序列。
return_state = False : 除了输出之外是否返回最后一个状态(cell state)。
go_backwards = False : 如果为True,则向后处理输入序列并返回相反的序列。
stateful = False : 是否将批次中索引i的样品最后状态用作下一批次i样品的初始状态。
unroll = False : 如果为True,网络将展开,否则将使用符号循环。
    展开可以加速RNN,但它往往会占用更多的内存。展开只适用于短序列。
)
keras.layers.RNN(

cell : 一个 RNN 单元实例。

return_sequences = False : 是返回输出序列中的最后一个输出,还是全部序列。

return_state = False : 除了输出之外是否返回最后一个状态(cell state)。
go_backwards = False : 是否向后处理输入序列并返回相反的序列。
stateful = False : 是否将批次中索引i的样品最后状态用作下一批次i样品的初始状态。
unroll = False : 如果为True,网络将展开,否则将使用符号循环。
    展开可以加速RNN,但它往往会占用更多的内存。展开只适用于短序列。

input_dim : 输入的维度(整数)。 将此层用作模型中的第一层时,此参数必需。
input_length : 输入序列的长度,在恒定时指定。 
    如果在上游连接Flatten和Dense层,需要此参数(没有它无法计算全连接输出尺寸)。 
)

其余RNN函数:
SimpleRNNCell : SimpleRNN的单元类。

嵌入层

用于将正整数的(字符串字典索引值)转换为固定尺寸的稠密向量,该层只能用作模型中的第一层。
例如: [[4], [20]] -> [[0.25, 0.1, 0.7], [0.6, -0.2, -1.3]]

keras.layers.Embedding(

input_dim : int > 0。词汇表大小, 即最大整数 index + 1。
output_dim : int >= 0。词向量的维度。

embeddings_initializer = 'uniform' : embeddings矩阵的初始化方法。
embeddings_regularizer = None : embeddings matrix的正则化方法。
activity_regularizer 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值