Exemple #1
0
def main():
    import sip
    from PyQt4.QtGui import QApplication
    from Orange.classification import logistic_regression, svm
    from Orange.evaluation import testing

    app = QApplication([])
    w = OWLiftCurve()
    w.show()
    w.raise_()

    data = Orange.data.Table("ionosphere")
    results = testing.CrossValidation(
        data,
        [logistic_regression.LogisticRegressionLearner(penalty="l2"),
         logistic_regression.LogisticRegressionLearner(penalty="l1"),
         svm.SVMLearner(probability=True),
         svm.NuSVMLearner(probability=True)
         ],
        store_data=True
    )
    results.fitter_names = ["LR l2", "LR l1", "SVM", "Nu SVM"]
    w.set_results(results)
    rval = app.exec_()

    sip.delete(w)
    del w
    app.processEvents()
    del app
    return rval
Exemple #2
0
 def test_NuSVM(self):
     n = int(0.7 * self.data.X.shape[0])
     learn = svm.NuSVMLearner(nu=0.01)
     clf = learn(self.data[:n])
     z = clf(self.data[n:])
     self.assertTrue(
         np.sum(z.reshape((-1, 1)) == self.data.Y[n:]) > 0.7 * len(z))
    def apply(self):
        kernel = ["linear", "poly", "rbf", "sigmoid"][self.kernel_type]
        common_args = dict(kernel=kernel,
                           degree=self.degree,
                           gamma=self.gamma,
                           coef0=self.coef0,
                           tol=self.tol,
                           probability=True,
                           preprocessors=self.preprocessors)
        if self.svmtype == 0:
            learner = svm.SVMLearner(C=self.C, **common_args)
        else:
            learner = svm.NuSVMLearner(nu=self.nu, **common_args)
        learner.name = self.learner_name

        classifier = None
        sv = None
        if self.data is not None:
            classifier = learner(self.data)
            classifier.name = self.learner_name
            sv = self.data[classifier.skl_model.support_]

        self.send("Learner", learner)
        self.send("Classifier", classifier)
        self.send("Support vectors", sv)
Exemple #4
0
def main():
    import gc
    import sip
    from PyQt4.QtGui import QApplication
    from Orange.classification import logistic_regression, svm

    app = QApplication([])
    w = OWROCAnalysis()
    w.show()
    w.raise_()

#     data = Orange.data.Table("iris")
    data = Orange.data.Table("ionosphere")
    results = Orange.evaluation.testing.CrossValidation(
        data,
        [logistic_regression.LogisticRegressionLearner(),
         logistic_regression.LogisticRegressionLearner(penalty="l1"),
         svm.SVMLearner(probability=True),
         svm.NuSVMLearner(probability=True)],
        k=5,
        store_data=True,
    )
    results.fitter_names = ["Logistic", "Logistic (L1 reg.)", "SVM", "NuSVM"]
    w.set_results(results)

    rval = app.exec_()
    w.deleteLater()
    sip.delete(w)
    del w
    app.processEvents()
    sip.delete(app)
    del app
    gc.collect()
    return rval