Exemple #1
0
def build(kernel, metric, keys_limit, svm_C, logs):
    trainX = genfromtxt('input/arcene_train.data', delimiter=' ')
    trainY = genfromtxt('input/arcene_train.labels', delimiter=' ')
    validX = genfromtxt('input/arcene_valid.data', delimiter=' ')
    validY = genfromtxt('input/arcene_valid.labels', delimiter=' ')

    keys = metric.build(trainX.transpose(),
                        trainY,
                        logs=logs,
                        limit=keys_limit)

    tX = []
    for x in trainX:
        tX.append(np.take(x, keys))

    tX = np.array(tX)

    clf = SVM(kernel=kernel.kernel, C=svm_C)
    clf.fit(tX, trainY)

    vX = []
    for x in validX:
        vX.append(np.take(x, keys))

    vX = np.array(vX)

    predict_arr = [clf.predict(x) for x in vX]

    confusion_matrix = Statistic.get_metrics(predict_arr, validY)
    f_measure = Statistic.get_f_measure(confusion_matrix)

    return keys, confusion_matrix, f_measure