Классификация ML: precision, recall, порог и дисбаланс — задачи

Задачи ML на predict_proba, порог классификации, precision, recall и дисбаланс классов.

Состав подборки: 7 задач на код. Условия и формат проверки указаны на странице каждой задачи.

Разберите маленький пример

В наборе 99 отрицательных случаев и один положительный. Постоянный прогноз «отрицательный» даёт accuracy 99%, но не находит единственный положительный случай. Поэтому оценка зависит от цели и цены пропусков, а не только от процента правильных ответов.

На что обратить внимание

  • Порядок колонок predict_proba определяется classes_; не угадывайте колонку нужного класса.
  • Повышение порога меняет набор положительных предсказаний; проверьте FP и FN.
  • Подбирайте порог на валидационных данных, сохраняя независимую проверку результата.
  • При небольшом наборе проверьте, сохранились ли представители классов после разбиения.

Порядок практики

  1. predict_proba и classes_: найдите вероятность нужного класса — код.
  2. Порог классификации 0.4 и 0.5: какие метки изменятся — код.
  3. Разбиение train/test в scikit-learn: stratify и редкий класс — код.
  4. Accuracy при дисбалансе классов: сравнение с baseline — код.
  5. Порог классификации по цене FN и FP: precision и recall — код.
  6. DummyClassifier most_frequent: baseline для редкого класса — код.
  7. False negatives модели: какие положительные случаи пропущены — код.

Куда двигаться дальше

Основы обучения и проверки модели — бесплатный курс первой ML-модели на Python.

Практика метрик регрессии.

Классификация ML: precision, recall, порог и дисбаланс — задачи