def classifier_lda_modular (train_fname=traindat,test_fname=testdat,label_fname=label_traindat,gamma=3,num_threads=1): from modshogun import RealFeatures, BinaryLabels, LDA, CSVFile feats_train=RealFeatures(CSVFile(train_fname)) feats_test=RealFeatures(CSVFile(test_fname)) labels=BinaryLabels(CSVFile(label_fname)) lda=LDA(gamma, feats_train, labels) lda.train() bias=lda.get_bias() w=lda.get_w() predictions = lda.apply(feats_test).get_labels() return lda,predictions
def classifier_lda_modular(train_fname=traindat, test_fname=testdat, label_fname=label_traindat, gamma=3, num_threads=1): from modshogun import RealFeatures, BinaryLabels, LDA, CSVFile feats_train = RealFeatures(CSVFile(train_fname)) feats_test = RealFeatures(CSVFile(test_fname)) labels = BinaryLabels(CSVFile(label_fname)) lda = LDA(gamma, feats_train, labels) lda.train() bias = lda.get_bias() w = lda.get_w() predictions = lda.apply(feats_test).get_labels() return lda, predictions
title('Data',size=10) # plot PRC for SVM subplot(223) PRC_evaluation=PRCEvaluation() PRC_evaluation.evaluate(svm.apply(),labels) PRC = PRC_evaluation.get_PRC() plot(PRC[0], PRC[1]) fill_between(PRC[0],PRC[1],0,alpha=0.1) text(0.55,mean(PRC[1])/3,'auPRC = %.5f' % PRC_evaluation.get_auPRC()) grid(True) xlabel('Precision') ylabel('Recall') title('LibSVM (Gaussian kernel, C=%.3f) PRC curve' % svm.get_C1(),size=10) # plot PRC for LDA subplot(224) PRC_evaluation.evaluate(lda.apply(),labels) PRC = PRC_evaluation.get_PRC() plot(PRC[0], PRC[1]) fill_between(PRC[0],PRC[1],0,alpha=0.1) text(0.55,mean(PRC[1])/3,'auPRC = %.5f' % PRC_evaluation.get_auPRC()) grid(True) xlabel('Precision') ylabel('Recall') title('LDA (gamma=%.3f) PRC curve' % lda.get_gamma(),size=10) connect('key_press_event', util.quit) show()
# plot ROC for SVM subplot(223) ROC_evaluation=ROCEvaluation() ROC_evaluation.evaluate(svm.apply(),labels) roc = ROC_evaluation.get_ROC() print roc plot(roc[0], roc[1]) fill_between(roc[0],roc[1],0,alpha=0.1) text(mean(roc[0])/2,mean(roc[1])/2,'auROC = %.5f' % ROC_evaluation.get_auROC()) grid(True) xlabel('FPR') ylabel('TPR') title('LibSVM (Gaussian kernel, C=%.3f) ROC curve' % svm.get_C1(),size=10) # plot ROC for LDA subplot(224) ROC_evaluation.evaluate(lda.apply(),labels) roc = ROC_evaluation.get_ROC() plot(roc[0], roc[1]) fill_between(roc[0],roc[1],0,alpha=0.1) text(mean(roc[0])/2,mean(roc[1])/2,'auROC = %.5f' % ROC_evaluation.get_auROC()) grid(True) xlabel('FPR') ylabel('TPR') title('LDA (gamma=%.3f) ROC curve' % lda.get_gamma(),size=10) connect('key_press_event', util.quit) show()