Python 训练Keras模型时使用稀疏数组表示标签
我正在建立一个Keras模型,将数据分为3000个不同的类,我的训练数据由大量样本组成,因此在一个热编码中对训练输出进行编码后,数据非常大(item_count*3000*浮点大小+输入数据大小)Python 训练Keras模型时使用稀疏数组表示标签,python,tensorflow,keras,sparse-matrix,Python,Tensorflow,Keras,Sparse Matrix,我正在建立一个Keras模型,将数据分为3000个不同的类,我的训练数据由大量样本组成,因此在一个热编码中对训练输出进行编码后,数据非常大(item_count*3000*浮点大小+输入数据大小) 有没有可能将稀疏数组作为训练数据的输出传递给keras,有没有任何建议的解决方案?您可以使用稀疏分类交叉熵损失函数来稀疏表示您的基本事实 # assuming get_model() returns your Keras model with an output_shape == [None, 300
有没有可能将稀疏数组作为训练数据的输出传递给keras,有没有任何建议的解决方案?您可以使用稀疏分类交叉熵损失函数来稀疏表示您的基本事实
# assuming get_model() returns your Keras model with an output_shape == [None, 3000]
# assuming get_data() returns training data, with y_train having shape == [num_samples]
x_train, y_train = get_data()
model = get_model()
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
model.fit(x_train, y_train, epochs=10, batch_size=16)
你是说y_列的形状为[num_samples]?是的,改变了。