Exemple #1
0
 def train(self, features, labels):
     labels,names = normaliselabels(labels)
     if self.auto_weighting:
         nlabels = labels.max() + 1
         self.param.nr_weight = int(nlabels)
         self.param.weight_label = range(nlabels)
         self.param.weight = [(labels != i).mean() for i in xrange(nlabels)]
     problem = libsvm.svm_problem(labels.astype(float), features)
     model = libsvm.svm_model(problem, self.param)
     return libsvmModel(model, names, self.output_probability)
Exemple #2
0
def test_normaliselabels():
    np.random.seed(22)
    labels = np.zeros(120, np.uint8)
    labels[40:] += 1
    labels[65:] += 1
    reorder = np.argsort(np.random.rand(len(labels)))
    labels = labels[reorder]
    labels2, names = normaliselabels(labels)
    for new_n, old_n in enumerate(names):
        assert np.all((labels == old_n) == (labels2 == new_n))
Exemple #3
0
 def train(self, features, labels):
     labels, names = normaliselabels(labels)
     if self.auto_weighting:
         nlabels = labels.max() + 1
         self.param.nr_weight = int(nlabels)
         self.param.weight_label = list(range(nlabels))
         self.param.weight = [(labels != i).mean() for i in range(nlabels)]
     problem = libsvm.svm_problem(labels.astype(float), features)
     model = libsvm.svm_model(problem, self.param)
     return libsvmModel(model, names, self.output_probability)
def test_normaliselabels():
    np.random.seed(22)
    labels = np.zeros(120, np.uint8)
    labels[40:] += 1
    labels[65:] += 1
    reorder = np.argsort(np.random.rand(len(labels)))
    labels = labels[reorder]
    labels2,names = normaliselabels(labels)
    for new_n,old_n in enumerate(names):
        assert np.all( (labels == old_n) == (labels2 == new_n) )