Mercurial > ift6266
changeset 325:048898c1ee55
Ajout d'une fonction pour calculer l'erreur effectuee par le modele sur un ensemble pre-determine
author | SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca> |
---|---|
date | Fri, 09 Apr 2010 15:49:42 -0400 |
parents | 1763c64030d1 |
children | b762ac18a2d7 |
files | deep/stacked_dae/v_sylvain/sgd_optimization.py |
diffstat | 1 files changed, 13 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/deep/stacked_dae/v_sylvain/sgd_optimization.py Thu Apr 08 11:22:11 2010 -0400 +++ b/deep/stacked_dae/v_sylvain/sgd_optimization.py Fri Apr 09 15:49:42 2010 -0400 @@ -341,6 +341,19 @@ self.classifier.params[idx].value=theano._asarray(copy(x),dtype=theano.config.floatX) else: self.classifier.params[idx].value=copy(x) + + #Calculate error over the training set (or a part of) + def training_error(self,data): + # create a function to compute the mistakes that are made by the model + # on the validation set, or testing set + test_model = \ + theano.function( + [self.classifier.x,self.classifier.y], self.classifier.errors) + + iter2 = data.train(self.hp.minibatch_size,bufsize=buffersize) + train_losses2 = [test_model(x,y) for x,y in iter2] + train_score2 = numpy.mean(train_losses2) + print "Training error is: " + str(train_score2)