低代码机器学习库--Pycaret2.3

更新时间:2023-05-15 07:52:09 阅读: 评论:0

低代码机器学习库--Pycaret2.3
⽬录
PyCaret2.3简介
PyCaret是Python中的⼀个开源、低代码机器学习库,旨在减少从数据处理到模型部署的周期时间。PyCaret库只需⼏⾏代码就可以完成从准备数据到部署模型,⽼少皆宜(),⽬前PyCaret版本更新到2.3,⽀持的功能有数据处理,模型训练,参数搜索,模型可解释性,模型选择,实验⽇志查询。
PyCaret安装
为了避免与其他软件包的潜在冲突,强烈建议使⽤虚拟环境。使⽤隔离环境可以独⽴于任何先前安装的 Python 包安装特定版本的 pycaret 及其依赖项。
#1.创建新的虚拟环境 #为了直接省事我这⾥直接复制默认的ba环境到新的环境"newpy37"中,这样原来该有库都有了。
conda create --name newpy37--clone ba左肝囊肿
#或者也可以使⽤以下命令看痣相
conda create --name newpy37 python=3.7 #新环境会创建后,路径在 D:\Anaconda3\envs\newpy37下,D:\Anaconda3为我的Anaconda3安装路径
#2.激活新的虚拟环境
conda activate newpy37
#3.安装pycaret包 #PyCaret 的默认安装是 pycaret 的精简版,我这⾥直接安装完整版:
pip install pycaret[full]
#4.创建连接 conda 新环境new_env 的 notebook 内核
python -m ipykernel install --ur --name newpy37 --display-name "new-kernel"
打开jupyter lab 后,可以在右上⾓上选择刚创建的“new-kernel”环境,如:
PyCaret功能模块
加载数据:可使⽤pandas读取
数据处理:tup 函数可以进⾏特征预处理,特征衍⽣,特征选择,⾃动创建pipeline等
创建模型:近70个机器学习算法,使⽤create_model 函数创建,⽀持模型融合
模型分析:提供多种模型可视化分析,通过plot_model函数实现
模型验证/预测:通过predict_model 函数不仅可以对hold-out数据集进⾏预测,还可以对未知数据集预测
最终模型:finalizemodel 函数训练和测试数据合并重新训练模型,savemodel和load_model函数分别是保存和加载模型及pipeline
模型部署:deploy_model,此函数在云上部署转换管道和经过训练的模型。
⼀、数据初始化
PyCaret通过tup()函数可将原始数据进⾏⼀站式数据采样与划分、数据预处理、转换、特征⼯程等操作,它会根据tup函数中定义的参数创建转换管道(transformation pipeline)。它会⾃动编排管道(pipeline)中的所有依赖项,因此您不必⼿动管理对测试数据集或未知的数据集进⾏转换的顺序执⾏。PyCaret的管道可以轻松地在各种环境之间转移,以实现⼤规模运⾏或轻松部署到⽣产环境中。
get_config函数查看的全局变量
t_config函数更改的全局变量
不同模块中的tup()函数的参数有⼀定差异,除了分类和回归tup()函数参数相差⽆异外,聚类、异常检测、NLP和关联规则挖掘模块的参数相对更少⼀些;⽽这⾥以分类中的tup()展开讨论,主要参数如下。
1.设置数据集、标注⽬标值
data: pandas.DataFrame
职称申报工作总结
target: str
2.训练集/测试集划分
train_size: float, default = 0.7 #⽤于训练和验证的数据集的⽐例。应介于0.0和1.0之间。
test_data:pandas.DataFrame, default = None # 如果⼿动传⼊测试数据集,则train_size的参数失效
3.数据预处理
是否进⾏数据处理,默认true
preprocess: bool, default = True
指定特征数据类型
categorical_features: list of str, default = None
numeric_features: list of str, default = None
date_features: list of str, default = None
ignore_features: list of str, default = None #删除指定特征
缺失值处理学拼音识汉字
当imputation_type: str, default = 'simple'时
categorical_imputation: str, default = 'constant'#默认填充“not_available”值,或设为'mode',填充众数numeric_imputation: str, default = 'mean' # 默认填充平均值,其他参数有'median' or 'zero'.
当imputation_type: str, default = 'iterative'时:
iterative_imputation_iters: int, default = 5
categorical_iterative_imputer: str, default = 'lightgbm'
numeric_iterative_imputer: str, default = 'lightgbm'
4.类别型特征值处理
处理特征中未知分类
handle_unknown_categorical: bool, default = True
unknown_categorical_method: str, default = 'least_frequent' # 其他参数有 'most_frequent'分类特征某个类别分布低于某个阈值,合并该稀有类别
combine_rare_levels: bool, default = Fal
rare_level_threshold: float, default = 0.1
幸运儿用英语怎么说5.编码转换
类别型变量默认都会进⾏one-hot独热编码
肉汤圆的做法
序列编码
ordinal_features: dict, default = None #将分类特征编码为序号,传⼊字典
基数编码
high_cardinality_features: string, default = None
使⽤频率分布作为原始值,可选参数'clustering',使⽤聚类标签替换原始值
high_cardinality_method: string, default = 'frequency'
6.数据标准化
normalize: bool, default = Fal #默认不启动标准化
normalize_method: str, default = 'zscore' # 其他参数有[minmax,maxabs,robust]
iem7.数据转换
transformation: bool, default = Fal #默认不启动转换
transformation_method: str, default = 'yeo-johnson' # 其他参数有 'quantile'
数值特征分群,底层⽤KMeans聚类后,特征的原始值将替换为簇标签。
bin_numeric_features: list of str, default = None
8.特征衍⽣
多项式特征
polynomial_features: bool, default = Fal
polynomial_degree: int, default = 2 #默认是多元⼆次函数
三⾓函数特征
trigonometry_features: bool, default = Fal
polynomial_threshold: float, default = 0.1
特征交互
feature_interaction: bool, default = Fal #可能⽆法在⾼维特性空间中使⽤,特征组合⽅法 a * b
feature_ratio: bool, default = Fal #可能⽆法在⾼维特性空间中使⽤,特征组合⽅法 a / b
interaction_threshold: bool, default = 0.01 #与polynomial_threshold类似,通常将通过组合⽅法新创建特征压缩成稀疏矩阵,根据随机森林,Adaboost的特征重要性和线性相关性低于设置的阈值将保留在数据集中,其余特征被删除
聚合特征
#当数据集中包含以某种⽅式批次相关的特征时,⽐如,特征以固定的时间间隔记录,就可以从现有
特征中创建⼀些统计#指标,⽐如均值,中位数,⽅差和标准差
group_features: list or list of list, default = None
group_names: list, default = None #长度必须与group_features的长度⼀致
9.特征选择
主成分分析
pca: bool, default = Fal
pca_method: str, default = 'linear'#其他参数【kernel,incremental】
pca_components: int or float, default = None # 要保留的组件数
低⽅差,异常值删除
ignore_low_variance: bool, default = Fal
牛毛肚remove_outliers: bool, default = Fal
outliers_threshold: float, default = 0.05
消除多重共线性
remove_multicollinearity: bool, default = Fal
multicollinearity_threshold: float, default = 0.9
随机删除相关性为1的特征
remove_perfect_collinearity: bool, default = True
⽣成聚类标签,然后标签作为新的特征
create_clusters: bool, default = Fal
cluster_iter: int, default = 20 #创建群集的迭代次数
特征重要性选择
feature_lection: bool, default = Fal ,
feature_lection_threshold: float, default = 0.8,较⼤的值将导致较⾼的特征空间
feature_lection_method: str, default = 'classic'# 默认使⽤经典的树模型⽅法,其他参数 'boruta' 10.样本平衡处理
fix_imbalance: bool, default = Fal,#默认
fix_imbalance_method: obj, default = None 默认使⽤'SMOTE'⽅法
⼆、模型训练
pycaret包含6类共69个算法函数供不同场景需求调⽤:
(分类)
(回归)
(聚类)
(异常检测)
(⾃然语⾔处理)
(关联规则挖掘)

本文发布于:2023-05-15 07:52:09,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/638223.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:特征   模型   数据   函数   创建   转换   默认
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图