Exemplo n.º 1
0
Arquivo: cnn.py Projeto: cannonja/jc2
from mr.datasets.mnist import MnistDataset
from mr.learn.scaffold import Scaffold
from mr.learn.convolve import ConvolveLayer
from mr.learn.convolve import PoolLayer
from mr.learn.unsupervised.lca import Lca
from mr.learn.supervised.perceptron import Perceptron

## Load images
nload = 70000
#train, test, vp = MnistDataset(nload).split(nload * 1 // 7)
train, test, vp = MnistDataset(nload).split(10000)

## Set up model
print ("Building model")
model = Scaffold()
c = ConvolveLayer(layer = Lca(15), visualParams = vp, convSize = 7,
            convStride = 3)
c._init(len(train[0][0]), None)
model.layer(c)
#p = PoolLayer(visualParams = c.visualParams)
#model.layer(p)
model.layer(Perceptron())

## Train and test model
print ("Training model")
model.fit(*train)
print (model.layers[0].nOutputs)
print (model.layers[0].nOutputsConvolved)
path = 'visualize.png'
path2 = 'visualize1.png'
model.visualize(vp, path)
Exemplo n.º 2
0
test_csv = [os.path.join(folder, 'test', i,
                file_pre + str(i).zfill(3) + '.csv') for i in test_folders]



## Initialize class and read annotation file
start = datetime.datetime.now()
print ("Loading video data")
t = st(w_new, videos_to_train, videos_to_test, train_csv, test_csv, tau)
train, test, vp = t.split()
stop = datetime.datetime.now()
print ("Total min to load: {}".format((stop-start).total_seconds() / 60))

## Set up model
print ("Building model")
model = Scaffold()
c = ConvolveLayer(layer = Lca(15), visualParams = vp, convSize = cnn_params[0],
            convStride = cnn_params[1])
c.init(len(train[0][0]), None)
model.layer(c)
p = PoolLayer(visualParams = c.visualParams)
model.layer(p)
model.layer(Perceptron())

## Train and test model
print ("Training model")
start = datetime.datetime.now()
model.fit(*train)
print (model.layers[0].nOutputs)
print (model.layers[0].nOutputsConvolved)