def get_test_error(self):
     data, filenames = self.get_test_patches_and_filenames()
     if self.test_on_images:
         print 'testing on images'
         probabilities, test_results = self.get_predictions(data)
                
         fileProbs, fileLabels, fileIDs = ModelEvaluation.GetUnormalizedJointLogProbability(probabilities, data[1].reshape(-1), filenames)
         filePredictions = ModelEvaluation.GetPredictions(fileProbs)
         fileAccuracy, misclassifiedFiles = ModelEvaluation.CalculateAccuracy(filePredictions, fileLabels)
         
         nExamples = test_results[1]
         results =  ({'logprob' : [test_results[0]['logprob'][0], (1-fileAccuracy) * test_results[1]]}, test_results[1])
         if self.test_only: # Print the individual batch results for safety
             print str(results)
     else:
         print 'not testing on images'
         self.libmodel.startBatch(data, True)
         results = self.finish_batch()
     self.regular_test_outputs += [IGPUModel.get_test_error(self)]
     return results