XGBoost

Die Snowflake ML Model Registry unterstützt Modelle, die mit XGBoost erstellt wurden (von xgboost.XGBModel oder xgboost.Booster abgeleitete Modelle).

Die folgenden zusätzlichen Optionen können im options-Dictionary verwendet werden, wenn Sie log_model abrufen:

Option

Beschreibung

target_methods

Liste mit den Namen der für das Modellobjekt verfügbaren Methoden. Von XGBModel abgeleitete Modelle haben standardmäßig die folgenden Zielmethoden, vorausgesetzt, die Methode existiert: predict, predict_proba. (Vor v1.4.0 war auch apply enthalten.) Von Booster abgeleitete Modelle haben standardmäßig die Methode predict.

cuda_version

Die Version der CUDA-Laufzeitumgebung, die beim Bereitstellen auf einer Plattform mit GPU verwendet werden soll. Der Standardwert ist 11.8. Wird das Modell manuell auf None gesetzt, kann es nicht auf einer Plattform mit GPU eingesetzt werden.

Beim Protokollieren eines XGBoost-Modells müssen Sie entweder den Parameter sample_input_data oder signatures angeben, damit die Registry die Signaturen der Zielmethoden kennt.

Beispiel

import xgboost
from sklearn import datasets, model_selection

cal_X, cal_y = datasets.load_breast_cancer(as_frame=True, return_X_y=True)
cal_X_train, cal_X_test, cal_y_train, cal_y_test = model_selection.train_test_split(cal_X, cal_y)
params = dict(n_estimators=100, reg_lambda=1, gamma=0, max_depth=3, objective="binary:logistic")
regressor = xgboost.train(params, xgboost.DMatrix(data=cal_X_train, label=cal_y_train))
model_ref = registry.log_model(
    regressor,
    model_name="xgBooster",
    version_name="v1",
    sample_input_data=cal_X_test,
    options={
        "target_methods": ["predict"],
        "method_options": {
            "predict": {"case_sensitive": True},
        },
    },
)
model_ref.run(cal_X_test[-10:])
Copy