keras lstm参数 中_LSTM在keras中参数return_sequences、return_state的超详细区别(附代码)...

本文详细介绍了Keras中LSTM层的参数return_sequences和return_state的区别。当return_sequences为True时,返回所有隐藏状态;为False则只返回最后一个。return_state为True时,会返回最后一步的隐藏状态和单元状态。通过实例展示了不同参数组合下的输出结果。
摘要由CSDN通过智能技术生成

一、定义

return_sequences:默认为false。当为false时,返回最后一层最后一个步长的hidden state;当为true时,返回最后一层的所有hidden state。

return_state:默认false.当为true时,返回最后一层的最后一个步长的输出hidden state和输入cell state。

二、实例验证

下图的输入是一个步长为3,维度为1的数组。

一共有2层神经网络(其中第一层必须加上“return_sequences=True”,这样才能转化成步长为3的输入变量)

(1)return_sequences=True

from keras.models import Model

from keras.layers import Input

from keras.layers import LSTM

from numpy import array

from keras.models import Sequential

data = array([0.1,0.2,0.3]).reshape((1,3,1))

inputs1 = Input(shape=(3,1))

lstm1,state_h,state_c = LSTM(2,return_sequences=True,return_state=True)(inputs1)

lstm2 = LSTM(2,return_sequences=True)(lstm1)

model = Model(input = inputs1,outputs = [lstm2])

print(model.predict(data))

输出结果为:(最后一层

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值