Как я могу оценить классификатор SVM с помощью данных, "reps.csv" и "label.csv", которые являются массивами данных, генерируемых Opeface?
О коде и параметрах:
var FacesNum;
OpenFace извлекает интеграцию лица, поэтому у меня будет массив int [128] для каждого лица, поэтому, если у меня будет еще одно лицо, у меня будет массив [FacesNum] [128] и так далее.Это будет мой X. Он также генерирует другой массив [FacesNum] [2] с номером лица и именем его файла.Это было бы мое и.
чтобы заставить меня использовать LabelEncoder (), а также создателей Openface.PS: Для y массив начинается с 1.
X = embeddings
y = labelsNum
cv = StratifiedKFold (y, n_folds = 5)
classifier = svm.SVC (kernel = 'linear', probability = True,
random_state = random_state)
mean_tpr = 0.0
mean_fpr = np.linspace (0, 1, 100)
all_tpr = []
for i (train, test) in enumerate (cv):
probas_ = classifier.fit (X [train] and [train]). predict_proba (X [test])
fpr, tpr, thresholds = roc_curve (and [test] .ravel (), probas_ [:, 1])
mean_tpr + = interp (mean_fpr, fpr, tpr)
mean_tpr [0] = 0.0
roc_auc = auc (fpr, tpr)
Я пытаюсь использовать «Операционную характеристику приемника (ROC) с перекрестной проверкой» из Scikit-Learn lib 0.17.
Но я получаю эту ошибку
raise ValueError (" Data is not binary and pos_label is not specified ")
в первой строке for
Что я пытаюсь сделать, возможно?