【问题标题】:How to shuffle MNIST data loaded using Keras?如何打乱使用 Keras 加载的 MNIST 数据?
【发布时间】:2022-10-13 18:44:20
【问题描述】:

我正在使用来自 keras 的 MNIST 数据集 -

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

在加载数据之前,我该如何打乱这个数据集?

【问题讨论】:

    标签: keras mnist


    【解决方案1】:

    我认为keras.datasets.mnist.load_data() 不可能做到这一点。

    你有不同的选择:

    1. 自己下载数据集并直接从文件中加载。然后洗牌并拆分

    2. 使用tensorflow_datasets。例子:
      import tensorflow_dataset as tfds

      (df_train,df_test)=tfds.load('minst',split=['train','test'],shuffle_files=True, as_supervised=True)

    3. 从您的 x_train、x_test、y_train、y_test 构建数据集。然后重新洗牌并再次拆分。

    【讨论】:

    • 有些东西写错了,应该是import tensorflow_datasets as tfds
    【解决方案2】:

    您可以按照 tensorflow 的建议使用,

    import tensorflow as tf
    import tensorflow_datasets as tfds 
    (ds_train, ds_test), ds_info = tfds.load(
        'mnist',
        split=['train', 'test'],
        shuffle_files=True,
        as_supervised=True,
        with_info=True,
    ) 
    

    我不确定,但您可以使用它并转换为 numpy,如下所示:

        import numpy as np
        ds_test_np = np.array(list(ds_test.as_numpy_iterator()))
        ds_train_np = np.array(list(ds_train.as_numpy_iterator()))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-26
      • 2018-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多