examples/utils.py
def load_cifar(flatten=True, labels=False):
    '''Load the CIFAR10 image dataset.'''
    def extract(name):
        print('extracting data from {}'.format(name))
        h = tar.extractfile(name)
        if sys.version_info < (3, ):
            d = pickle.load(h)
        else:
            d = pickle.load(h, encoding='bytes')
            for k in list(d):
                d[k.decode('utf8')] = d[k]
        h.close()
        img = d['data'].reshape(
            (-1, 3, 32, 32)).transpose((0, 2, 3, 1)).astype('f') / 128 - 1
        if flatten:
            img = img.reshape((-1, 32 * 32 * 3))
        d['data'] = img
        return d

    fn = find('cifar10.tar.gz', 'http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz')
    tar = tarfile.open(fn)

    imgs = []
    labs = []
    for i in range(1, 6):
        d = extract('cifar-10-batches-py/data_batch_{}'.format(i))
        imgs.extend(d['data'])
        labs.extend(d['labels'])
    timg = np.asarray(imgs[:40000])
    tlab = np.asarray(labs[:40000], 'i')
    vimg = np.asarray(imgs[40000:])
    vlab = np.asarray(labs[40000:], 'i')

    d = extract('cifar-10-batches-py/test_batch')
    simg = d['data']
    slab = d['labels']

    tar.close()

    if labels:
        return (timg, tlab), (vimg, vlab), (simg, slab)
    return (timg, ), (vimg, ), (simg, )
def load_cifar(flatten=True, labels=False):
    '''Load the CIFAR10 image dataset.'''
    def extract(name):
        print('extracting data from {}'.format(name))
        h = tar.extractfile(name)
        if sys.version_info < (3, ):
            d = pickle.load(h)
        else:
            d = pickle.load(h, encoding='bytes')
            for k in list(d):
                d[k.decode('utf8')] = d[k]
        h.close()
        img = d['data'].reshape(
            (-1, 3, 32, 32)).transpose((0, 2, 3, 1)).astype('f') / 128 - 1
        if flatten:
            img = img.reshape((-1, 32 * 32 * 3))
        d['data'] = img
        return d

    fn = find('cifar10.tar.gz', 'http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz')
    tar = tarfile.open(fn)

    imgs = []
    labs = []
    for i in range(1, 6):
        d = extract('cifar-10-batches-py/data_batch_{}'.format(i))
        imgs.extend(d['data'])
        labs.extend(d['labels'])
    timg = np.asarray(imgs[:40000])
    tlab = np.asarray(labs[:40000], 'i')
    vimg = np.asarray(imgs[40000:])
    vlab = np.asarray(labs[40000:], 'i')

    d = extract('cifar-10-batches-py/test_batch')
    simg = d['data']
    slab = d['labels']

    tar.close()

    if labels:
        return (timg, tlab), (vimg, vlab), (simg, slab)
    return (timg, ), (vimg, ), (simg, )
def load_cifar ( flatten = True , labels = False ) : def extract ( name ) : print ( 'extracting data from {}' . format ( name ) ) h = tar . extractfile ( name ) if sys . version_info < ( 3 , ) : d = pickle . load ( h ) else : d = pickle . load ( h , encoding = 'bytes' ) for k in list ( d ) : d [ k . decode ( 'utf8' ) ] = d [ k ] h . close ( ) img = d [ 'data' ] . reshape ( ( - 1 , 3 , 32 , 32 ) ) . transpose ( ( 0 , 2 , 3 , 1 ) ) . astype ( 'f' ) / 128 - 1 if flatten : img = img . reshape ( ( - 1 , 32 * 32 * 3 ) ) d [ 'data' ] = img return d fn = find ( 'cifar10.tar.gz' , 'http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz' ) tar = tarfile . open ( fn ) imgs = [ ] labs = [ ] for i in range ( 1 , 6 ) : d = extract ( 'cifar-10-batches-py/data_batch_{}' . format ( i ) ) imgs . extend ( d [ 'data' ] ) labs . extend ( d [ 'labels' ] ) timg = np . asarray ( imgs [ : 40000 ] ) tlab = np . asarray ( labs [ : 40000 ] , 'i' ) vimg = np . asarray ( imgs [ 40000 : ] ) vlab = np . asarray ( labs [ 40000 : ] , 'i' ) d = extract ( 'cifar-10-batches-py/test_batch' ) simg = d [ 'data' ] slab = d [ 'labels' ] tar . close ( ) if labels : return ( timg , tlab ) , ( vimg , vlab ) , ( simg , slab ) return ( timg , ) , ( vimg , ) , ( simg , )
Load the CIFAR10 image dataset.
Load the CIFAR10 image dataset .