Я работаю с scikit-learn для задачи классификации, чтобы предсказать выигрыш или потерю возможности.
я использовал кусок кода:Как интерпретировать roc_curve (тест, предсказания) в scikit-learn
fpr, tpr, thresholds =roc_curve(yTest,predictions)
И результат:
(array([ 0. , 0.2628946, 1. ]),
array([ 0. , 0.73692477, 1. ]),
array([2, 1, 0]))
Я знаю вычисления ППК с помощью РСП, TPR для различных порогов различной в диапазоне (1, 0). В идеале, то, что я знаю, должно быть между 1 и 0.
Но здесь пороговые значения составляют 2,1,0. Что понимать из этого и как интерпретировать это.
Пример кода выглядит нормально:
import numpy as np
from sklearn import metrics
y = np.array([1, 1, 2, 2])
scores = np.array([0.1, 0.4, 0.35, 0.8])
fpr, tpr, thresholds = metrics.roc_curve(y, scores, pos_label=2)
>>>fpr
array([ 0. , 0.5, 0.5, 1. ])
>>>tpr
array([ 0.5, 0.5, 1. , 1. ])
>>> thresholds
array([ 0.8 , 0.4 , 0.35, 0.1 ])
Мой predict_proba (yTest) являются:
[ 0.09573287 0.90426713]
[ 0.14987409 0.85012591]
[ 0.16348188 0.83651812]
...,
[ 0.13957409 0.86042591]
[ 0.04478675 0.95521325]
[ 0.03492729 0.96507271]
Можете ли вы поделиться значениями в массивах yTest и прогнозов? –
@AbhinavArora: Отредактировал мой вопрос –