当前位置: 首页 > 科技观察

跳宝侠神器2.0发布,只需要几行代码搭建Python机器学习模型

时间:2023-03-20 16:25:12 科技观察

本文经AI新媒体量子比特(公众号ID:QbitAI)授权转载,转载请联系出处用于转载。PyCaret是一个用于Python的开源机器学习建模库,刚刚发布了2.0版。这款堪称“开关人神器”的模型训练工具包,只需几行代码即可完成模型的编写、改进和微调。从数据预处理到模型效果对比,PyCaret都可以自动实现。那么,PyCaret长什么样子,2.0版本做了哪些改进呢?让我们来看看。机器学习库的“炼金炉”PyCaret,有点像机器学习库的炼金炉。以下是它“融进”的一些库:数据处理:pandas、numpy……数据可视化:matplotlib、seaborn……各种模型:sklearn、xgboost、catboost、lightgbm……嗯……sklearn是直接打包进去,调用起来很方便。然后,PyCaret这个炼金炉,有自己的功能“钥匙”(定义了一些功能),包括数据预处理、模型训练、模型集成、模型分析、模型测试等。只要写几行Python代码,这些功能“按钮”将被按下,PyCaret将自动帮助您。至于在实现过程中需要调用什么基础库,能放弃思考的就不用考虑了。从下图来看,仅仅预处理阶段就包含了样本划分、数据预处理、缺失值处理、归一化、one-hot编码等功能。需要多少行代码来实现所需的预处理功能?答案是0行。因为,在用setup()初始化的时候,PyCaret会自动进行机器学习所必需的数据预处理步骤,包括缺失值插入、分类变量编码、标签编码、数据集拆分等。比如在数据处理之前,你会发现有是数据集中的间隙(下图中的NaN部分)。不要害怕,PyCaret会自动分析数据并插入缺失值。在预处理之后,PyCaret还贴心地为你准备了各种模型。从模型训练、选型到测试,只有你想不到的,没有做不到的。如果数据已经处理好交给PyCaret,一个compare_models函数就可以训练库中的所有模型,比较结果后,标记最好的模型。如下图,各种模型指标的最优值会被一键标记为黄色,就看你怎么选择了。选好之后,想稍微优化一下模型?tune_model函数可以为您完成。或者,不想只选择一种型号?PyCaret还为模型集成准备了函数,你可以选择blend或stack。另外,只需几行代码就可以实现模型参数的分析(包括可视化),非常强大。最后,PyCaret还可以提供新数据的迭代预测结果。下面的效果也可以只用几行代码就可以完成。那么,这个PyCaret增强功能有哪些改进呢?(项目见传送门)PyCaret2.0EnhancedVersion这是PyCaret2.0的6大特性,其中一些在1.0中已经有了,还有一些功能,比如实验日志,好像是更新后新增的功能。实验日志对于模型的调整是必不可少的。例如,如果我们想要可视化模型在训练过程中的准确率变化,我们通常会在模型中添加一个生成日志文件的功能,以生成更直观的时间-准确率变化图。PyCaret2.0新增了实验日志功能,可以自动帮助你跟踪模型实验过程中的各项指标,并生成可视化效果。不仅如此,在2.0中,现在可以设计从模型生成到预测的所有工作流程。换句话说,您可以设置一个自定义“管道”,其中所有模块功能从训练到测试都是自动化的。甚至,PyCaret2.0还提供了构建机器学习模型前端软件的工具。并且,PyCaret2.0现在支持几乎所有算法的并行处理,xgboost和catboost模型也支持GPU训练。此外,还有一些新的程序功能等你来发现。传送门项目地址:https://github.com/pycaret/pycaret/releases/tag/2.0