keras - 如何使用先前单元格的预测作为 Keras 中的输入来训练 LSTM?
问题描述
目前我正在使用一个简单的 Keras 模型来学习一系列项目,然后使用经过训练的模型来生成新的序列。我想将训练更改为与生成阶段相同的方式 - 这意味着我希望模型从它自己的最后一步的预测中学习(并且我将在损失函数中使用基本事实)。可以在 Keras 做吗?
这是我现在拥有的简单模型:
model1 = Sequential()
model1.add(LSTM(64, input_shape=(seq_length, X_train.shape[2]) , return_sequences=True))
model1.add(Dense(y_cat_train.shape[2], activation='softmax'))
model1.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
filepath="weights-improvement-{epoch:02d}-{loss:.4f}-bigger.hdf5"
checkpoint = ModelCheckpoint(filepath, monitor='loss', verbose=1, save_best_only=True, mode='min')
callbacks_list = [checkpoint]
model1.fit(X_train, y_cat_train, epochs=200, batch_size=10, verbose=2,callbacks=callbacks_list)
X_train
实际上是2个特点:[prev step's true y, prev step's other feature]
解决方案
推荐阅读
- node.js - Mongodb聚合distinct,average和sum与两个集合之间的group by
- ios - 是什么触发了“您要允许“我的应用”使用 Face ID 吗?
- java - 如何将更改应用于处理中的类的特定对象?
- python - 如何在numpy中制作排名数组
- shell - jenkinsfile 执行的 bash 脚本变量值中的星号导致 glob 模式
- kivy - Kivy,重用切换按钮布局,但为按钮分配不同的功能
- javascript - JS递归中的增量问题
- c# - Unity 在运行时更改 UI 图像颜色
- android - com.android.volley.RequestQueue.add(com.android.volley.Request)' 在空对象引用上。如何使用 volley 解析 json?
- angular - 如何对组件进行单元测试以检查特定组件是否已呈现