检查输入时出错:预期conv1d_14_input具有3维,但数组的形状为(2043,260)

我有大约2000行和260列的数据集,不包括标签。标签采用字母形式。这个错误让我很难理解。

file = "Sample.csv"

df=pd.read_csv(file,header=None)

X=df.iloc[:,:-1].values
Y=df.iloc[:,-1].values
Xtrain = np.expand_dims(X,axis=2)
label_Encoder = LabelEncoder()
NewTrgLabels = label_Encoder.fit_transform(Y.ravel())
ITrgLabels = to_categorical(NewTrgLabels)
def create_model():
  model = Sequential()    
  model.add(Conv1D(5,3,activation='relu',batch_input_shape=Xtrain.shape))
  model.add(MaxPool1D(2,stride=2))
  model.add(Conv1D(10,4,activation='relu'))
  model.add(MaxPool1D(2,stride=2))
  model.add(Conv1D(20,stride=2))
  model.add(flatten())
  model.add(Dense(40,activation='relu'))
  model.add(Dense(20,activation='relu'))
  model.add(Dense(5,activation='softmax'))
  opt = optimizers.SGD(lr=0.003,momentum=0.7)
  model.compile(optimizer=opt,metrics=['accuracy'],loss='categorical_crossentropy') 
  return model

from sklearn.model_selection import KFold

n_split=10

for train_index,test_index in KFold(n_split).split(X):
  x_train,x_test=X[train_index],X[test_index]
  y_train,y_test=ITrgLabels[train_index],ITrgLabels[test_index]

  model=create_model()
  model.fit(x_train,y_train,epochs=20)

  print('Model evaluation ',model.evaluate(x_test,y_test))
ooxiaoping 回答:检查输入时出错:预期conv1d_14_input具有3维,但数组的形状为(2043,260)

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2638789.html

大家都在问