小编gre*_*min的帖子

在 Tensorflow 2.0 中的简单 LSTM 层之上添加注意力

我有一个由一个 LSTM 和两个 Dense 层组成的简单网络,如下所示:

model = tf.keras.Sequential()
model.add(layers.LSTM(20, input_shape=(train_X.shape[1], train_X.shape[2])))
model.add(layers.Dense(20, activation='sigmoid'))
model.add(layers.Dense(1, activation='sigmoid'))
model.compile(loss='mean_squared_error')
Run Code Online (Sandbox Code Playgroud)

为了分类,它对具有 3 个输入(归一化 0 到 1.0)和 1 个输出(二进制)的数据进行训练。数据是时间序列数据,其中时间步长之间存在关系。

    var1(t)   var2(t)   var3(t)  var4(t)
0  0.448850  0.503847  0.498571      0.0
1  0.450992  0.503480  0.501215      0.0
2  0.451011  0.506655  0.503049      0.0
Run Code Online (Sandbox Code Playgroud)

模型训练如下:

history = model.fit(train_X, train_y, epochs=2800, batch_size=40, validation_data=(test_X, test_y), verbose=2, shuffle=False)
model.summary()
Run Code Online (Sandbox Code Playgroud)

给出模型总结:

Model: "sequential"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
lstm (LSTM)                  (None, 20)                1920      
_________________________________________________________________
dense (Dense)                (None, 20)                420       
_________________________________________________________________
dense_1 (Dense) …
Run Code Online (Sandbox Code Playgroud)

python lstm keras tensorflow attention-model

13
推荐指数
1
解决办法
6853
查看次数

标签 统计

attention-model ×1

keras ×1

lstm ×1

python ×1

tensorflow ×1