在keras中训练1D-conv模型

在keras中训练1D-conv模型,keras,conv-neural-network,Keras,Conv Neural Network,我试着简单的训练!keras中的D conv模型。我在excel文件中有1D数据。我是第一个 用python读取数据。然后我正在制作培训数据集python。然后我就把桌子劈开了 将数据集转换为训练和测试数据集。但当我训练简单!D con模型,我得到了 错误如下所示。请指导我如何解决这个问题 training_data = [] def create_training_data(): for label in labels: dir_path = os.path

我试着简单的训练!keras中的D conv模型。我在excel文件中有1D数据。我是第一个 用python读取数据。然后我正在制作培训数据集python。然后我就把桌子劈开了 将数据集转换为训练和测试数据集。但当我训练简单!D con模型,我得到了 错误如下所示。请指导我如何解决这个问题

    training_data = []
    def create_training_data():
    for label in labels:
      dir_path = os.path.join(path_dir, label)
      class_num = labels.index(label)
      file_list = os.listdir(dir_path)
    
    for file_name in file_list:
        img_path = os.path.join(dir_path, file_name)
        dir_split = dir_path.split('\\')
        
        training_data.append([img_path, class_num])
        
  create_training_data()
  print(len(training_data))
  import random

  random.shuffle(training_data)

  for sample in training_data[:10]:
    print(sample[1])
    X = []
    Y = []

for features, classes in training_data:
  X.append(features)
  Y.append(classes)
  from sklearn.model_selection import train_test_split

     X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size=0.2, random_state=42)

  len(y_test)
  import numpy as np
  #inp = np.array(X_train)
   #print(inp.shape)
   kernel_size = 3

x = Conv1D(filters=32, kernel_size=kernel_size, activation="relu")(inp)
x = MaxPooling1D(2)(x)


x = Conv1D(filters=32, kernel_size=kernel_size, activation='relu')(x)
x = MaxPooling1D(2)(x)


x = Conv1D(filters=64, kernel_size=kernel_size, activation='relu')(x)
x = MaxPooling1D(2)(x)


x = Conv1D(filters=64, kernel_size=kernel_size, activation='relu')(x)
x = MaxPooling1D(2)(x)


  x = Flatten()(x)
  x = Dense(4, activation="softmax")(x)

  return Model(inputs=inp, outputs=x)
我得到以下错误:

层的所有输入都应该是张量


如何解决这个问题。

inp需要是一个输入层(keras.layers.input)inp需要是一个输入层(keras.layers.input)