Pycaret 3.0的RC版本已经发布了,什么重大的改进呢?
Pycaret是Python中的一个开源可自动化机器学习工作流程的低代码机学习库。它是一种端到端的机器学习和模型管理工具。要了解有关Pycaret的更多信息,可以查看官方网站或GitHub。
1、与最新版本的Scikit-Learn完全兼容
Pycaret 2.x需要Scikit-Learn 0.23.2,如果您想在同一Python环境中使用Scikit-Learn和Pycaret的最新版本是不可能的,但是 Pycaret 3.0将与Scikit-Learn的最新版本完全兼容。
2、面向对象的API
PyCaret很棒,但缺乏面向对象的思想。通过加入类和对象,PyCaret改变了从1.0开始的工作方式,
# Functional API (Existing)
# load dataset
from pycaret.datasets import get_data
data = get_data('juice')
# init setup
from pycaret.classification import *
s = setup(data, target = 'Purchase', session_id = 123)
# compare models
best = compare_models()
这很方便,但如果现在你想在同一个notebook上运行不同参数的多个实验,你可能就会遇到参数被覆盖的问题,并且因为是变量的形式,这些参数被覆盖了你也很难发现他们。现在有了新的面向对象的API,参数保存在对象中,不会产生多余的变量,简化了操作。
# load dataset
from pycaret.datasets import get_data
data = get_data('juice')
# init setup 1
from pycaret.classification import ClassificationExperiment
exp1 = ClassificationExperiment()
exp1.setup(data, target = 'Purchase', session_id = 123)
# compare models init 1
best = exp1.compare_models()
# init setup 2
exp2 = ClassificationExperiment()
exp2.setup(data, target = 'Purchase', normalize = True, session_id = 123)
# compare models init 2
best2 = exp2.compare_models()
你还可以使用get_leaderboard函数为每个实验生成结果列表,然后进行比较。
完整文章:
https://avoid.overfit.cn/post/5a08306734164b128837e4aca4291554