关于 『AI 专属数据库的定制』的改进

『AI 专属数据库的定制』的改进版本实现了更加方便的使用自己的专属数据集。

载入数据集

关于 DataBunch 见文末的脚本。

import sys

sys.path.append('E:/xinlib')
from base.filez import DataBunch
root = 'E:/Data/Zip/'
db = DataBunch(root)
db.keys()
dict_keys(['mnist', 'fashion_mnist', 'cifar10', 'cifar100'])
db.mnist.keys()
dict_keys(['url', 'namespace', 'trainX', 'trainY', 'testX', 'testY'])
db.fashion_mnist.keys()
dict_keys(['url', 'namespace', 'trainX', 'trainY', 'testX', 'testY'])
db.cifar10.keys()
dict_keys(['url', 'namespace', 'data_batch_4', 'test_batch', 'data_batch_3', 'meta', 'data_batch_2', 'data_batch_5', 'data_batch_1', 'trainX', 'trainY', 'testX', 'testY'])
db.cifar100.keys()
dict_keys(['url', 'namespace', 'train', 'test', 'meta', 'trainX', 'train_fine_labels', 'train_coarse_labels', 'testX', 'test_fine_labels', 'test_coarse_labels'])

将数据集写入 JSON 文件中

import pickle

序列化

def write_bunch(path):
    with open(path, 'wb') as fp:
        pickle.dump(db, fp)
path = f'{root}X.json'   # 写入数据集的文件路径
write_bunch(path)
path = f'{root}X.dat'  # 写入数据集的文件路径
write_bunch(path)

这样以后我们就可以直接 Copy f'{root}X.datf'{root}X.json' 到你可以放置的任何地方,然后你就可以通过 load 函数来调用 MNISTFashion MNISTCifa 10Cifar 100 这些数据集。即:

你可能感兴趣的:(关于 『AI 专属数据库的定制』的改进)