使用Pipeline构建算法链

使用Pipeline构建算法链

描述

在机器学习中,经常会使用多个算法模完成一个任务,这时可以使用Pipeline构建算法链,将多个算法整合为一个“复合模型”,它同样拥有fit、score、predict等方法。构建算法链可以大大简化模型代码,同时还能够避免因模型之间数据不一致导致的性能问题。Pipeline的经典应用场景是整合预处理和监督学习模型,同时还可以结合网格搜索、交叉验证进行调参、选出最优的模型和参数。

本任务主要实践内容包括:

1、 使用Pipeline整合预处理与KNN分类器,实现肿瘤分类预测

2、 使用Pipeline结合网格搜索,自动选择最优模型组合及模型最优参数。

源码下载

环境

  • 操作系统:Windows10、Ubuntu18.04

  • 工具软件:Anaconda3 2019、Python3.7

  • 硬件环境:无特殊要求

  • 依赖库列表

    scikit-learn	0.24.2
    

分析

本任务使用乳腺癌数据集(breast_cancer),任务中涉及以下环节:

a)加载并拆分数据集;

b)使用MinMaxScaler缩放器进行预处理;

c)建立KNN分类模型并评估;

d)使用Pipeline构建算法链,整合上述预处理和分类模型,并评估;

e)使用Pipeline结合网格搜索,选择最佳模型组合及参数。

实施

步骤1、加载并拆分乳腺癌数据集

from sklearn.neighbors import KNeighborsClassifier
from sklearn.datasets import load_breast_cancer  
from sklearn.model_selection import train_test_split  
from sklearn.preprocessing import MinMaxScaler, StandardScaler

# 加载、拆分数据  
cancer = load_breast_cancer()  
X_train, X_test, y_train, y_test = train_test_split(cancer.data, cancer.target, random_state=0)  

步骤2、使用MinMaxScaler缩放器进行预处理,然后创建KNN分类模型并评估

# 创建MinMaxScaler缩放器
scaler = MinMaxScaler()

# 数据缩放预处理
X_train_scaled = scaler.fit_transform(X_train
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值