Python 警告:tensorflow:模型是用形状(无,57)构造的,但在输入时调用了不兼容的形状(无,0)

Python 警告:tensorflow:模型是用形状(无,57)构造的,但在输入时调用了不兼容的形状(无,0),python,tensorflow,machine-learning,keras,deep-learning,Python,Tensorflow,Machine Learning,Keras,Deep Learning,在这里,我创建了LTSM模型 model = Sequential() model.add(Embedding(1000, 128,input_length = x.shape[1])) model.add(SpatialDropout1D(0.4)) model.add(LSTM(100, dropout=0.2, recurrent_dropout=0.2)) model.add(Dense(2,activation='softmax')) model.compile(loss = 'cat

在这里,我创建了LTSM模型

model = Sequential()
model.add(Embedding(1000, 128,input_length = x.shape[1]))
model.add(SpatialDropout1D(0.4))
model.add(LSTM(100, dropout=0.2, recurrent_dropout=0.2))
model.add(Dense(2,activation='softmax'))
model.compile(loss = 'categorical_crossentropy', optimizer='adam',metrics = ['accuracy'])
print(model.summary())

我认为这行有一些错误:

classifier=model.fit(X_train, Y_train, epochs = 1, batch_size=128,validation_split=0.1, verbose = 1,callbacks=callbacks)
ValueError:在用户代码中:/usr/local/lib/python3.7/dist包/tensorflow/python/keras/engine/training.py:805 train_函数*return step_函数(self,iterator)/usr/local/lib/python3.7/dist包/tensorflow/python/keras/engine/training.py:795 step_函数**输出=模型。分配策略。运行(run_step,args=(数据,)/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/distribute_-lib.py:1259运行返回自。扩展。为每个副本调用(fn,args=args,kwargs=kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/distribute_-lib.py:2730为每个副本调用(fn,args,kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/distribute/distribute\u-lib.py:3417_-call\u每个副本返回fn(*args,**kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/training.py:788运行步骤**输出=模型训练步骤(数据)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/training.py:754 train\u step y\u pred=self(x,training=True)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/base\u layer.py:1012call输出=调用fn(输入,*args,**kwargs)/usr/local/lib/python3.7/dist包/tensorflow/python/keras/engine/sequential.py:375调用返回super(sequential,self)。调用(输入,训练=训练,掩码=掩码)/usr/local/lib/python3.7/dist包/tensorflow/python/keras/engine/functional.py:425调用输入,训练=训练,掩码=掩码)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/functional.py:560运行内部图形输出=节点层(*args,**kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/layers/recurrent.py:660调用返回超级(RNN,self)。调用(输入,**kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/base_layer.py:1012calloutputs=call_fn(inputs,*args,**kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/layers/recurrentive_v2.py:1185为_-mask调用零输出/usr/local/lib/python3.7/dist-packages/tensorflow/python/util/dispatch.py:201包装器返回目标(*args,**kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/backend.py:4345 rnn[inp[0]用于扁平化输入中的inp])/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/backend.py:4345[inp[0]用于扁平化输入中的inp])/usr/local/lib/python3.7/dist-packages/tensorflow/python/util/dispatch.py:201包装返回目标(*args,**kwargs)/usr/local/lib/python3.7/dist packages/tensorflow/python/ops/array_ops.py:1047 _slice_helper name=name)/usr/local/lib/python3.7/dist packages/tensorflow/python/util/dispatch.py:201包装器返回目标(*args,**kwargs)/usr/local/lib/python3.7/dist-packages/tensorflow/python/ops/array\u ops.py:1219跨步切片收缩轴掩码=收缩轴掩码)/usr/local/lib/python3.7/dist-packages/tensorflow/python/ops/gen\u-array\u ops.py:10479跨步切片收缩轴掩码=收缩轴掩码,name=name)/usr/local/lib/python3.7/dist-packages/tensorflow/tensorflow/pyt/python/framework/op_def_library.py:750_apply_op_helper attrs=attr_protos,op_def=op_def)/usr/local/lib/python3.7/dist packages/tensorflow/python/framework/func_graph.py:592_创建内部计算设备)/usr/local/lib/python3.7/dist packages/tensorflow/python/framework/ops.py:3536_创建内部op_def=op_def=op_def)/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py:2016initcontrol\u-input\u-ops,op\u-def)/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py:1856\u-create\u-c\u-opraise-ValueError(str(e))ValueError:slice-index:0维度0的切片索引越界。for'{{node sequential_9/lstm_4/stripped_slice_2}}=Straddslice[Index=DT_INT32,T=DT_FLOAT,begin_mask=0,delphissis_mask=0,end_mask=0,new_axis_mask=0,short_axis_mask=1](sequential_9/lstm_4/转置,sequential_9/lstm_slice_4/stripped_2/堆栈,sequential_9/lstm_4/堆栈_2/stack_2)'具有输入形状:[0,,,128],[1],[1],[1]和计算的输入张量:输入[1]=,输入[2]=,输入[3]=。网站:stackoverflow.com

为什么我会遇到这样的问题和错误?我浏览了其他标题,但找不到答案