Articles of xgboost

entradas para nDCG en sklearn

No puedo entender el formato de entrada de sklearn nDcg: http://sklearn.apachecn.org/en/0.19.0/modules/generated/sklearn.metrics.ndcg_score.html Actualmente tengo el siguiente problema: tengo varias consultas para cada una de las cuales las probabilidades de clasificación se han calculado correctamente. Pero ahora el problema es calcular nDCG para el conjunto de pruebas para el que me gustaría usar el nDcg sklearn. El […]

implementar la función objective personalizada XGboost

Estoy tratando de implementar una función objective personalizada utilizando XGboost (en R, pero también uso python, por lo que cualquier comentario sobre python también es bueno). Creé una función que devuelve gradiente y arpillera (funciona correctamente), pero cuando bash ejecutar xgb.train, entonces no está funcionando. Entonces decidí imprimir para cada ronda las predicciones, gradiente y […]

Cómo obtener los parámetros de un modelo XGBoost guardado

Estoy tratando de entrenar un modelo XGBoost usando los siguientes parámetros: xgb_params = { ‘objective’: ‘binary:logistic’, ‘eval_metric’: ‘auc’, ‘lambda’: 0.8, ‘alpha’: 0.4, ‘max_depth’: 10, ‘max_delta_step’: 1, ‘verbose’: True } Como los datos de entrada son demasiado grandes para cargarlos completamente en la memoria, adapto el entrenamiento incremental: xgb_clf = xgb.train(xgb_params, input_data, num_boost_round=rounds_per_batch, xgb_model=model_path) El código […]

Xgboost funciona en pycharm pero no en Jupyter NoteBook

He instalado con éxito Xgboost en Windows con Pycharm Python, y está funcionando. Sin embargo, en Jupyter NoteBook, no está funcionando. import xgboost as xgb —> 12 import xgboost as xgb ModuleNotFoundError: No module named ‘xgboost’ En Jupyter el paquete xgboost está en: > !pip install xgboost Requisito ya cumplido: xgboost en c: \ users […]

La Predicción de Xgboost es diferente para C ++ y Python para el mismo modelo

He entrenado un modelo en Python usando el siguiente código (no usé un conjunto de prueba para este ejemplo, estaba entrenando y prediciendo usando el mismo conjunto de datos, para facilitar la ilustración del problema): params = {‘learning_rate’:0.1,’obj’:’binary:logistic’,’n_estimators’:250, ‘scale_pos_weight’:0.2, ‘max_depth’ : 15, ‘min_weight’ : 1, ‘colsample_bytree’ : 1, ‘gamma’ : 0.1, ‘subsample’:0.95} X = np.array(trainingData,dtype […]

¿Cómo obtener predicciones con XGBoost y XGBoost utilizando Scikit-Learn Wrapper para que coincida?

Soy nuevo en XGBoost en Python, así que me disculpo si la respuesta aquí es obvia, pero estoy tratando de tomar un dataframe de panda y obtener XGBoost en Python para darme las mismas predicciones que obtengo cuando uso el contenedor Scikit-Learn para el mismo ejercicio. Hasta ahora no he podido hacerlo. Solo para dar […]

La diferencia de XGBoost en las funciones de tren y prueba después de convertir a DMatrix

Solo me pregunto como es posible el siguiente caso: def fit(self, train, target): xgtrain = xgb.DMatrix(train, label=target, missing=np.nan) self.model = xgb.train(self.params, xgtrain, self.num_rounds) Pasé el conjunto de datos del tren como csr_matrix con 5233 columnas, y después de convertir a DMatrix obtuve 5322 características. Más adelante, predice el paso, obtuve un error como la causa […]

clasificación multiclase en xgboost (python)

No puedo averiguar cómo pasar el número de clases o métrica eval a xgb.XGBClassifier con la función objective ‘multi: softmax’. Miré muchas documentaciones pero la única charla sobre el contenedor sklearn que acepta n_class / num_class. Mi configuración actual se ve como kf = cross_validation.KFold(y_data.shape[0], \ n_folds=10, shuffle=True, random_state=30) err = [] # to hold […]

¿Cómo se calcula la puntuación de la característica (/ importancia) en el paquete XGBoost?

El comando xgb.importance devuelve un gráfico de la importancia de la característica medida por una puntuación f . ¿Qué representa esta puntuación f y cómo se calcula? Salida: Gráfico de importancia de la característica

XGBoost CV y ​​mejor iteración.

Estoy usando XGBoost cv para encontrar el número óptimo de rondas para mi modelo. Estaría muy agradecido si alguien pudiera confirmar (o refutar), el número óptimo de rondas es: estop = 40 res = xgb.cv(params, dvisibletrain, num_boost_round=1000000000, nfold=5, early_stopping_rounds=estop, seed=SEED, stratified=True) best_nrounds = res.shape[0] – estop best_nrounds = int(best_nrounds / 0.8) es decir: el número […]