Select 10 张图像来自 MNIST 数据集
Select 10 images from MNIST dataset
我必须 select 来自 mnist 数据集的一批 10 张图像。每个图像应属于一个不同的 class,即图像 0 到 class 0,图像 1 到 class 1 等
我知道我通过以下方式提取了所有数据集。我想知道如何创建一个包含 10 张图片的数据集,每张图片属于不同的 class
(X_train, Y_train), (X_test, Y_test) = tf.keras.datasets.mnist.load_data()
如果您只需要 10 个,一个简单的方法是取前 10 个非重复条目:
import pandas as pd
import tensorflow as tf
(X_train, Y_train), (X_test, Y_test) = tf.keras.datasets.mnist.load_data()
ix = ~pd.Series(Y_train).duplicated()
X_10 = X_train[ix]
Y_10 = Y_train[ix]
Y_10
array([5, 0, 4, 1, 9, 2, 3, 6, 7, 8], dtype=uint8)
我使用了 unique 方法,从中我对数组的唯一元素及其索引进行了排序
(X_train, Y_train), (X_test, Y_test) = tf.keras.datasets.mnist.load_data()
train_filter = np.unique(Y_train, return_index=True)
X_train, Y_train = X_train[train_filter[1:]], Y_train[train_filter[1:]]
我必须 select 来自 mnist 数据集的一批 10 张图像。每个图像应属于一个不同的 class,即图像 0 到 class 0,图像 1 到 class 1 等
我知道我通过以下方式提取了所有数据集。我想知道如何创建一个包含 10 张图片的数据集,每张图片属于不同的 class
(X_train, Y_train), (X_test, Y_test) = tf.keras.datasets.mnist.load_data()
如果您只需要 10 个,一个简单的方法是取前 10 个非重复条目:
import pandas as pd
import tensorflow as tf
(X_train, Y_train), (X_test, Y_test) = tf.keras.datasets.mnist.load_data()
ix = ~pd.Series(Y_train).duplicated()
X_10 = X_train[ix]
Y_10 = Y_train[ix]
Y_10
array([5, 0, 4, 1, 9, 2, 3, 6, 7, 8], dtype=uint8)
我使用了 unique 方法,从中我对数组的唯一元素及其索引进行了排序
(X_train, Y_train), (X_test, Y_test) = tf.keras.datasets.mnist.load_data()
train_filter = np.unique(Y_train, return_index=True)
X_train, Y_train = X_train[train_filter[1:]], Y_train[train_filter[1:]]