Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-10-2024 10:57 PM - edited 04-10-2024 11:00 PM
Hi I'm have succesfully registered my model using the feature engineering client with the following codes:
with mlflow.start_run():
# Calculate the ratio of negative class samples to positive class samples
ratio = (len(y_train) - y_train.sum()) / y_train.sum()
# Fit model
xgb_model = xgb.XGBClassifier(scale_pos_weight=ratio)
xgb_model.fit(X_train, y_train)
fe.log_model(
model=xgb_model,
artifact_path=MODEL_NAME,
flavor=mlflow.sklearn,
training_set=training_set,
registered_model_name=MODEL_NAME
)There are two questions:
1. Why is the model still shown as pyfunc in the model registry when the flavor I specified was mlflow.sklearn?
2. Can I use the following codes for prediction:
model = mlflow.sklearn.load_model(model_version_uri)
# Predict with model
prob_pred = model.predict_proba(df)[:, 1]or do I must use score_batch()? As I would need prediction to be probabilities instead of 1/0s.
Thanks!
#model_flavor #feature_store #score_batch #xgboost #sklearn