#sidx = random.sample(np.where(ytrue == 0)[0], supevised_data_points/2)+random.sample(np.where(ytrue == 1)[0], supevised_data_points/2) ys[sidx] = ytrue[sidx] Xsupervised = Xs[ys != -1, :] ysupervised = ys[ys != -1] # compare models # lbl = "Purely supervised SVM:" # print (lbl) # model = sklearn.svm.SVC(kernel=kernel, probability=True) # model.fit(Xsupervised, ysupervised) # evaluate_and_plot(model, Xs, ys, ytrue, lbl, 1) lbl = "S3VM (Gieseke et al. 2012):" print(lbl) model = scikitTSVM.SKTSVM(kernel=kernel) model.fit(Xs, ys.astype(int)) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 2) # lbl = "CPLE(pessimistic) SVM:" # print (lbl) # model = CPLELearningModel(sklearn.svm.SVC(kernel=kernel, probability=True), predict_from_probabilities=True) # model.fit(Xs, ys.astype(int)) # evaluate_and_plot(model, Xs, ys, ytrue, lbl, 3) # # lbl = "CPLE(optimistic) SVM:" # print (lbl) # CPLELearningModel.pessimistic = False # model = CPLELearningModel(sklearn.svm.SVC(kernel=kernel, probability=True), predict_from_probabilities=True) # model.fit(Xs, ys.astype(int)) # evaluate_and_plot(model, Xs, ys, ytrue, lbl, 4, block=True)
Xs[:, 1] > np.mean(Xs[:, 1]))) * 1 ys = np.array([-1] * N) sidx = np.append(np.random.choice(np.where(ytrue == 0)[0], supevised_data_points // 2), np.random.choice(np.where(ytrue == 1)[0], supevised_data_points // 2)) ys[sidx] = ytrue[sidx] Xsupervised = Xs[ys != -1, :] ysupervised = ys[ys != -1] # compare models lbl = "Purely supervised SVM:" print(lbl) model = sklearn.svm.SVC(kernel=kernel, probability=True) model.fit(Xsupervised, ysupervised) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 1) lbl = "S3VM (Gieseke et al. 2012):" print(lbl) model = scikitTSVM.SKTSVM(kernel=kernel) model.fit(Xs, ys) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 2) lbl = "CPLE(pessimistic) SVM:" print(lbl) model = CPLELearningModel(sklearn.svm.SVC(kernel=kernel, probability=True), predict_from_probabilities=True) model.fit(Xs, ys) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 3) lbl = "CPLE(optimistic) SVM:" print(lbl)
ys = np.array([-1] * N) sidx = random.sample(np.where(ytrue == 0)[0], supevised_data_points / 2) + random.sample( np.where(ytrue == 1)[0], supevised_data_points / 2 ) ys[sidx] = ytrue[sidx] Xsupervised = Xs[ys != -1, :] ysupervised = ys[ys != -1] # compare models lbl = "Purely supervised SVM:" print lbl model = sklearn.svm.SVC(kernel=kernel, probability=True) model.fit(Xsupervised, ysupervised) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 1) lbl = "S3VM (Gieseke et al. 2012):" print lbl model = scikitTSVM.SKTSVM(kernel=kernel) model.fit(Xs, ys) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 2) lbl = "CPLE(pessimistic) SVM:" print lbl model = CPLELearningModel(sklearn.svm.SVC(kernel=kernel, probability=True), predict_from_probabilities=True) model.fit(Xs, ys) evaluate_and_plot(model, Xs, ys, ytrue, lbl, 3)