XGBOOST: sample_Weights против Scale_pos_weightPython

Программы на Python
Anonymous
XGBOOST: sample_Weights против Scale_pos_weight

Сообщение Anonymous »

У меня сильно несбалансированный набор данных, и мне интересно, где учитывать веса, и поэтому я пытаюсь понять разницу между аргументом Scale_pos_weight в XGBClassifier и параметром sample_weight метода fit. Был бы признателен за интуитивное объяснение разницы между ними, если их можно использовать одновременно или как выбрать любой из подходов.

В документации указано, что Scale_pos_weight:


контролирует баланс положительных и отрицательных весов.. и типичное значение
для рассмотрения: sum(отрицательные случаи) / sum(положительные случаи)


Пример:

from xgboost import XGBClassifier
import xgboost as xgb
LR=0.1
NumTrees=1000
xgbmodel=XGBClassifier(booster='gbtree',seed=0,nthread=-1,
gamma=0,scale_pos_weight=14,learning_rate=LR,n_estimators=NumTrees,
max_depth=5,objective='binary:logistic',subsample=1)
xgbmodel.fit(X_train, y_train)


ИЛИ

from xgboost import XGBClassifier
import xgboost as xgb
LR=0.1
NumTrees=1000
xgbmodel=XGBClassifier(booster='gbtree',seed=0,nthread=-1,
gamma=0,learning_rate=LR,n_estimators=NumTrees,
max_depth=5,objective='binary:logistic',subsample=1)
xgbmodel.fit(X_train, y_train,sample_weight=weights_train)


Подробнее здесь: https://stackoverflow.com/questions/480 ... pos-weight

Вернуться в «Python»