这段代码是一个简单的辅助函数loadDataSet,用于加载二维数据和标签。然而,由于 MNIST 数据集是一个多维图像数据集,无法直接使用这个函数加载 MNIST 数据集。

对于 MNIST 数据集,你可以使用以下代码修改loadDataSet函数:

import numpy as np

def loadDataSet(fileName):
    dataMat = []; labelMat = []
    fr = open(fileName, 'rb')
    magic_number = int.from_bytes(fr.read(4), 'big')
    num_images = int.from_bytes(fr.read(4), 'big')
    num_rows = int.from_bytes(fr.read(4), 'big')
    num_cols = int.from_bytes(fr.read(4), 'big')
    for _ in range(num_images):
        image = np.frombuffer(fr.read(num_rows * num_cols), dtype=np.uint8)
        dataMat.append(image)
    return dataMat

在这个修改后的loadDataSet函数中,我们假设你已经下载并解压缩了 MNIST 数据集的图像文件(例如train-images-idx3-ubytet10k-images-idx3-ubyte)。函数将打开指定的文件并读取其中的图像数据。返回的dataMat是一个包含所有图像的列表,每个图像以 numpy 数组的形式表示。

请注意,这个函数只能加载 MNIST 数据集的图像数据,无法加载标签数据。如果你也需要加载标签数据,请使用其他方法或库来加载 MNIST 数据集的标签,例如fetch_openml函数。

希望这个修改后的函数可以帮助你加载 MNIST 数据集的图像数据!如果还有其他问题,请随时提问。

Python MNIST 数据集加载函数:从文件读取图像数据

原文地址: https://www.cveoy.top/t/topic/bySI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录