Ejemplo n.º 1
0
    outputs = layers.softmax(outputs)
    return outputs, self.initializer 

activation = sys.argv[1]
filter_count = int(sys.argv[2])
model = PooledCNN(activation, filter_count, Initializer.DReLUInitializer(2.0))

optimizer_settings = {
  'lr'                : 0.01,
  'lr_decay_interval' : 1,
  'lr_decay_factor'   : 1.0,
  'optimizer'         : 'SGD',
  'weight_decay'      : 0
}

data = data_utility.load_cifar10(path='../utilities/cifar/', reshape=True, center=True, rescale=True)

solver_configuration = {
  'batch_size'         : 128,
  'data'               : data,
  'devices'            : GPU_utility.GPU_availability()[:3],
  'epoch'              : 60,
  'optimizer_settings' : optimizer_settings,
}

label = 'pooled-CNN-%s-%d-filters-lr-%f' % (activation, filter_count, optimizer_settings['lr'])

solver = Solver.MXSolver(model, **solver_configuration)
history = solver.train()
pickle.dump(history, open('../../models/%s-history' % label, 'wb'))
pickle.dump((solver.model.arg_params, solver.model.aux_params), open('../../models/%s-parameters' % label, 'wb'))
Ejemplo n.º 2
0
import minpy.numpy as np
import minpy.nn.model_builder as builder

from minpy.context import set_context, cpu, gpu
# set_context(gpu(0))
set_context(cpu())

import sys
sys.path.append('../../nn')
from custom_layers import *
from facility import *
from solver_primitives import *

sys.path.append('../')
from utilities.data_utility import load_cifar10
data = load_cifar10(path='../utilities/cifar/', center=True, rescale=True)
X = data[0][:16]

hidden_layers = 4
shapes = (1024, ) * hidden_layers + (10, )
activation = builder.ReLU
storage = {}
mlp = builder.Sequential()

for i, shape in enumerate(shapes[:-1]):
    mlp.append(builder.Affine(shape))
    mlp.append(builder.Export('affine%d' % i, storage))
    mlp.append(activation())
mlp.append(builder.Affine(shapes[-1]))

model = builder.Model(mlp, 'softmax', (3072, ))
Ejemplo n.º 3
0
import cPickle as pickle
import marshal
import mxnet as mx
import numpy as np

import sys

sys.path.append('..')
from utilities.data_utility import load_cifar10
data = load_cifar10('../utilities/cifar/', reshape=True)

sys.path.append('../../nn')

from MXInitializer import DReLUInitializer
initializer = DReLUInitializer(1.0)

from MXModels.ResidualNetwork import ResidualNetwork

# activation = 'ReLU'
activation = sys.argv[1]
symbol, _ = ResidualNetwork(3, activation, initializer)(data[0].shape)

args = symbol.list_arguments()
shapes, _, _ = symbol.infer_shape(data=data[0].shape)

parameters = {}
for arg, shape in zip(args, shapes):
    print arg
    parameters[arg] = mx.nd.zeros(shape, mx.cpu())
    initializer(arg, parameters[arg])