当前位置: 首页 > news >正文

打卡第二十四天

 pipeline管道知识回顾:1.转化器和估计器的概念

2.管道工程

3.ColumnTransformer和Pipeline类

作业:整理下全部逻辑的先后顺序,看看能不能制作出适合所有机器学习的通用pipeline

数据预处理

数据预处理是机器学习pipeline中的关键步骤。它包括数据清洗、特征选择、特征缩放等操作。数据清洗可以处理缺失值、异常值和重复数据。特征选择通过选择最相关的特征来减少维度,提高模型性能。特征缩放如标准化或归一化,确保不同特征的数值范围一致。

from sklearn.preprocessing import StandardScaler
from sklearn.feature_selection import SelectKBest, f_classif# 数据清洗
data = data.dropna()# 特征选择
selector = SelectKBest(f_classif, k=10)
X_new = selector.fit_transform(X, y)# 特征缩放
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X_new)

模型选择与训练

选择合适的模型是pipeline的核心。根据任务类型(分类、回归、聚类等)选择不同的模型。训练模型时,使用交叉验证来评估模型的性能,避免过拟合。

from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier# 模型选择
model = RandomForestClassifier()# 交叉验证
scores = cross_val_score(model, X_scaled, y, cv=5)
print("Cross-validation scores:", scores)

超参数调优

超参数调优可以显著提高模型性能。使用网格搜索或随机搜索来找到最佳的超参数组合。

from sklearn.model_selection import GridSearchCV# 超参数调优
param_grid = {'n_estimators': [10, 50, 100],'max_depth': [None, 10, 20]
}
grid_search = GridSearchCV(model, param_grid, cv=5)
grid_search.fit(X_scaled, y)
print("Best parameters:", grid_search.best_params_)

模型评估

模型评估是pipeline的最后一步。使用不同的评估指标(如准确率、召回率、F1分数等)来评估模型的性能。

from sklearn.metrics import classification_report# 模型评估
y_pred = grid_search.predict(X_scaled)
print(classification_report(y, y_pred))

自动化与部署

将整个pipeline自动化,并使用工具如MLflow或Airflow进行管理和部署。自动化pipeline可以确保每次运行的一致性,并方便在生产环境中部署。

import mlflow# 自动化与部署
with mlflow.start_run():mlflow.log_params(grid_search.best_params_)mlflow.log_metrics({"accuracy": scores.mean()})mlflow.sklearn.log_model(grid_search, "model")

通过以上步骤,可以构建一个适合所有机器学习任务的通用pipeline,确保数据处理的标准化、模型选择的灵活性、超参数调优的自动化以及模型评估的全面性。

@浙大疏锦行

相关文章:

  • 2025年Y2大型游乐设施操作证备考练习题
  • WordPress Elementor零基础教程
  • 【Java微服务组件】异步通信P2—Kafka与消息
  • 如何设计智慧工地系统的数据库?
  • JVM梳理(逻辑清晰)
  • RL电路的响应
  • 阿里云数据盘级别
  • 在 Excel xll 自动注册操作 中使用东方仙盟软件————仙盟创梦IDE
  • LVLM-AFAH论文精读
  • 标准IO(2)、文件IO
  • API面临哪些风险,如何做好API安全?
  • C语言指针深入详解(六):sizeof和strlen的对比,【题解】数组和指针笔试题解析、指针运算笔试题解析
  • 海洋探测利器:HY - 2C 卫星
  • 【已解决】docker search --limit 1 centos Error response from daemon
  • 逆向学习笔记1
  • Spring AI 1.0 GA 于 2025 年 5 月 20 日正式发布,都有哪些特性?
  • 软件工程(七):MQTT协议
  • 【MC】红石比较器
  • android RecyclerView列表DiffCallback说明
  • linux中cpu内存浮动占用,C++文件占用cpu内存、定时任务不运行报错(root) PAM ERROR (Permission denied)