У меня есть сценарий использования в ML, где у меня есть 2 класса, 0 и 1 для данного текста.
Class-0:
Могу позволить себе некоторые неправильные классификации
Class-1:
Очень важно, не могу допустить ошибочных классификаций
Существует огромный дисбаланс в выборках для обоих классов, около 30000 для класса-0 и только 1000 для класса-1
Выполняя разделение теста на поезд, я стратифицирую разделение на основе меток, так что для каждого класса меток сохраняется соотношение 70% теста и 30% теста.
Я хочу настроить параметрытаким образом, что Precision
или Recall
для класса 1 улучшается. Я пытался использовать «f1_macro», «точность», «отзыв» в качестве отдельных метрик и все вместе, а также для настройки с помощью GridSearchCV, но это менее полезно из-за того, что большинство выборок относятся к классу-0.
Я исследуюболее безопасные способы сокращения данных класса 0, хотя мы можем уменьшить лишь небольшую степень, в любом случае, даже без настройки или с какими-либо параметрами, класс 0 всегда имеет более 98% f1-балла.
Так что все, что язабота о настройке относится к class-1
.
Можете ли вы предложить, возможно, настроенную вызываемую метрику так, чтобы она фокусировалась только на точности, отзыве или F1-классе класса-1?
I 'используя последнюю стабильную версию scikit-learn.
Похожая проблема. Автор пытается настроить оценку класса 1 с помощью Neural Networks (MLP)
в Keras
. Было предложено попробовать настроитьметрика, просто не упомянул как.
Тот, кто может ответить здесь за Scikit-Learn, также может ответить ниже по ссылке для Keras. Настройка гиперпараметра в Keras (MLP) через RandomizedSearchCV