You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何从同一MNIST数据集拆分的x_train与y_train形状不一致?

MNIST数据集x_train与y_train形状差异原因

你使用的数据集加载代码及输出如下:

(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()

print(x_train.shape) >>> (60000, 28, 28)
print(y_train.shape) >>> (60000,)

二者形状不同是因为存储的内容和作用完全不同,具体原因如下:

  • x_train是特征数据集,存储所有训练用的输入图片数据:
    第一个维度60000代表训练集总共有6万张图片;MNIST的每张图片是28×28像素的灰度图,每个图片的像素值用28行28列的二维矩阵存储,因此后两个维度分别对应图片的高度和宽度,最终形状为(60000, 28, 28)。
  • y_train是标签数据集,存储每张训练图片对应的真实数字标注:
    第一个维度60000同样对应6万张训练样本;每张图片只需要一个0-9的标量值就能表示对应的真实数字,没有额外的维度需求,因此是长度为60000的一维数组,Numpy中一维数组的形状默认表示为(60000,)。

内容的提问来源于stack exchange,提问作者Ayesha Mustafa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 22:57:02