美文网首页深度学习
关于 『AI 专属数据库的定制』的改进

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

作者: 水之心 | 来源:发表于2018-06-29 03:00 被阅读19次

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 这些数据集。即:

反序列化

def read_bunch(path):
    with open(path, 'rb') as fp:
        bunch = pickle.load(fp)  # 即为上面的 DataBunch 的实例
    return bunch
read_bunch(path)   # path 即你的数据集所在的路径

以下是『AI 专属数据库的定制』的改进版本的完整脚本。

相关文章

网友评论

    本文标题:关于 『AI 专属数据库的定制』的改进

    本文链接:https://www.haomeiwen.com/subject/nyjgyftx.html