from anna.datasets import supervised_dataset

import checkpoints
from models import CNNModel

print("Start")

pid = os.getpid()
print("PID: {}".format(pid))
f = open("pid", "wb")
f.write(str(pid) + "\n")
f.close()

model = CNNModel("experiment", "./", learning_rate=1e-2)
checkpoint = checkpoints.unsupervised_layer3
util.set_parameters_from_unsupervised_model(model, checkpoint)
monitor = util.Monitor(model)

# Add dropout
model.fc4.dropout = 0.5
model._compile()

# Loading CIFAR-10 dataset
print("Loading Data")
data_path = "/data/cifar10/"
reduced_data_path = os.path.join(data_path, "reduced", "cifar10_100")

train_data = numpy.load(os.path.join(reduced_data_path, "train_X_split_0.npy"))
train_labels = numpy.load(os.path.join(reduced_data_path, "train_y_split_0.npy"))
test_data = numpy.load("/data/cifar10/test_X.npy")
test_labels = numpy.load("/data/cifar10/test_y.npy")
from anna.datasets import supervised_dataset

import checkpoints
from models import CNNModel

print('Start')

pid = os.getpid()
print('PID: {}'.format(pid))
f = open('pid', 'wb')
f.write(str(pid)+'\n')
f.close()

model = CNNModel('experiment', './', learning_rate=1e-2)
checkpoint = checkpoints.unsupervised_layer3
util.set_parameters_from_unsupervised_model(model, checkpoint)
monitor = util.Monitor(model)

# Add dropout
model.fc4.dropout = 0.5
model._compile()

# Loading CIFAR-10 dataset
print('Loading Data')
train_data = numpy.load('/data/cifar10/train_X.npy')
train_labels = numpy.load('/data/cifar10/train_y.npy')
test_data = numpy.load('/data/cifar10/test_X.npy')
test_labels = numpy.load('/data/cifar10/test_y.npy')

train_dataset = supervised_dataset.SupervisedDataset(train_data, train_labels)
test_dataset = supervised_dataset.SupervisedDataset(test_data, test_labels)