Пользовательская выборка random_sampling для ансамблей sklearn - PullRequest
2 голосов
/ 18 апреля 2020

Мне нужно написать пользовательский модуль random_selection (для случайного выбора объекта, например, «max_feature» и подмножества данных поезда, т.е. «subsample») в scikit-learn, который будет использоваться с sklearn.ensemble.RandomForestClassifier и GradientBoostingClassifier. Может кто-нибудь указать на какой-нибудь пример / документация / обсуждение и т.д. c. ? Идея состоит в том, чтобы стратифицировать, используя один столбец (не зависящий, т. Е. Y) от данных о поездах для создания мешков в RandomForestClassifier

1 Ответ

0 голосов
/ 25 апреля 2020

Похоже, у вас есть два основных варианта:

  1. Вы можете выполнить итерацию по ученику вручную. Это будет очень медленно, но вы можете подавать выборочные данные вручную.

или 2. Вы можете взвесить выборки с точностью до пропорции класса (например, если ваши данные похожи на [a, a , b, b, b] тогда веса выборки будут [5/2, 5/2, 5/3, 5/3, 5/3] или что-то в этом роде. Таким образом, общий вклад в потери будет равен каждое значение этой переменной. Вы бы сделали это, указав веса в model.fit(X, y, sample_weight=sample_weight).

...