Exemple #1
0
def main():
    for file in [
            'data/breast-cancer-assignment5.txt', 'data/german-assignment5.txt'
    ]:
        data, labels, types = load_matrix_from_txt(file)
        splices = k_fold_split(10, data, labels)
        accuracies = []

        for i in range(10):
            train_indexes = splices[i][0]
            test_indexes = splices[i][1]

            train_data = np.copy(data[train_indexes])
            train_label = np.copy(labels[train_indexes])
            test_data = np.copy(data[test_indexes])
            test_label = np.copy(labels[test_indexes])

            boost = AdaBoost()
            boost.train(train_data, train_label, types)
            class_result = boost.test(test_data)

            accuracy = compute_accuracy(class_result, test_label)
            accuracies.append(accuracy)
            print 'accuracy: %f' % accuracy

        print('file: {}, mean: {}, std: {}'.format(file, np.mean(accuracies),
                                                   np.std(accuracies)))
Exemple #2
0
 def do_adaboost(self):
     if self.flag == 0:
         start = time.time()
         adaboost_instance = AdaBoost(self.train)
         adaboost_instance.create_and_train_classifiers()
         adaboost_instance.write_model(self.model_file)
         end = time.time()
         print 'Training Time :', (end - start) / 60, 'mins'
     else:
         start = time.time()
         adaboost_instance = AdaBoost(None)
         adaboost_instance.load_model(self.model_file)
         test_output = adaboost_instance.test(self.test, self.output_file)
         print test_output['accuracy'], '%'
         end = time.time()
         print 'Testing Time :', (end - start) / 60, 'mins'
Exemple #3
0
                images_data_vector=data_vector,
                all_images_ids=all_image_ids,
                images_counter=images_counter,
                decision_stumps=30,
            )
            trained_decision_tree.train()
            save_model_to_pickle(obj=trained_decision_tree,
                                 file_name="tree.pkl")
            save_model_to_txt(
                obj=trained_decision_tree,
                file_name="tree_model.txt",
                model="adaboost_decision_tree",
            )

            # Test after train
            trained_decision_tree.test(test_file_path="test_file.txt")
        else:
            # Test
            trained_decision_tree = load_model_from_pickle(
                file_name="tree.pkl")
            trained_decision_tree.test(test_file_path="test_file.txt")

    elif model == "nnet":
        if train_or_test == "train":
            trained_neural_network = start(
                layers=[
                    Dense(300),
                    Activation("relu"),
                    Dropout(0.2),
                    Dense(300),
                    Activation("relu"),