Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image processing ValueError:步幅的长度应为1、1或3,但为2_Image Processing_Keras_Conv Neural Network_Lstm_Keras Layer - Fatal编程技术网

Image processing ValueError:步幅的长度应为1、1或3,但为2

Image processing ValueError:步幅的长度应为1、1或3,但为2,image-processing,keras,conv-neural-network,lstm,keras-layer,Image Processing,Keras,Conv Neural Network,Lstm,Keras Layer,列车输入形状:(13974100,6,5) 列车输出形状:(13974,1,1) 测试输入形状:(3494100,6,5) 测试输出形状:(3494,1,1) 我正在开发以下模型。二维CNN-LSTM model = Sequential() model.add(TimeDistributed(Conv2D(1, (1,1), activation='relu', input_shape=(6,5,1)))) model.add(TimeDistributed(MaxPooling2D(poo

列车输入形状:(13974100,6,5)

列车输出形状:(13974,1,1)

测试输入形状:(3494100,6,5)

测试输出形状:(3494,1,1)

我正在开发以下模型。二维CNN-LSTM

model = Sequential()
model.add(TimeDistributed(Conv2D(1, (1,1), activation='relu', 
input_shape=(6,5,1))))
model.add(TimeDistributed(MaxPooling2D(pool_size=(6, 5))))
model.add(TimeDistributed(Flatten()))
model.add(LSTM(units=300, return_sequences= False, input_shape=(100,1)))
model.add(Dense(1))
当我试着去适应的时候,如下所示

model.fit(train_input,train_output,epochs=50,batch_size=60)
这给了我一个错误

ValueError:步幅的长度应为1、1或3,但为2


请纠正我的型号。我正在将6,5图像转换为一个单位,并从100个时间戳预测第101个时间戳。

您的问题很不清楚,但我相信您有大小为6 x 5的100个图像序列。最好将
Conv3D
合并到您的用例中,而且也没有必要将
时间分布到任何地方。这只是您用例的一个示例,您可能需要添加更多的
Conv
MaxPool
层,并尝试其他超参数以获得良好的拟合效果

# Add the channel dimension in input
train_input = np.expand_dims(train_input, -1)
# Remove the extra dimension in output
train_output = np.reshape(train_output, (-1, 1))

model = Sequential()
model.add(Conv3D(1, (1,1,1), activation='relu', input_shape=(100, 6,5, 1)))
model.add(MaxPooling3D(pool_size=(6, 5, 1)))
model.add(Reshape((16, 5)))
model.add(LSTM(units=300, return_sequences= False))
model.add(Dense(1))

你的问题很不清楚,但我相信你有100张大小为6 x 5的图片。最好将
Conv3D
合并到您的用例中,而且也没有必要将
时间分布到任何地方。这只是您用例的一个示例,您可能需要添加更多的
Conv
MaxPool
层,并尝试其他超参数以获得良好的拟合效果

# Add the channel dimension in input
train_input = np.expand_dims(train_input, -1)
# Remove the extra dimension in output
train_output = np.reshape(train_output, (-1, 1))

model = Sequential()
model.add(Conv3D(1, (1,1,1), activation='relu', input_shape=(100, 6,5, 1)))
model.add(MaxPooling3D(pool_size=(6, 5, 1)))
model.add(Reshape((16, 5)))
model.add(LSTM(units=300, return_sequences= False))
model.add(Dense(1))

感谢您的回复,我正在制作一个模型,从6*5图像的100个时间戳预测并输出到6*1,我将最后一个密度更改为密度(6)lstm是否获得100个时间戳的输入并预测输出。感谢您的回复,我正在制作一个模型,从6*5图像的100个时间戳预测并输出到6*1。我将最后一个密度更改为密度(6)lstm是否获得100个时间戳的输入并预测输出。