我正在尝试训练Keras lstm模型用于生成potry我将我的数据编码为charachters序列,其中每个charachter是一个热编码。我使用多对一模型,所以我的输入是像这样的二维数组。 [[0,1,0],[1,0,0],...,[1,0,0]]每个向量代表一个时间步长,我希望每个lstm单元都有512个字符并且最后一个预测相同的一个热编码矢量与预测下一个charachter。
我应该如何将数据分成批次和时间步?
谢谢
data_gen = TimeseriesGenerator(data, targets,
length=n_timesteps,
batch_size=n_batches)
model.fit_generator(data_gen ,epochs=100, shuffle=False, callbacks=callbacks_list)
答案 0 :(得分:0)
好像你需要在输入上方有一个滑动窗口。 在预测下一个字符之前你会看到多少个字符?为此,utils中有TimeseriesGenerator将你的2d数据转换为3d窗口输入以进行训练。它将为您生成该字符序列的输入和目标。对于更加手动的方法,角色生成在回购中是Keras example。