Sto lavorando su compiti di classificazione di immagini e ho deciso di utilizzare il prototipo di reti neurali + Lasagne + Nolearn. Tutti gli esempi standard come la classificazione dei numeri MNIST funzionano bene, ma i problemi appaiono quando provo a lavorare con le mie immagini.Ingresso immagine rete Theano/Lasagne/Nolearn Rete neurale
Desidero utilizzare le immagini a 3 canali, non in scala di grigi. E c'è il codice in cui sto cercando di ottenere matrici dalle immagini:
img = Image.open(item)
img = ImageOps.fit(img, (256, 256), Image.ANTIALIAS)
img = np.asarray(img, dtype = 'float64')/255.
img = img.transpose(2,0,1).reshape(3, 256, 256)
X.append(img)
Ecco il codice di NN e il suo montaggio:
X, y = simple_load("new")
X = np.array(X)
y = np.array(y)
net1 = NeuralNet(
layers=[ # three layers: one hidden layer
('input', layers.InputLayer),
('hidden', layers.DenseLayer),
('output', layers.DenseLayer),
],
# layer parameters:
input_shape=(None, 65536), # 96x96 input pixels per batch
hidden_num_units=100, # number of units in hidden layer
output_nonlinearity=None, # output layer uses identity function
output_num_units=len(y), # 30 target values
# optimization method:
update=nesterov_momentum,
update_learning_rate=0.01,
update_momentum=0.9,
regression=True, # flag to indicate we're dealing with regression problem
max_epochs=400, # we want to train this many epochs
verbose=1,
)
net1.fit(X, y)
ricevo eccezioni come questo:
Traceback (most recent call last):
File "las_mnist.py", line 39, in <module>
net1.fit(X[i], y[i])
File "/usr/local/lib/python2.7/dist-packages/nolearn/lasagne.py", line 266, in fit
self.train_loop(X, y)
File "/usr/local/lib/python2.7/dist-packages/nolearn/lasagne.py", line 273, in train_loop
X, y, self.eval_size)
File "/usr/local/lib/python2.7/dist-packages/nolearn/lasagne.py", line 377, in train_test_split
kf = KFold(y.shape[0], round(1./eval_size))
IndexError: tuple index out of range
Quindi, in quale formato si "alimentano" le reti con i dati delle immagini? Grazie per le risposte o eventuali suggerimenti!