【机器学习】scikit-learn 1.0 版本重要新特性一览
1 简介
就在几天前,著名的机器学习框架scikit-learn
在pypi
上释放了其1.0rc1
版本,这里给大家科普一下,版本号中的rc
是Release Candidate
的简称,代表当前的版本是一个候选发布版本,一旦到了这个阶段,scikit-learn
对于1.0
版本的开发设计就基本上不会再新增功能,而是全力投入到查缺补漏的测试中去也就意味着:
❝
经历了十余年的开发进程,
scikit-learn
即将迎来其颇具里程碑意义的一次大版本发布!❞
在这次大版本更新中,scikit-learn
也很有诚意地带来了诸多新特性,下面我们就来对其中一些关键性的内容进行简单的介绍。
2 scikit-learn 1.0 版本重要特性一览
2.1 强制要求使用关键词参数传参
按照scikit-learn
官方的说法,为了更加清楚明确地构建机器学习代码,在之后的版本中,绝大部分API
都将逐渐转换为强制使用「关键词参数」,使用「位置参数」则会直接抛出TypeError
错误,以SVC
为例:
2.2 新增r_regression()
在新版本中新增了sklearn.feature_selection.r_regression()
,可以用来快速计算各个自变量与因变量之间的皮尔逊简单相关系数来辅助特征工程过程。
2.3 新增线性分位数回归模型QuantileRegressor()
新版本中在sklearn.linear_model
下添加了线性分位数回归模型QuantileRegressor()
,可用于构建回归模型由自变量求出因变量的条件分位数,近年来在计量经济学中应用广泛。
2.4 新增基于随机梯度下降的OneClassSvm模型
在sklearn.linear_model
中新增了基于随机梯度下降法的异常检测模型SGDOneClassSVM()
:
2.5 带交叉验证的Lasso回归与ElasticNet新增sample_weight参数
为sklearn.linear_model
中的LassoCV()
与ElasticNetCV()
新增参数sample_weight
,可帮助我们在模型建立的过程中通过构建权重提升部分样本的重要性。
2.6 为分位数回归模型新增模型性能度量指标
伴随着新的分位数回归模型,scikit-learn
也顺势新增了专门用于度量分位数回归模型性能的Pinball loss系数:
2.7 模型选择新增StratifiedGroupKFold()
新版中将sklearn.model_selection
中常用的StratifiedKFold()
与GroupKFold()
进行结合,使得我们可以快速构建分层分组K折交叉验证流程,详情参考:https://scikit-learn.org/dev/modules/generated/sklearn.model_selection.StratifiedGroupKFold.html#sklearn.model_selection.StratifiedGroupKFold
2.8 KMeans聚类中的k-means++初始化方法运算速度提升
新版本中cklearn.cluster
中常用的KMeans()
与MiniBatchKMeans()
聚类模型,在默认的k-means++
簇心初始化方法下运算速度获得大幅度提高,尤其是在多核机器上表现更佳。
2.9 多项式&交互项特征生成速度提升
新版本中sklearn.preprocessing
中用于快速合成多项式&交互项特征的PolynomialFeatures()
的运算速度更快了,且在输入为大型稀疏特征时效果更为明显。
2.10 np.matrix型输入即将弃用
从1.0
版本开始,scikit-learn
中的各种算法模型在接受numpy
中的matrix
类型输入时,会打印「弃用警告」,且从未来的1.2
版本开始,当用户输入np.matrix
类型时将会直接报错:
2.11 利用feature_names_in_获取pandas数据框输入下的特征名称
当输入的特征为pandas
中的DataFrame
类型时,对于训练好的模型,可以使用feature_names_in_
属性获取到对应输入特征的字段名称:
2.12 绘制局部依赖图的方式变化
在我们试图对模型进行解释时,局部依赖图是一个比较经典的工具,在以前的版本中我们可以使用sklearn.inspection
中的plot_partial_dependence()
来绘制局部依赖图,而在新版本中将会弃用这种方式,并且在1.2
版本开始正式移除这个API
,新的替代方案是使用sklearn.inspection.PartialDependenceDisplay
的from_estimator()
:
除了这些之外,在scikit-learn
新版本中还有众多的细碎的更新与调整内容,感兴趣的朋友可以前往https://scikit-learn.org/dev/whats_new/v1.0.html
自行浏览学习。
以上就是本文的全部内容,欢迎在评论区与我进行讨论。
往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑黄海广老师《机器学习课程》视频课
本站qq群851320808,加入微信群请扫码:
【机器学习】scikit-learn 1.0 版本重要新特性一览相关推荐
- 赶紧看一下mysql8.0版本的新特性,你的数据库是不是该升级了
这里写目录标题 前言 mysql8.0的新特性 1.账户安全 2.优化器索引 2.1.隐藏索引(invisible) 2.2.降序索引 2.3.函数索引 3.SQL语句增强 4.新增数据分析函数 5. ...
- android5.0及以上版本的新特性
android5.0及以上版本的新特性 Android5.0 Android6.0 Android7.0 Android8.0 Android9.0 Android5.0 Android 5.0 除了 ...
- 要闻君说:重磅!阿里巴巴发布了机器学习平台PAI 3.0版本;厉害!三星推出了业界首款HBM2E内存;Google也做云游戏平台...
关注并标星星CSDN云计算 每周三次,打卡即read 更快.更全了解泛云圈精彩news go go go 偶是要闻君.最近圈儿内的大型活动真是挤满台历,例如阿里云一年一度的大峰会,这不就在北京开上了! ...
- mysql5.0版本特性_mysql各版本的新特性整理
mysql各版本的新特性整理 一.各版本的常用命令差异 show innodb status\G mysql-5.1 show engines innodb status\G mysql-5.5 关于 ...
- php7 最新版本,总结PHP 7.x 各个版本的新特性
推荐(免费):PHP7 PHP 7.x 各个版本的新特性 前言 上个月同事看见我写$a = $a ?? ''; 问我这个写法是什么,还有这样的写法?我说这是PHP7以上才有的写法,你不知道吗?他说不知 ...
- jdk 5 到 jdk 10各个版本的新特性
jdk5 jdk10各个版本的新特性 JDK1.5新特性: 工程代号为Tiger(老虎) 自从JDK1.3开始,sun维持一个习惯,大约每隔两年发布一个JDK的主版本,以动物命名,期间发布的各个修正版 ...
- HALCON: HALCON 20.11.0.0 Progress主要新特性
HALCON: HALCON 20.11.0.0 Progress主要新特性 改进了基于形状的匹配 在HALCON 20.11中,对基于形状匹配的核心技术进行了改进,尤其是针对低对比度和高噪声的场景. ...
- Spring Boot3.0正式发布及新特性解读
Spring Boot 3.0 正式发布 同时发布更新的还有 2.7.x 和 2.6.x 两条版本线,Spring Boot 是我见过的发版最守时的技术框架之一. Spring Boot 3.0 现已 ...
- PHP 7.x 各个版本的新特性
PHP 7.x 各个版本的新特性 点赞在看,养成习惯. 前言 上个月同事看见我写 $a = $a ?? ''; 问我这个写法是什么,还有这样的写法?我说这是PHP7以上才有的写法,你不知道吗?他说不知 ...
最新文章
- [导入]C#中实现Socket端口复用
- centos7 tomcat 设置开机启动
- C/C++编程的一些技巧
- 模4余1的素数一定能表示为两正整数的平方和
- vb.net 弹出对话框 修改按钮名_批量修改日期格式
- Windows Server 2016 配置指南 全系列
- LINUX脚本报错捕捉,Linux01-BASH脚本编程之信号捕捉及任务计划53
- ai创造了哪些职业_关于创造职业的思考
- Win7系统中必需记住的14个常用快捷键
- SpringBoot 优雅的参数效验!
- 华为机试——字符串反转
- NG RouteReuseStrategy(路由复用策略)
- 6. JavaScript HTML DOM
- 我靠ppt做兼职副业,1月还清2W贷款成功上岸!
- c语言编程a4988驱动步进电机,A4988驱动NEMA步进电机(42步进电机)
- web端实现视频播放,视频地址切换,清晰度切换,断点续播
- 关于SQL sever中创建表时出现“对象名无效”的情况
- 小学三年级另类语文题难住大学副教授(图)
- 关于坯布的面料克重问题
- 【解决方案】宠物医院如何实现顾客医院联动的安全监控?EasyCVR视频图像智能分析远程监控方案介绍
热门文章
- 了解 JavaScript (4)– 第一个 Web 应用程序
- 二、mysql数据类型
- ibatis提示Unable to load embedded resource from assembly Entity.Ce_SQL.xml,Entity.
- 【转】Asp.NET大文件上传开发总结(一)
- Python档案袋( Sys 与 Import 模块)
- IdentityServer4【Introduction】之支持的规范
- 使用Disruptor实现生产者和消费者模型
- Elasticsearch入门之从零开始安装ik分词器
- 安卓自动化测试——rf
- Jquery插件(一) webupload上传插件