num_svms = 6 width = 0.5 svmList = [None] * num_svms trainfeatList = [None] * num_svms traindatList = [None] * num_svms trainlabList = [None] * num_svms trainlabsList = [None] * num_svms kernelList = [None] * num_svms for i in range(num_svms): pos = util.get_realdata(True) neg = util.get_realdata(False) traindatList[i] = concatenate((pos, neg), axis=1) trainfeatList[i] = util.get_realfeatures(pos, neg) trainlabsList[i] = util.get_labels(True) trainlabList[i] = util.get_labels() kernelList[i] = GaussianKernel(trainfeatList[i], trainfeatList[i], width) svmList[i] = LibSVM(10, kernelList[i], trainlabList[i]) for i in range(num_svms): print "Training svm nr. %d" % (i) currentSVM = svmList[i] currentSVM.train() print currentSVM.get_num_support_vectors() print "Done." x, y, z = util.compute_output_plot_isolines(currentSVM, kernelList[i], trainfeatList[i]) subplot(num_svms / 2, 2, i + 1) pcolor(x, y, z)
from pylab import plot,grid,title,subplot,xlabel,ylabel,text,subplots_adjust,fill_between,mean,connect,show from shogun.Kernel import GaussianKernel from shogun.Classifier import LibSVM, LDA from shogun.Evaluation import PRCEvaluation import util util.set_title('PRC example') util.DISTANCE=0.5 subplots_adjust(hspace=0.3) pos=util.get_realdata(True) neg=util.get_realdata(False) features=util.get_realfeatures(pos, neg) labels=util.get_labels() # classifiers gk=GaussianKernel(features, features, 1.0) svm = LibSVM(1000.0, gk, labels) svm.train() lda=LDA(1,features,labels) lda.train() ## plot points subplot(211) plot(pos[0,:], pos[1,:], "r.") plot(neg[0,:], neg[1,:], "b.") grid(True) title('Data',size=10) # plot PRC for SVM subplot(223)
num_svms=6 width=0.5 svmList = [None]*num_svms trainfeatList = [None]*num_svms traindatList = [None]*num_svms trainlabList = [None]*num_svms trainlabsList = [None]*num_svms kernelList = [None]*num_svms for i in range(num_svms): pos=util.get_realdata(True) neg=util.get_realdata(False) traindatList[i] = concatenate((pos, neg), axis=1) trainfeatList[i] = util.get_realfeatures(pos, neg) trainlabsList[i] = util.get_labels(True) trainlabList[i] = util.get_labels() kernelList[i] = GaussianKernel(trainfeatList[i], trainfeatList[i], width) svmList[i] = LibSVM(10, kernelList[i], trainlabList[i]) for i in range(num_svms): print "Training svm nr. %d" % (i) currentSVM = svmList[i] currentSVM.train() print currentSVM.get_num_support_vectors() print "Done." x, y, z=util.compute_output_plot_isolines( currentSVM, kernelList[i], trainfeatList[i]) subplot(num_svms/2, 2, i+1) pcolor(x, y, z, shading='interp')