gpt4 book ai didi

tensorflow - 在 TensorFlow 中实现多对多 LSTM?

转载 作者:行者123 更新时间:2023-12-03 00:37:02 27 4
gpt4 key购买 nike

我正在使用 TensorFlow 对时间序列数据进行预测。就好像我有 50 个标签,我想找出下一个可能的 5 个标签。

如下图所示,我想做成第4种结构。 RNNs

我完成了教程演示:循环神经网络

但是我发现它可以提供像上图中的第5个一样的功能,这是不同的。

我想知道我可以使用哪种型号?我正在考虑 seq2seq 模型,但不确定这是否是正确的方法。

最佳答案

你是对的,你可以使用 seq2seq 模型。为简洁起见,我编写了一个示例,说明如何在 Keras 中执行此操作,该 Keras 也具有 Tensorflow 后端。我还没有运行该示例,因此可能需要调整。如果您的标签是独热的,则需要改用交叉熵损失。

from keras.models import Model
from keras.layers import Input, LSTM, RepeatVector

# The input shape is your sequence length and your token embedding size
inputs = Input(shape=(seq_len, embedding_size))

# Build a RNN encoder
encoder = LSTM(128, return_sequences=False)(inputs)

# Repeat the encoding for every input to the decoder
encoding_repeat = RepeatVector(5)(encoder)

# Pass your (5, 128) encoding to the decoder
decoder = LSTM(128, return_sequences=True)(encoding_repeat)

# Output each timestep into a fully connected layer
sequence_prediction = TimeDistributed(Dense(1, activation='linear'))(decoder)

model = Model(inputs, sequence_prediction)
model.compile('adam', 'mse') # Or categorical_crossentropy
model.fit(X_train, y_train)

关于tensorflow - 在 TensorFlow 中实现多对多 LSTM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38101143/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com