【问题标题】:Error in loading mnist dataset in Python 3在 Python 3 中加载 mnist 数据集时出错
【发布时间】:2018-12-17 15:39:56
【问题描述】:

尝试使用 mnist_loader 脚本加载 MNIST 数据集时,我不断收到以下错误: 'ascii' 编解码器无法解码位置 614 中的字节 0x90:序数不在范围内(128)'

用于加载数据的代码如下所示。有什么建议么?

非常感谢!

def load_data():
    f = gzip.open('mnist.pkl.gz', 'rb')
    training_data, validation_data, test_data = pickle.load(f, encoding="latin1")
    f.close()
    return (training_data, validation_data, test_data)

【问题讨论】:

    标签: python-3.x decode pickle mnist


    【解决方案1】:

    这可能适用于 Python 3,代码如下:

    import pickle
    import gzip
    with gzip.open('mnist.pkl.gz', 'rb') as f:
        data = pickle._Unpickler(f)
        data.encoding = 'latin1'  # set encoding
        train, valid, test = data.load()
    

    【讨论】:

    • 可以确认它适用于python 3.8.12
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-13
    • 2019-01-18
    • 1970-01-01
    • 2020-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多