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

aspnet网站开发作业公众号注册官网

aspnet网站开发作业,公众号注册官网,花钱人做的网站做好后算谁的,网站怎么做网页游戏这是Python机器学习原创文章,我的第183篇原创文章。 一、引言 对于表格数据,一套完整的机器学习建模流程如下: 背景知识1:机器学习中的学习器 【Python机器学习系列】一文搞懂机器学习中的转换器和估计器(附案例&…

这是Python机器学习原创文章,我的第183篇原创文章。

一、引言

       对于表格数据,一套完整的机器学习建模流程如下:

图片

背景知识1:机器学习中的学习器

【Python机器学习系列】一文搞懂机器学习中的转换器和估计器(附案例)

背景知识2:机器学习中的管道机制

简介:

        转换器用于数据的预处理和特征工程,它们无状态且只学习转换规则。而估计器用于模型的训练和预测,它们有状态且学习训练数据中的模式和规律。转换器和估计器在机器学习中扮演不同的角色,但它们通常可以结合在一起构建一个完整的机器学习流程。

        机器学习的管道(Pipeline)机制通过将多个转换器和估计器按顺序连接在一起,可以构建一个完整的数据处理和模型训练流程。在管道机制中,可以使用Pipeline类来组织和连接不同的转换器和估计器。Pipeline类提供了一种简单的方式来定义和管理机器学习任务的流程。

好处:

        1.管道机制是按照封装顺序依次执行的一种机制,在机器学习算法中得以应用的根源在于,参数集在新数据集(比如测试集)上的重复使用。

        2.可以结合grid search对参数进行选择。

二、实现过程

导入第三方库

import pandas as pd
from sklearn.pipeline import Pipeline #管道机制
from sklearn.pipeline import make_pipeline
from sklearn.model_selection import train_test_split #分训练和测试集
#导入“流水线”各个模块(标准化,降维,分类)
from  sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn.svm import SVC
from sklearn.model_selection import GridSearchCV

准备数据

data = pd.read_csv(r'Dataset.csv')
df = pd.DataFrame(data)
target = 'target'
features = df.columns.drop(target)
X_train, X_test, y_train, y_test = train_test_split(df[features], df[target], test_size=0.2, random_state=0)

2.1 建立管道进行分类预测

        steps为Pipeline类最关键的参数,sklearn规定它是一个[( ),( )]类型,列表里面是一个个元组,分别为名字和工序,从左到右是流水线上的先后顺序。Pipleline中最后一个之外的所有estimators都必须是变换器(transformers),最后一个estimator可以是任意类型(transformer,classifier,regresser),如果最后一个estimator是个分类器,则整个pipeline就可以作为分类器使用,如果最后一个estimator是个聚类器,则整个pipeline就可以作为聚类器使用。如果你不想为每一个步骤提供用户指定的名称,这种情况下,就可以用make_pipeline函数创建管道,它可以为我们创建管道并根据每个步骤所属的类为其自动命名。

# pipe=Pipeline(steps=[('standardScaler',StandardScaler()), ('pca', PCA()), ('svc',SVC())])
pipe=make_pipeline(StandardScaler(),PCA(),SVC())
pipe.predict(X_test) #预测结果
print('Test accuracy: %.3f' % pipe.score(X_test, y_test))#输出精度

输出:

图片

2.2 管道流水线+网格搜索参数

        在机器学习中,超参数是模型的配置参数,需要在训练之前设置,并且不能通过模型的学习过程来自动调整。超参数的选择对于模型的性能和泛化能力非常重要,因此需要通过实验来确定最佳的超参数组合。GridSearchCV是scikit-learn库中的一个类,用于进行网格搜索(Grid Search)和交叉验证(Cross-Validation)来选择模型的最佳超参数。使用GridSearchCV时,需要提供一个估计器(Estimator)对象、超参数的候选值列表和评估指标(如准确率、均方误差等)。GridSearchCV将对所有超参数组合进行交叉验证,并返回具有最佳性能的超参数组合及其对应的模型。

pipeline=Pipeline([('scaler',StandardScaler()),('pca',PCA()),('svm',SVC())])
param_grid={'svm__C':[0.001,0.01,0.1,1,10,100],'svm__gamma':[0.001,0.01,0.1,1,10,100]}# 定义网格搜索参数,用<estimator>__<parameter>形式设置参数
grid=GridSearchCV(pipeline,param_grid,cv=5, scoring='accuracy')# 网格搜索模型实例化
grid.fit(X_train,y_train)
grid.predict(X_test)
print('Test accuracy: %.3f' % grid.score(X_test, y_test))#输出精度

输出:

图片

        本文简单介绍了机器学习管道流水线机制的使用方法,事实上特征处理过程也可以加入管道,我们还可以自定义转化器加入管道中,可以对不同的特征处理划分不同的管道,这些用法我后期出文章再细说。

本期内容就到这里,我们下期再见!需要数据集和源码的小伙伴关注底部公众号添加作者微信!

作者简介:

读研期间发表6篇SCI数据挖掘相关论文,现在某研究院从事数据算法相关科研工作,结合自身科研实践经历不定期分享关于Python、机器学习、深度学习、人工智能系列基础知识与应用案例。致力于只做原创,以最简单的方式理解和学习,关注我一起交流成长。

http://www.yayakq.cn/news/194440/

相关文章:

  • 一般做个网站要多少钱19楼网站模板
  • 合肥哪里做网站数字创意设计包括哪些案例
  • 红色网站欣赏wordpress在固定链接设置页面
  • 网站ico图标怎么用外贸网站建设服务机构
  • 网站建设火凤凰wordpress菜谱主题
  • app定制图片竞价推广和seo的区别
  • mvc5 网站开发之美 pdfwordpress安装包下载失败
  • 网站建设设计指标做当地门户网站多少钱
  • 做网站的公司怎么找客户wordpress 4.8 zh cn
  • 外贸网站优化建设seo推广文章
  • 哈尔滨建设网登录北京网站建设公司网站优化资讯
  • 网站空间购买流程什么网站可以找到做餐饮的会计
  • 合肥论坛珠海seo关键词排名
  • 深圳网站建设索q.479185700创建自己的网站要钱吗
  • wordpress 侧边菜单 企业主题渭南网站建设seo
  • 公司门户网站建设视频制作和剪辑
  • 历史看过的网站三只松鼠网站推广策略
  • 常用的seo网站优化排名网站内容架构
  • 网站电线电话图怎么做自己做网站上传视频
  • 摄影工作室网站源码wordpress图文直播
  • 定制网站建设公司有哪些网络广告推广营销方案
  • cdr可不可做网站wordpress groupon
  • 超炫网站搜索引擎推广价格
  • 萧山网站制作公司作品集网站代码
  • 企业网站制作公司电话博创安泰网站建设
  • 山东前十名建筑设计院seo教程搜索引擎优化入门与进阶
  • 秦皇岛网站制作代理商网站后台可以备份吗
  • 网站开发的国内外研究现状企业网络营销现状报告
  • 网站如何被收录情况网络建设方案模板
  • 网站的技术分析建设电子商务网站总体设计阶段