Python 将标记化全文传递到keras嵌入层时发生形状错误

Python 将标记化全文传递到keras嵌入层时发生形状错误,python,numpy,tensorflow,machine-learning,keras,Python,Numpy,Tensorflow,Machine Learning,Keras,我正在尝试用tensorflow 2.0构建一个机器学习模型,它将用于对全文ocr数据进行分类。它使用了一个嵌入层,我正在使用该嵌入层。我已经对全文进行了预处理和标记,并将所有数据保存为pickle 我正在从pickle加载所有内容,并将全文系列转换为numpy数组,如下所示: df = pd.read_pickle("my_pickle.pkl") feature = df['FullTextTokenized'] split_idx = int(len(features) * 0.8) t

我正在尝试用tensorflow 2.0构建一个机器学习模型,它将用于对全文ocr数据进行分类。它使用了一个嵌入层,我正在使用该嵌入层。我已经对全文进行了预处理和标记,并将所有数据保存为pickle

我正在从pickle加载所有内容,并将全文系列转换为numpy数组,如下所示:

df = pd.read_pickle("my_pickle.pkl")
feature = df['FullTextTokenized']

split_idx = int(len(features) * 0.8)
train_x = features[:split_idx].to_numpy()
test_x = features[split_idx:].to_numpy()

train_y = labels[:split_idx].to_numpy()
test_y = labels[split_idx:].to_numpy()
一切正常。train_x现在是int32数组的数组。 如果我打印形状,我会得到以下结果,这也是正确的:

打印(列车形状)
打印(序列号x[0]。形状)
输出:
(126239,)
(1246,)
因此,我开始构建我的模型,总结如下:

图层(类型)输出形状参数#
=================================================================
层_嵌入(嵌入)(无,1246300)30000000
...
因此,一切都应该正常工作,因为嵌入层希望与我的train_x具有相同的形状

我以以下方式开始培训:

#列车型号
模型安装(列车x,
训练,
验证分割=0.1,
回调=[cp_回调],
纪元=3,
批次(单位大小=512)
当我这样做的时候,我得到了以下错误,这对我来说毫无意义:

ValueError:检查输入时出错:预期层\u嵌入\u输入具有形状(1246),但获得具有形状(1,)的数组
我的数据的输入形状是(1240,),如上面打印形状时所示。 我是否需要再做一步,让tensorflow接受整个数组作为一个输入,或者它是在尝试获取给定数组的最底层,即int32

提前感谢您提供的任何帮助