1) Если вы хотите использовать Conv1D, используйте Conv1D в качестве первого слоя и укажите input_shape, как показано ниже
input_shape=(N_features, 1)
, а также измените форму вашего поезда (nb_of_examples, nb_of_features, 1).
Итак, ваш измененный код будет выглядеть так:
Processed--XTRAIN = Processed--XTRAIN.reshape(1457,20,1)
def buildreg():
regressor=Sequential()
regressor.add(Conv1D(16,5,input_shape=(20, 1)))
regressor.add(Dense(units=170,input_dim=20))
regressor.add(Dense(units=25))
regressor.add(Dense(units=100))
regressor.add(Dense(units=55))
regressor.add(Dense(units=10))
regressor.add(Dense(units=60))
regressor.add(Dense(units=1))
regressor.compile(optimizer='adam',loss='mean_absolute_error')
return regressor
from keras.wrappers.scikit_learn import KerasRegressor
model=KerasRegressor(build_fn=buildreg,batch_size=15,epochs=20)
2) В противном случае вы можете удалить слой свертки и построить простую модель ANN. Просто используйте плотный слой для построения вашей модели.
Ваш код будет выглядеть примерно так
def buildreg():
regressor=Sequential()
regressor.add(Dense(units=170,input_dim=20))
regressor.add(Dense(units=25))
regressor.add(Dense(units=100))
regressor.add(Dense(units=55))
regressor.add(Dense(units=10))
regressor.add(Dense(units=60))
regressor.add(Dense(units=1))
regressor.compile(optimizer='adam',loss='mean_absolute_error')
return regressor
from keras.wrappers.scikit_learn import KerasRegressor
model=KerasRegressor(build_fn=buildreg,batch_size=15,epochs=20)