-
-
[原创]mlops测试
-
发表于:
2026-4-10 14:52
2350
-
import pandas as pd
from flaml import AutoML
import mlflow
import mlflow.sklearn
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score, roc_auc_score
from sklearn.datasets import make_classification
X, y = make_classification(n_samples=10000, n_features=20, n_informative=10,
n_redundant=5, n_clusters_per_class=1, random_state=42)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
mlflow.set_experiment("FLAML_cc1")
with mlflow.start_run(run_name="FLAML_cc1"):
automl = AutoML()
settings = {
"time_budget": 60,
"metric": "roc_auc",
"task": "classification",
"log_file_name": "flaml.log",
"seed": 42,
"estimator_list": ["lgbm", "xgboost", "rf"],
}
automl.fit(X_train, y_train, **settings)
y_pred_proba = automl.predict_proba(X_test)[:, 1]
test_auc = roc_auc_score(y_test, y_pred_proba)
test_acc = accuracy_score(y_test, automl.predict(X_test))
mlflow.log_params(automl.best_config)
mlflow.log_metric("test_roc_auc", test_auc)
mlflow.log_metric("test_accuracy", test_acc)
mlflow.log_param("best_estimator", automl.best_estimator)
mlflow.log_param("n_features", X_train.shape[1])
mlflow.sklearn.log_model(automl.model, "flaml_best_model")
print(f"Best model: {automl.best_estimator}")
print(f"Test AUC: {test_auc:.4f}")
if hasattr(automl.model, "feature_importances_"):
fi = automl.model.feature_importances_
for i, imp in enumerate(fi):
mlflow.log_metric(f"feature_{i}_importance", imp)
冰与火的战歌:Windows内核攻防实战高级班!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。