In [1]:
from opendeep.data.dataset import MemoryDataset
import numpy

In [2]:
# create some fake random data to demonstrate creating a MemoryDataset
# train set
fake_train_X = numpy.random.uniform(0, 1, size=(100, 5))
fake_train_Y = numpy.random.binomial(n=1, p=0.5, size=100)
# valid set
fake_valid_X = numpy.random.uniform(0, 1, size=(30, 5))
fake_valid_Y = numpy.random.binomial(n=1, p=0.5, size=30)
# test set (showing you can mix and match the types of inputs - as long as they can be cast to numpy arrays
fake_test_X = [[0.1, 0.2, 0.3, 0.4, 0.5],
               [0.9, 0.8, 0.7, 0.6, 0.5]]
fake_test_Y = [0, 1]

# create the dataset!
# note that everything except for train_X is optional. that would be bare-minimum for an unsupervised model.
data = MemoryDataset(train_X=fake_train_X, train_Y=fake_train_Y,
                     valid_X=fake_valid_X, valid_Y=fake_valid_Y,
                     test_X=fake_test_X, test_Y=fake_test_Y)

In [12]:
data.__dict__


Out[12]:
{'_test_shape': (2, 5),
 '_train_shape': (100, 5),
 '_valid_shape': (30, 5),
 'test_X': memory_test_x,
 'test_Y': memory_test_y,
 'train_X': memory_train_x,
 'train_Y': memory_train_y,
 'valid_X': memory_valid_x,
 'valid_Y': memory_valid_y}

In [13]:
n_examples = 100

In [28]:
data.train_X.get_value()
# data.test_Y.get_value()


Out[28]:
(100, 5)