def __init__(self, testing=True, binary_output=False): """ @param testing: Should be True if test data is to be plottet. Otherwise False. @param image_data: If the testing should be done on image data. @param binary_output: If the output of the DBN must be binary. """ if not check_for_data: print 'No DBN data or testing data.' return self.status = -1 self.output = [] self.testing = testing self.binary_output = binary_output try: self.output_data = s.load(open('output/output_data.p', 'rb')) self.class_indices = s.load(open('output/class_indices.p', 'rb')) except: self.output_data = generate_output_for_test_data( binary_output=self.binary_output) if testing else generate_output_for_train_data( binary_output=self.binary_output) self.class_indices = get_all_class_indices(training=False) if testing else get_all_class_indices() s.dump([out.tolist() for out in self.output_data], open('output/output_data.p', 'wb')) s.dump(self.class_indices, open('output/class_indices.p', 'wb')) self.output_data = np.array(self.output_data)
def __generate_output_data(self): """ Generate the output data of the DBN so that it can be visualised. """ if not len(self.output_data) == 0: return try: self.output_data = s.load(open('output/output_data.p', 'rb')) self.class_indices = s.load(open('output/class_indices.p', 'rb')) if not self.classes_to_visualise == None: self.__filter_output_data(self.classes_to_visualise) except: self.output_data = generate_output_for_test_data( image_data=self.image_data, binary_output=self.binary_output ) if self.testing else generate_output_for_train_data( image_data=self.image_data, binary_output=self.binary_output) self.class_indices = get_all_class_indices( training=False) if self.testing else get_all_class_indices() if not self.classes_to_visualise == None: self.__filter_output_data(self.classes_to_visualise) s.dump([out.tolist() for out in self.output_data], open('output/output_data.p', 'wb')) s.dump(self.class_indices, open('output/class_indices.p', 'wb')) self.legend = get_class_names_for_class_indices( list(set(sorted(self.class_indices))))
def __generate_output_data(self): """ Generate the output data of the DBN so that it can be visualised. """ if not len(self.output_data) == 0: return try: self.output_data = s.load(open('output/output_data.p', 'rb')) self.class_indices = s.load(open('output/class_indices.p', 'rb')) if not self.classes_to_visualise == None: self.__filter_output_data(self.classes_to_visualise) except: self.output_data = generate_output_for_test_data(image_data=self.image_data, binary_output=self.binary_output) if self.testing else generate_output_for_train_data( image_data=self.image_data, binary_output=self.binary_output) self.class_indices = get_all_class_indices(training=False) if self.testing else get_all_class_indices() if not self.classes_to_visualise == None: self.__filter_output_data(self.classes_to_visualise) s.dump([out.tolist() for out in self.output_data], open('output/output_data.p', 'wb')) s.dump(self.class_indices, open('output/class_indices.p', 'wb')) self.legend = get_class_names_for_class_indices(list(set(sorted(self.class_indices))))