如何处理包含不同大小的元素列表中的数据来训练LSTM?

时间:2018-09-18 13:55:22

标签: python tensorflow keras lstm

:)

首先,我想对我的英语不太好表示歉意,因为这不是我的母语。之后,我揭露了我的问题:

我是Python / Keras的新手,目前,我正在使用LSTM处理序列到序列的问题。在这里:我得到了机械臂运动学的数据集。所有运动学的列数相同,但行数不同(行表示时间步长)。我有24个运动学训练数据,我想将其输入LSTM。因此,我创建了一个包含24个元素的列表。问题是当我要创建LSTM时,必须指定“ input_shape”参数(根据运行部分代码后发生的错误)。但问题是,我对必须输入“ input_shape”的值一无所知,因为我的训练数据是运动时间不同的运动列表。我所知道的是,我有一个包含24个元素的列表,每个元素有76列。这是我运行的代码部分:

model = Sequential()
model.add(LSTM(100))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics= 
['accuracy'])
print(model.summary())

这是发生的错误:`

Traceback (most recent call last):
  File "<input>", line 4, in <module>
  File "C:\Users\Pctec\Desktop\venv\lib\site-packages\keras\models.py", line 
454, in add
    raise ValueError('The first layer in a '
ValueError: The first layer in a Sequential model must get an 'input_shape' 
or 'batch_input_shape' argument.`

之后,我搜索了该问题的解决方案并找到了: https://machinelearningmastery.com/prepare-univariate-time-series-data-long-short-term-memory-networks/

这让我对应该怎么做有所了解,但是,作者提出了一个示例,该示例知道时间步长,与我正在研究的情况不同。

我不知道我是否提供了有关问题的足够详细信息,因为就像我说的那样,我仍然是一个初学者,但是也许有人可以帮助我解决这个问题。

那么,根据我应该为LSTM指定input_shape的值吗?

谢谢:)

0 个答案:

没有答案