相关疑难解决方法(0)

Keras:我应该如何为RNN准备输入数据?

我在为Keras准备RNN的输入数据时遇到了麻烦.

目前,我的培训数据维度是: (6752, 600, 13)

  • 6752:训练数据的数量
  • 600:时间步数
  • 13:特征向量的大小(向量是浮点数)

X_train并且Y_train都在这个方面.

我想把这些数据准备好SimpleRNN用于Keras.假设我们正在经历时间步骤,从步骤#0到步骤#599.假设我想使用input_length = 5,这意味着我想使用最近的5个输入.(例如步骤#10,#11,#12,#13,#14 @步骤#14).

我应该如何重塑X_train

应该是(6752, 5, 600, 13)或应该是(6752, 600, 5, 13)吗?

什么形状应该Y_train在?

它应该是(6752, 600, 13)(6752, 1, 600, 13)(6752, 600, 1, 13)

deep-learning lstm keras recurrent-neural-network

15
推荐指数
2
解决办法
5986
查看次数

如何整形输入数据以在keras中与Conv1D一起使用?

我的虚拟数据集中有12个长度为200的向量,每个向量代表一个样本。假设x_train是一个带有shape的数组(12, 200)

当我做:

model = Sequential()
model.add(Conv1D(2, 4, input_shape=(1, 200)))
Run Code Online (Sandbox Code Playgroud)

我得到错误:

ValueError: Error when checking model input: expected conv1d_1_input to have 3 dimensions, but got array with shape (12, 200)
Run Code Online (Sandbox Code Playgroud)

如何正确调整输入数组的形状?

这是我更新的脚本:

data = np.loadtxt('temp/data.csv', delimiter=' ')
trainData = []
testData = []
trainlabels = []
testlabels = []

with open('temp/trainlabels', 'r') as f:
    trainLabelFile = list(csv.reader(f))

with open('temp/testlabels', 'r') as f:
    testLabelFile = list(csv.reader(f))

for i in range(2):
    for idx in trainLabelFile[i]:
        trainData.append(data[int(idx)])
        # append …
Run Code Online (Sandbox Code Playgroud)

python machine-learning conv-neural-network keras

7
推荐指数
1
解决办法
2793
查看次数