Вопрос или проблема
Существует возможность назначения весов классов при обучении классификаторов, например, CatBoost. Насколько мне известно, это добавляет вес объектам при вычислении функции потерь, тем самым пенализируя ошибки на них больше или меньше. Теперь, если я уменьшил количество негативных образцов с соотношением подвыборки w
, обучил классификатор без весов, а затем откорректировал прогнозы с помощью формул отсюда
p = p' / ( p' + (1-p') / w)
где p
— это вероятность положительного прогноза на исходном наборе данных, а p'
— из подвыборки, получу ли я тот же результат, что и простой обучением классификатора на выборке с весом положительного класса, установленным на w
?
Кратко: нет для больших w
В теории использование весов классов или уменьшение выборки с корректировкой может привести к одинаковым результатам, если модель машинного обучения обучает все классы одинаково хорошо. На практике вы, вероятно, получите похожие результаты, если отношение подвыборки w не слишком велико (т.е. когда разница в количестве образцов на класс не слишком велика). Однако, если w слишком велико, модель может столкнуться с трудностями в эффективном обучении меньшинства класса. Если потеря от конкретного образца/группы образцов минимальна, модель может её игнорировать.
Веса классов, увеличение выборки или уменьшение выборки обычно используются для обеспечения сбалансированного представления классов, что помогает модели считать все классы одинаково важными и позволяет ей опираться на характеристики, а не на статистику частоты для различения. Однако эти методы не используются явно для калибровки. Калибровка обычно выполняется позже с использованием техник, специально предназначенных для этой цели.
Ответ или решение
Классовые веса и откалибровка вероятностей – это разные аспекты обучения моделей машинного обучения, и их не следует путать. Давайте разберемся подробнее.
Ответ на вопрос: Гарантируют ли классовые веса калибровку?
Классовые веса действительно используются для штрафования ошибок, связанных с определенными классами, но они отвечают в первую очередь за балансировку важности классов в функции потерь во время обучения. Это может помочь улучшить качество предсказаний для классов, которые представлены менее всего в тренировочном наборе данных. Однако это не обязательно означает, что модель будет автоматически калибрована.
Подход с использованием классовых весов:
При использовании классовых весов в процессе обучения, модель получает информацию о том, что ошибки для некоторых классов важнее, чем для других. Если веса классов заданы правильно, это может способствовать лучшему пониманию модели различных классов. Тем не менее, просто использование классовых весов не автоматически приводит к хорошей калибровке вероятностей. Калибровка связана с тем, насколько хорошо предсказанные вероятности отражают истинные вероятности.
Подход с использованием подвыборки и последующей калибровки:
С другой стороны, если вы производите подвыборку негативных примеров с некоторым коэффициентом w
и затем пересчитываете вероятности с помощью формулы:
p = p' / ( p' + (1-p') / w)
где p
– это вероятность положительного класса в исходном наборе данных, а p'
– это вероятность, полученная на подвыборке, то это может быть эффективным подходом для калибровки. Этот метод позволяет вернуть предсказанные вероятности к исходному соотношению классов.
Сравнение подходов:
Если значение w
(коэффициент подвыборки) не является слишком большим, можно ожидать, что оба подхода – использование классовых весов и подвыборка с последующей калибровкой – приведут к схожим результатам. Однако, когда w
становится слишком большим, и, соответственно, количество примеров положительного класса становится малым по сравнению с отрицательным, модель может не научиться хорошо различать классы. В этом случае использование только класса весов может не сработать так же эффективно, как пересчет вероятностей из подвыборки.
Заключение:
В конечном итоге, использование классовых весов само по себе не гарантирует калибровку модели. Это лишь один из шагов в процессе обучения, который можно дополнить подходами, специально разработанными для калибровки предсказаний. Чтобы достичь качественной калибровки, рекомендуется использовать методы, такие как калибровка Платта или изотоническая регрессия, после того как модель была обучена.
Выводя все вышесказанное, можно утверждать, что подходы могут быть взаимозаменяемыми при определенных условиях, но важно осознавать, что ни один из подходов не является единственным решением проблемы.