Взвешенный случайный лес

Я собираюсь сделать предикацию на основе метода Random Forest. Как правило, случайный лес учитывает равенство всех точек данных и делает предикаты, основываясь на этом, однако я хочу назначить больше весов некоторым моим точкам данных. Чтобы быть более понятным, для каждой точки данных у меня есть вес, поэтому я хочу, чтобы RF был смещен к точке данных с большим весом.

Я думаю, что есть способ увеличить вероятность выбора точек данных с помощью RF. Т.е. когда РФ делает выборку, у точки с большим весом больше шансов выбрать и, как результат, скорее всего, повлиять на результат предикации. Тем не менее, я не уверен, как его использовать? Это что-то уже существует в РФ Pyhton / R?

Спасибо амир

2 ответа

Решение

В scikit-learn вы можете задавать веса выборки для функции подгонки RandomForestClassifier в виде массива длины n_samples, как описано в руководстве.

В этом ответе есть еще немного информации.

Вы можете сделать это с sklearn.emsemble.RandomForestClassifier, Установить параметр class_weight"balanced" или ваш пользовательский словарь.

clf = RandomForestClassifier(n_estimators=100, class_weight="balanced")

Смотрите официальные документы, если вы хотите узнать больше.

Другие вопросы по тегам