python - predict_proba - xgboost tree_method
¿Cómo guardar y cargar el modelo xgboost? (2)
En el enlace de la guía XGBoost ,
- El modelo se puede guardar.
bst.save_model(''0001.model'') - El modelo y su mapa de características también se pueden volcar en un archivo de texto.
bst.dump_model(''dump.raw.txt'') # dump model bst.dump_model(''dump.raw.txt'',''featmap.txt'')# dump model with feature map - Un modelo guardado se puede cargar de la siguiente manera:
bst = xgb.Booster({''nthread'':4}) #init model bst.load_model("model.bin") # load data
Mi pregunta es :
- ¿
save_modeles la diferencia entresave_modelydump_model? - ¿
''0001.model''es la diferencia entre guardar''0001.model''y''dump.raw.txt'',''featmap.txt''? - ¿Por qué el nombre de modelo para cargar
model.bines diferente del nombre que se guardará en0001.model? - Supongamos que
model_Ados modelosmodel_Aymodel_B. Quería guardar ambos modelos para usarlos en el futuro. ¿Qué función desaveyloaddebo usar? ¿Podrías ayudar a mostrar el proceso claro?
Ambas funciones, save_model y dump_model guardan el modelo, la diferencia es que en dump_model puede guardar el nombre de la entidad y el árbol en formato de texto.
El load_model funcionará con el modelo de save_model . El modelo de dump_model se puede usar, por ejemplo, con xgbfi .
Durante la carga del modelo, debe especificar la ruta donde se guardan los modelos. En el ejemplo, el bst.load_model("model.bin") se carga desde el archivo model.bin - es solo un nombre del archivo con el modelo. ¡Buena suerte!
Una forma fácil de guardar y cargar un modelo xgboost es con la biblioteca joblib.
import joblib
#save model
joblib.dump(xgb, filename)
#load saved model
xgb = joblib.load(filename)