def supperclassify(train_set, train_label, test_set, test_label): '''Different methods''' train_voted = voting(train_set) aux = train_voted == train_label correct = sum(aux.astype(int)) _accuracy = (correct * 100) / len(train_label) _precision, _recall, _f1score, _support = ut.get_measures_for_each_class( train_label, train_voted) print 'Estimator VOTING' print 'Average Accuracy:\t', _accuracy print 'Average Precision:\t', _precision print 'Average Recall:\t', _recall print 'Average F1 Measure:\t', _f1score print '\n' lambdas = weighted_voting_getlambdas(train_set, train_label) results = weighted_voting(test_set, lambdas) aux = results == test_label correct = sum(aux.astype(int)) _accuracy = (correct * 100) / len(test_label) _precision, _recall, _f1score, _support = ut.get_measures_for_each_class( test_label, results) print 'Estimator W_VOTING' print 'Average Accuracy:\t', _accuracy print 'Average Precision:\t', _precision print 'Average Recall:\t', _recall print 'Average F1 Measure:\t', _f1score rf = clf.classifier_randomForest(train_set, train_label) results = clf.evaluateResults(rf, test_set, test_label, estimator_name='RF') lr = clf.logistic_regression(train_set, train_label) results = clf.evaluateResults(lr, test_set, test_label, estimator_name='LR') svm = clf.classifier_svm(train_set, train_label) results = clf.evaluateResults(svm, test_set, test_label, estimator_name='SVM') rbf = clf.rbf_classifier(train_set, train_label) results = clf.evaluateResults(rbf, test_set, test_label, estimator_name='RBF')
def supperclassify(train_set, train_label, test_set, test_label): '''Different methods''' train_voted = voting(train_set) aux = train_voted == train_label correct = sum(aux.astype(int)) _accuracy = (correct * 100) / len(train_label) _precision, _recall, _f1score, _support = ut.get_measures_for_each_class(train_label, train_voted) print 'Estimator VOTING' print 'Average Accuracy:\t', _accuracy print 'Average Precision:\t', _precision print 'Average Recall:\t', _recall print 'Average F1 Measure:\t', _f1score print '\n' lambdas = weighted_voting_getlambdas(train_set, train_label) results = weighted_voting(test_set, lambdas) aux = results == test_label correct = sum(aux.astype(int)) _accuracy = (correct * 100) / len(test_label) _precision, _recall, _f1score, _support = ut.get_measures_for_each_class(test_label, results) print 'Estimator W_VOTING' print 'Average Accuracy:\t', _accuracy print 'Average Precision:\t', _precision print 'Average Recall:\t', _recall print 'Average F1 Measure:\t', _f1score rf = clf.classifier_randomForest(train_set, train_label) results = clf.evaluateResults(rf, test_set, test_label, estimator_name='RF') lr = clf.logistic_regression(train_set, train_label) results = clf.evaluateResults(lr, test_set, test_label, estimator_name='LR') svm = clf.classifier_svm(train_set, train_label) results = clf.evaluateResults(svm, test_set, test_label, estimator_name='SVM') rbf = clf.rbf_classifier(train_set, train_label) results = clf.evaluateResults(rbf, test_set, test_label, estimator_name='RBF') # import pdb; pdb.set_trace()
def evaluateResults(estimator, test_set, test_labels, estimator_name='Unknown', file_name=''): result = estimator.predict(test_set) # print result aux = result == test_labels correct = sum(aux.astype(int)) _accuracy = (correct * 100) / len(test_set) cm = ut.get_confusion_matrix(test_labels, result, estimator_name, file_name=file_name) print '\n' _precision, _recall, _f1score, _support = ut.get_measures_for_each_class(test_labels, result) print 'Estimator ', estimator_name print 'Average Accuracy:\t', _accuracy print 'Average Precision:\t', _precision print 'Average Recall:\t', _recall print 'Average F1 Measure:\t', _f1score print '\n' return result, _accuracy, _precision, _recall, _f1score