view pylearn/datasets/flickr.py @ 614:f6c74f34cd35

Use usual data_root
author Pascal Lamblin <lamblinp@iro.umontreal.ca>
date Sat, 17 Jan 2009 00:34:14 -0500
parents 28f7dc848efc
children 4a7d413c3425
line wrap: on
line source

"""
Routines to load variations on the Flickr image dataset.
"""
from __future__ import absolute_import

import os
import numpy

from ..io import filetensor
from .config import data_root
from .dataset import Dataset


path_test_10class ='flickr_10classes_test.ft'

path_train_10class = 'flickr_10classes_train.ft'

path_valid_10class = 'flickr_10classes_valid.ft'

def basic_10class(folder = None):
    """Return the basic flickr image classification problem.
    The images are 75x75, and there are 7500 training examples.
    """
    root = os.path.join(data_root(), 'flickr') if folder is None else folder
    train = filetensor.read(open(os.path.join(root, path_train_10class)))
    valid = filetensor.read(open(os.path.join(root, path_valid_10class)))
    test = filetensor.read(open(os.path.join(root, path_test_10class)))

    rval = Dataset()

    rval.train = Dataset.Obj(
            x=train[:, 0:-1],
            y=numpy.asarray(train[:, -1], dtype='int64'))
    rval.valid = Dataset.Obj(
            x=valid[:, 0:-1],
            y=numpy.asarray(valid[:, -1], dtype='int64'))
    rval.test = Dataset.Obj(
            x=test[:, 0:-1],
            y=numpy.asarray(test[:, -1], dtype='int64'))

    rval.n_classes = 10
    rval.img_shape = (75,75)

    return rval

def translations_10class():
    raise NotImplementedError('TODO')