Вопрос или проблема
Я работаю над задачей бинарной классификации, в которой в датасете содержится около 5% положительных классов. Я разделил датасет на 70% для обучения и 30% для тестирования. Я использовал тестовые данные только один раз для оценки производительности модели.
Из-за этого дисбаланса я использовал SMOTE для увеличения объема меньшинства в обучающем датасете. Кроме того, я использовал кросс-валидацию и поиск по сетке для оптимизации производительности модели, следуя рекомендациям о том, как проводить увеличение, кросс-валидацию и поиск по сетке, чтобы избежать утечки данных.
Предполагая, что я правильно провожу процедуру обучения, я интересуюсь, как сообщить о результатах классификации на тестовых данных. Мое понимание состоит в том, что для несбалансированных датасетов следует использовать AUPRC (см. хорошее объяснение здесь). Итак, если я решаю проблему дисбаланса в обучении, нужно ли мне сообщать результаты, используя AUPRC, или нормально использовать традиционный ROC-AUC?
Спасибо за вашу помощь заранее.
Ваши обучающие и тестовые данные должны поступать из одной распределительной выборки, поэтому если обучающий датасет несбалансирован, то тестовый, вероятно, тоже будет.
Факт, что вы увеличили объем меньшинства в обучающем датасете, не влияет на дисбаланс в тестовом датасете. Так что да, вам следует использовать специфические метрики для учета несбалансированности также при сообщении о результатах на тестовом наборе, так как традиционные метрики могут не отражать слишком большие различия в производительности между различными предсказателями.
Ответ или решение
Вопрос о том, какие метрики использовать для оценки результатов классификации на несбалансированном наборе данных, является ключевым в процессе разработки и внедрения моделей машинного обучения, особенно в задачах бинарной классификации. В вашем случае, с набором данных, содержащим лишь 5% положительных образцов, важно рассмотреть, какие меры наиболее точно отразят эффективность вашей модели.
1. Понимание метрик: AUPRC vs ROC-AUC
AUPRC (Area Under Precision-Recall Curve) и ROC-AUC (Area Under Receiver Operating Characteristic Curve) — это две важные метрики, используемые для оценки качества классификаторов.
-
ROC-AUC показывает, насколько хорошо модель может дифференцировать положительные и отрицательные классы, однако при значительном дисбалансе классов эта метрика может ввести в заблуждение. Например, модель может иметь высокий ROC-AUC, даже если она просто классифицирует большинство примеров в негативный класс, игнорируя положительные.
-
AUPRC, с другой стороны, более чувствителен к дисбалансу классов и отображает компромисс между точностью и полнотой. В ваших условиях, когда положительный класс составляет всего 5% от общего числа, AUPRC будет более информативным показателем, поскольку учитывает, сколько из предсказанных положительных примеров действительно являются положительными и сколько положительных примеров было правильно классифицировано моделью.
2. Обработка несбалансированных данных
Вы правильно использовали SMOTE для увеличения количества образцов меньшинства в обучающем наборе данных и применили кросс-валидацию (CV) для оптимизации параметров модели. Это подход, который помогает предотвратить утечку данных и дает более надежную оценку производительности на обучающем наборе. Однако стоит помнить, что тестовый набор данных, к которому вы применяете модель, остается несбалансированным, и изменения, внесенные в обучающую выборку, не повлияют на распределение классов в тестовой выборке.
3. Рекомендации по отчетности
С учетом вышеуказанного, вам действительно следует использовать AUPRC для отчетности о результатах на тестовых данных. Это позволит вам более адекватно оценить качество модели с учётом реального распределения классов.
Следует подчеркнуть, что отчетность по метрике AUPRC может также улучшить восприятие конечных пользователей и заинтересованных сторон, так как отражает реальную эффективность модели в случае, когда правильная идентификация положительных классов имеет критическое значение (например, в медицинских задачах или в задаче обнаружения мошенничества).
4. Заключение
Итак, в условиях значительного дисбаланса классов и с учетом корректного обучения модели через применение SMOTE и кросс-валидации, вы должны использовать AUPRC в качестве основной метрики для оценки результатов классификации на тестовом наборе данных. Это будет способствовать более точному и информативному представлению о производительности вашей модели.