Можете ли вы исправить ложную отрицательную оценку в классификаторе в scikit learn

Я использую Randomifer classifer в scikit learn с несбалансированным набором данных из двух классов. Меня гораздо больше беспокоят ложные негативы, чем ложные срабатывания. Можно ли исправить ложную отрицательную скорость (скажем, 1%) и попросить scikit как-то оптимизировать ложноположительную ставку?

Если этот классификатор не поддерживает его, есть ли другой классификатор, который делает?

Ответы

Ответ 1

Я считаю, что проблема дисбаланса класса в sklearn может быть частично разрешена с помощью параметра class_weight.

этот параметр является либо словарем, где каждому классу присваивается единый вес, либо строка, которая сообщает sklearn, как построить этот словарь. Например, установив этот параметр в "auto", вес каждого класса будет пропорционален инверсии его частоты.

Посредством взвешивания класса, который меньше присутствует с большей суммой, вы можете получить "лучшие" результаты.

Классификатор вроде SVM или логистической регрессии также предлагает этот параметр class_weight.

Этот ответ "Переполнение стека" дает некоторые другие идеи о том, как справляться с дисбалансом класса, например, при выборке и передискретизации.

Ответ 2

Я нашел эту статью по проблеме дисбаланса класса.

http://www.chioka.in/class-imbalance-problem/

В основном обсуждались следующие возможные решения:

  • Основанные на стоимости функции.
  • Подходы, основанные на выборке
  • SMOTE (Синтетическая методика сэмплирования меньшинства)
  • недавние подходы: RUSBoost, SMOTEBagging и Underbagging.

Надеюсь, это поможет.

Ответ 3

Случайные леса уже представляют собой мешковатый классификатор, поэтому он должен дать хорошие результаты.

Один типичный способ получения желаемой False-положительной или ложной отрицательной точности заключается в анализе ее с использованием кривых ROC http://scikit-learn.org/stable/auto_examples/plot_roc.html и изменение определенных параметров для достижения желаемых скоростей FP, например.

Не уверен, можно ли настроить частоту FP случайного лесного классификатора с использованием параметров. Вы можете посмотреть другие классификаторы на основе вашего приложения.