2、ITMO_FS
ITMO_FS 是一个特征选择库,它可以为 ML 模型进行特征选择。拥有的观察值越少,就越需要谨慎处理过多的特征,以避免过度拟合。所谓“谨慎”意思是应该规范你的模型。通常一个更简单的模型(更少的特征),更容易理解和解释。
ITMO_FS 算法分为 6 个不同的类别:监督过滤器、无监督过滤器、包装器、混合、嵌入式、集成(尽管它主要关注监督过滤器)。
“监督过滤器”算法的一个简单示例是根据特征与目标变量的相关性来选择特征。“backward selection”,可以尝试逐个删除特征,并确认这些特征如何影响模型预测能力。
这是一个关于如何使用 ITMO_FS 及其对模型分数的影响的普通示例:
from sklearn.linear_model import SGDClassifier from ITMO_FS.embedded import MOS X, y = make_classification(n_samples=300, n_features=10, random_state=0, n_informative=2) sel = MOS() trX = sel.fit_transform(X, y, smote=False) cl1 = SGDClassifier() cl1.fit(X, y) cl1.score(X, y) 0.9033333333333333 cl2 = SGDClassifier() cl2.fit(trX, y) cl2.score(trX, y)
0.9433333333333334
ITMO_FS是一个相对较新的库,因此它仍然有点不稳定,但我仍然建议尝试一下。
3、shap-hypetune
到目前为止,我们已经看到了用于特征选择和超参数调整的库,但为什么不能同时使用两者呢?这就是 shap-hypetune 的作用。
让我们从了解什么是“SHAP”开始:
“SHAP(SHapley Additive exPlanations)是一种博弈论方法,用于解释任何机器学习模型的输出。”
SHAP 是用于解释模型的最广泛使用的库之一,它通过产生每个特征对模型最终预测的重要性来工作。
另一方面,shap-hypertune 受益于这种方法来选择最佳特征,同时也选择最佳超参数。你为什么要合并在一起?因为没有考虑它们之间的相互作用,独立地选择特征和调整超参数可能会导致次优选择。同时执行这两项不仅考虑到了这一点,而且还节省了一些编码时间(尽管由于搜索空间的增加可能会增加运行时间)。
搜索可以通过 3 种方式完成:网格搜索、随机搜索或贝叶斯搜索(另外,它可以并行化)。
但是,shap-hypertune 仅适用于梯度提升模型!
4、PyCaret
PyCaret 是一个开源、低代码的机器学习库,可自动执行机器学习工作流。 它涵盖探索性数据分析、预处理、建模(包括可解释性)和 MLOps。
让我们看看他们网站上的一些实际示例,看看它是如何工作的:
load dataset from pycaret.datasets import get_data diabetes = get_data(‘diabetes’) init setup from pycaret.classification import * clf1 = setup(data = diabetes, target = ‘Class variable’) compare models best = compare_models()
只需几行代码,就可以尝试多个模型,并在整个主要分类指标中对它们进行了比较。
它还允许创建一个基本的应用程序来与模型进行交互:
from pycaret.datasets import get_data juice = get_data(‘juice’) from pycaret.classification import * exp_name = setup(data = juice, target = ‘Purchase’) lr = create_model(‘lr’) create_app(lr) 最后,可以轻松地为模型创建 API 和 Docker 文件: from pycaret.datasets import get_data juice = get_data(‘juice’) from pycaret.classification import * exp_name = setup(data = juice, target = ‘Purchase’) lr = create_model(‘lr’) create_api(lr, ‘lr_api’) create_docker(‘lr_api’)
没有比这更容易的了,对吧?
PyCaret是一个非常完整的库,在这里很难涵盖所有内容,建议你现在下载并开始使用它来了解一些 其在实践中的能力。
5、floWeaver
FloWeaver 可以从流数据集中生成桑基图。 如果你不知道什么是桑基图,这里有一个例子:
在显示转化漏斗、营销旅程或预算分配的数据时,它们非常有用(上例)。 入口数据应采用以下格式:“源 x 目标 x 值”,只需一行代码即可创建此类图(非常具体,但也非常直观)。
6、Gradio
如果你阅读过敏捷数据科学,就会知道拥有一个让最终用户从项目开始就与数据进行交互的前端界面是多么有帮助。一般情况下在Python中最常用是 Flask,但它对初学者不太友好,它需要多个文件和一些 html、css 等知识。
Gradio 允许您通过设置输入类型(文本、复选框等)、功能和输出来创建简单的界面。 尽管它似乎不如 Flask 可定制,但它更直观。
由于 Gradio 现在已经加入 Huggingface,可以在互联网上永久托管 Gradio 模型,而且是免费的!
7、Terality
理解 Terality 的最佳方式是将其视为“Pandas ,但速度更快”。这并不意味着完全替换 pandas 并且必须重新学习如何使用df:Terality 与 Pandas 具有完全相同的语法。实际上,他们甚至建议“import Terality as pd”,并继续按照以前的习惯的方式进行编码。
如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!