资讯专栏INFORMATION COLUMN

效率倍增,PyCaret:一个开源、低代码的 Python 机器学习工具

binta / 1832人阅读

摘要:是一个开源低代码的机器学习库,可自动执行机器学习工作流。它是一种端到端的机器学习和模型管理工具,可以以指数方式加快实验周期并提高您的工作效率。与其他开源机器学习库相比,是一个替代的低代码库,可用于仅用几行代码替换数百行代码。

PyCaret 是一个开源、低代码的 Python 机器学习库,可自动执行机器学习工作流。它是一种端到端的机器学习和模型管理工具,可以以指数方式加快实验周期并提高您的工作效率。欢迎收藏学习,喜欢点赞支持,文末提供技术交流群。

与其他开源机器学习库相比,PyCaret 是一个替代的低代码库,可用于仅用几行代码替换数百行代码。 这使得实验速度和效率呈指数级增长。 PyCaret 本质上是围绕多个机器学习库和框架(例如 scikit-learn、XGBoost、LightGBM、CatBoost、spaCy、Optuna、Hyperopt、Ray 等)的 Python 包装器。

PyCaret 的设计和简单性受到数据科学家这一新兴角色的启发,可以执行以前需要更多技术专长的简单和中等复杂的分析任务。

PyCaret 时间序列模块

PyCaret 的新时间序列模块现已提供测试版。 秉承 PyCaret 的简单性,它与现有的 API 保持一致,并带有很多功能。 统计测试、模型训练和选择(30 多种算法)、模型分析、自动超参数调优、实验记录、云部署等, 所有这一切只需要几行代码(就像 pycaret 的其他模块一样)。 如果您想尝试一下,请查看官方的快速入门笔记本。

您可以使用 pip 安装此库。 如果你在同一个环境中安装了 PyCaret,由于依赖冲突,你必须为 pycaret-ts-alpha 创建一个多带带的环境。

pip install pycaret-ts-alpha

接下来安排如下

PyCaret 的时间序列模块中的工作流程非常简单。 它从设置功能开始,您可以在其中定义预测范围 fh 和折叠次数。 您还可以将 fold_strategy 定义为扩展或滑动。

设置后,著名的 compare_models 函数训练和评估从 ARIMA 到 XGboost(TBATS、FBProphet、ETS 等)的 30 多种算法。

plot_model 函数可以在训练之前或之后使用。 在训练前使用时,它使用 plotly 界面收集了大量时间序列 EDA 图。 与模型一起使用时,plot_model 处理模型残差,并可用于访问模型拟合。

最后,predict_model 用于生成预测。

加载数据

import pandas as pdfrom pycaret.datasets import get_datadata = get_data("pycaret_downloads")data["Date"] = pd.to_datetime(data["Date"])data = data.groupby("Date").sum()data = data.asfreq("D")data.head()

# plot the datadata.plot()


这个时间序列是从 pip 每天下载 PyCaret 库的次数。

初始化设置

# with functional APIfrom pycaret.time_series import *setup(data, fh = 7, fold = 3, session_id = 123)# with new object-oriented APIfrom pycaret.internal.pycaret_experiment import TimeSeriesExperimentexp = TimeSeriesExperiment()exp.setup(data, fh = 7, fold = 3, session_id = 123)

统计测试

check_stats()

探索性数据分析

# functional APIplot_model(plot = "ts")# object-oriented APIexp.plot_model(plot = "ts")

# cross-validation plotplot_model(plot = "cv")

# ACF plotplot_model(plot = "acf")

# Diagnostics plotplot_model(plot = "diagnostics")

# Decomposition plotplot_model(plot = "decomp_stl")

模型训练和选择

# functional APIbest = compare_models()# object-oriented APIbest = exp.compare_models()


时间序列模块中的 create_model 就像在其他模块中一样。

# create fbprophet modelprophet = create_model("prophet")print(prophet)



tune_model 也没有太大不同。

tuned_prophet = tune_model(prophet)print(tuned_prophet)

plot_model(best, plot = "forecast")

# forecast in unknown futureplot_model(best, plot = "forecast", data_kwargs = {"fh" : 30})

# in-sample plotplot_model(best, plot = "insample")

# residuals plotplot_model(best, plot = "residuals")

# diagnostics plotplot_model(best, plot = "diagnostics")

保存模型

# finalize modelfinal_best = finalize_model(best)# generate predictionspredict_model(final_best, fh = 90)

# save the modelsave_model(final_best, "my_best_model")

技术交流

欢迎转载、收藏、有所收获点赞支持一下!

目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

  • 方式①、发送如下图片至微信,长按识别,后台回复:加群;
  • 方式②、添加微信号:dkl88191,备注:来自CSDN
  • 方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/124101.html

相关文章

  • 15个Python库,让你学习数据科学更轻松

    摘要:在本节中,我们将看到一些最流行和最常用的库,用于机器学习和深度学习是用于数据挖掘,分析和机器学习的最流行的库。愿码提示网址是一个基于的框架,用于使用多个或进行有效的机器学习和深度学习。 showImg(https://segmentfault.com/img/remote/1460000018961827?w=999&h=562); 来源 | 愿码(ChainDesk.CN)内容编辑...

    W4n9Hu1 评论0 收藏0
  • PyCon China 深圳站精彩回顾(附PPT及视频)

    摘要:月日,第六届大会在深圳召开。这是这次大会的第二站活动,第一站已在上海成功举办。深圳站视频及,请在公众号后台回复,获取分享链接。据介绍,目前支持多种开发库,如内置和等。该协议的推出,是为了统一标准,提高效率。 本文为 PyChina 和「编程派」联合首发,作者为 EarlGrey。「编程派」是一个专注 Python 学习交流的微信公众号。 9 月 25 日,第六届 PyCon China...

    lykops 评论0 收藏0
  • 如何架构一个数据工程

    摘要:太多的计算如果我们开始增加一个单线程来加载数据管道,那么这种操作最终肯定是会失败的。优点所有上述的优点调度和可扩展性缺点由于功能的强大,所有学习门槛有点高总结最后,我们可以画出我们一整个数据工程架构图。 作者:chen_h微信号 & QQ:862251340微信公众号:coderpai简书地址:http://www.jianshu.com/p/7a72... 1. 介绍 在我们深入讨论...

    GeekQiaQia 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<