Esempio n. 1
0
File: LDAC.py Progetto: wypstudy/ML
def f(TrainIn, TrainOut, TestIn):
    print "init......"
    x = numpy.array(TrainIn)
    y = numpy.array(TrainOut)
    t = numpy.array(TestIn)

    print "learn......"
    ldac = mlpy.LDAC()
    ldac.learn(x, y)

    print "out......"
    re = ldac.pred(t)
    return re
Esempio n. 2
0
    def metric(self):
        totalTimer = Timer()
        with totalTimer:
            model = mlpy.LDAC()
            model.learn(self.data_split[0], self.data_split[1])

            if len(self.data) >= 2:
                predictions = model.pred(self.data[1])

        metric = {}
        metric["runtime"] = totalTimer.ElapsedTime()

        if len(self.data) == 3:
            confusionMatrix = Metrics.ConfusionMatrix(self.data[2],
                                                      predictions)
            metric['ACC'] = Metrics.AverageAccuracy(confusionMatrix)
            metric['MCC'] = Metrics.MCCMultiClass(confusionMatrix)
            metric['Precision'] = Metrics.AvgPrecision(confusionMatrix)
            metric['Recall'] = Metrics.AvgRecall(confusionMatrix)
            metric['MSE'] = Metrics.SimpleMeanSquaredError(
                self.data[2], predictions)

        return metric
Esempio n. 3
0
 def BuildModel(self, data, labels):
   # Create and train the classifier.
   lda = mlpy.LDAC()
   lda.learn(data, labels)
   return lda
Esempio n. 4
0
    'knn': [],
    'tree': []
}

for i in xrange(1):

    train, control = split_samples(d.alist)

    print 'training sample: ', len(train)
    x, y, fnames = prepareData(train)
    print 'control sample: ', len(control)
    xcontrol, ycontrol, fnames = prepareData(control)

    print '\ntest algorithms:'

    ld = mlpy.LDAC()
    ld.learn(x, y)
    test = ld.pred(xcontrol)  # test points
    print 'LDAC: %.1f percent predicted' % (100 * len(test[test == ycontrol]) /
                                            float(len(test)))
    dic['ld'].append(100 * len(test[test == ycontrol]) / float(len(test)))

    perc = mlpy.Perceptron()
    perc.learn(x, y)
    test = perc.pred(xcontrol)  # test points
    print 'Perceptron: %.1f percent predicted' % (
        100 * len(test[test == ycontrol]) / len(test))
    dic['perc'].append(100 * len(test[test == ycontrol]) / len(test))

    elnet = mlpy.ElasticNetC(lmb=0.01, eps=0.001)
    elnet.learn(x, y)
Esempio n. 5
0
        sys.exit(1)

    for d in range(len(datasets)):
        for k in range(K_FOLD_NUMBER):
            basic = BasicClassifiers(debug=DEBUG)
            filename = 'datasets/%s' % datasets[d][0]
            if basic.read_data(filepath=filename,
                               label_is_last=(bool)(datasets[d][1])) == False:
                print "Error with opening the file. Probably you have given wrong path"
                sys.exit(1)
            basic.prepare_data(k_fold_number=K_FOLD_NUMBER)
            basic.k_fold_cross_validation(k=k)

            size = len(basic.testing_label)

            ldac = mlpy.LDAC()
            ldac.learn(basic.training_data, basic.training_label)
            classified = 0
            for i in range(len(basic.testing_label)):
                if (int)(basic.testing_label[i]) == (int)(ldac.pred(
                        basic.testing_data[i])):
                    classified += 1
            fd.write("%s,%s,%d,%d,%d\n" %
                     (datasets[d][0], "LDAC", k, size, classified))

            knn = mlpy.KNN(k=3)
            knn.learn(basic.training_data, basic.training_label)
            classified = 0
            for i in range(len(basic.testing_label)):
                if (int)(basic.testing_label[i]) == (int)(knn.pred(
                        basic.testing_data[i])):