Spark Java: оптимальный порог, используемый для расчета ROC в классе Spark BinaryClassificationMetrics - PullRequest
0 голосов
/ 06 сентября 2018

Я использую класс Spark mlib's BinaryClassificationMetrics для генерации метрик для вывода RandomForestClassificationModel. Я просмотрел документы Spark и смог сгенерировать thresholds, precisionByThreshold, recallByThreshold, roc и pr.

Я хотел знать, используется ли какое-либо конкретное пороговое значение при генерации roc. Это потому, что в ROC wikipedia говорится, что:

Кривая ROC создается путем построения графика зависимости истинного положительного значения (TPR) от уровня ложного положительного результата (FPR) при различных настройках порога.

Мне было интересно, используется ли какое-либо оптимальное пороговое значение или нет при создании ROC в Spark. Если нет, то почему?

1 Ответ

0 голосов
/ 18 декабря 2018

Я полагаю, что это 0,5, BinaryClassificationMetrics использует BinaryLabelCounter, метод подсчета меток которого выглядит следующим образом:

def +=(label: Double): BinaryLabelCounter = {
  // Though we assume 1.0 for positive and 0.0 for negative, the following check will handle
  // -1.0 for negative as well.
  if (label > 0.5) numPositives += 1L else numNegatives += 1L
  this
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...