资源|可视化工具Yellowbrick:超参与行为的可视化带来更优秀的实现
消息来源:baojiabao.com 作者: 发布时间:2024-04-23
选自GitHub
机器之心编译
参与:
思源、刘晓坤
Yellowbrick 是一套名为“Visualizers”的视觉诊断工具,它扩展了 Scikit-Learn API 以允许我们监督模型的选择过程。简而言之,Yellowbrick 将 Scikit-Learn 与 Matplotlib 结合在一起,并以传统 Scikit-Learn 的方式对模型进行可视化。
项目地址:https://github.com/DistrictDataLabs/yellowbrick
可视化器
可视化器(Visualizers)是一种从数据中学习的估计器,其主要目标是创建可理解模型选择过程的可视化。在 Scikit-Learn 的术语中,它们类似于转换器(transformer),其在可视化数据空间或包装模型估计器上类似“ModelCV”(例如 RidgeCV 和 LassoCV)方法的过程。Yellowbrick 的主要目标是创建一个类似于 Scikit-Learn 的 API,其中一些流行的可视化器包括:
特征可视化
Rank Features:单个或成对特征排序以检测关系
Parallel Coordinates:实例的水平可视化
Radial Visualization:围绕圆形图分离实例
PCA Projection:基于主成分分析映射实例
Manifold Visualization:通过流形学习实现高维可视化
Feature Importances:基于模型性能对特征进行排序
Recursive Feature Elimination:按重要性搜索最佳特征子集
Scatter and Joint Plots:通过特征选择直接进行数据可视化
分类可视化
Class Balance:了解类别分布如何影响模型
Class Prediction Error:展示分类的误差与主要来源
Classification Report:可视化精度、召回率和 F1 分数的表征
ROC/AUC Curves:受试者工作曲线和曲线下面积
Confusion Matrices:类别决策制定的视觉描述
Discrimination Threshold:搜索最佳分离二元类别的阈值
回归可视化
Prediction Error Plots:沿着目标域寻找模型崩溃的原因
Residuals Plot:以残差的方式展示训练和测试数据中的差异
Alpha Selection:展示 alpha 的选择如何影响正则化
聚类可视化
K-Elbow Plot:使用肘法(elbow method)和多个指标来选择 k
Silhouette Plot:通过可视化轮廓系数值来选择 k
模型选择可视化
Validation Curve:对模型的单个超参数进行调整
Learning Curve:展示模型是否能从更多的数据或更低的复杂性中受益
文本可视化
Term Frequency:可视化语料库中词项的频率分布
t-SNE Corpus Visualization:使用随机近邻嵌入来投影文档
还有更多的可视化器!我们随时会添加更多的可视化器,因此请确保查看示例(或甚至开发分支),并欢迎随时为我们提供建议!
安装 Yellowbrick
Yellowbrick 与 Python2.7 以及之后的版本兼容,但使用 Python3.5 或之后的版本会更合适并能利用其所有功能优势。Yellowbrick 还依赖于 Scikit-Learn 0.18 或之后的版本,以及 Matplotlib1.5 或之后的版本。最简单的安装 Yellowbrick 的方法是从 PyPI 使用 pip 安装。
$ pip install yellowbrick
注意 Yellowbrick 是一个活跃项目,将定期发布更多新的可视化器和更新。为了将 Yellowbrick 升级到最新的版本,按以下方式使用 pip 命令:
$ pip install -U yellowbrick
你也可以使用-U flag 来更新 Scikit-Learn、Matplotlib 或任何其它和 Yellowbrick 兼容的第三方最新版本应用。
如果你使用 Anaconda(推荐 Windows 用户使用),你可以使用 conda 命令来安装 Yellowbrick:
conda install -c districtdatalabs yellowbrick
然而请注意,在 Linux 上用 Anaconda 安装 Yellowbrick 有一个已知的 bug:https://github.com/DistrictDataLabs/yellowbrick/issues/205
使用 Yellowbrick
Yellowbrick API 是特别为更好地使用 Scikit-Learn 而设计的。这里有一个使用 Scikit-Learn 和 Yellowbrick 的典型工作流序列的例子:
特征可视化
在这个例子中,我们将看到 Rank2D 如何使用特定指标对数据集中的每个特征进行两两对比,然后返回展示排序的左下三角图。
from import
visualizer = Rank2D(features=features, algorithm=
"covariance"
)visualizer.fit(X, y)
# Fit the data to the visualizer
visualizer.transform(X)
# Transform the data
visualizer.poof()
# Draw/show/poof the data
模型可视化
在这个例子中,我们用具体例子来说明一个 Scikit-Learn 分类器,然后使用 Yellowbrick 的 ROCAUC 类来可视化分类器的敏感性和特异性的权衡过程。
from import import
model = LinearSVC()
model.fit(X,y)
visualizer = ROCAUC(model)
visualizer.score(X,y)
visualizer.poof()
本文为机器之心编译,
转载请联系本公众号获得授权
。?------------------------------------------------
加入机器之心(全职记者/实习生):hr@jiqizhixin.com
投稿或寻求报道:
content
@jiqizhixin.com广告&商务合作:bd@jiqizhixin.com
相关文章
- 中兴受美国制裁事件 被罚了20亿美元过程事件始末 中兴被制裁后公司现状
2023-11-02 22:12:46
- B站怎么炸崩了哔哩哔哩服务器今日怎么又炸挂了?技术团队公开早先原因
2023-03-06 19:05:55
- 苹果iPhoneXS/XR手机电池容量续航最强?答案揭晓
2023-02-19 15:09:54
- 华为荣耀两款机型起内讧:荣耀Play官方价格同价同配该如何选?
2023-02-17 23:21:27
- google谷歌原生系统Pixel3 XL/4/5/6 pro手机价格:刘海屏设计顶配版曾卖6900元
2023-02-17 18:58:09
- 科大讯飞同传同声翻译软件造假 浮夸不能只罚酒三杯
2023-02-17 18:46:15
- 华为mate20pro系列手机首发上市日期价格,屏幕和电池参数配置对比
2023-02-17 18:42:49
- 小米MAX4手机上市日期首发价格 骁龙720打造大屏标准
2023-02-17 18:37:22
- 武汉弘芯遣散!结局是总投资1280亿项目烂尾 光刻机抵押换钱
2023-02-16 15:53:18
- 谷歌GoogleDrive网云盘下载改名“GoogleOne” 容量提升价格优惠
2023-02-16 13:34:45
- 巴斯夫将裁员6000人 众化工巨头裁员潮再度引发关注
2023-02-13 16:49:06
- 人手不足 韵达快递客服回应大量包裹派送异常没有收到
2023-02-07 15:25:20
- 资本微念与李子柒销声匿迹谁赢? 微念公司退出子柒文化股东
2023-02-02 09:24:38
- 三星GalaxyS8 S9 S10系统恢复出厂设置一直卡在正在检查更新怎么办
2023-01-24 10:10:02
- 华为Mate50 RS保时捷最新款顶级手机2022多少钱?1.2万元售价外观图片吊打iPhone14
2023-01-06 20:27:09
- 芯片常见的CPU芯片封装方式 QFP和QFN封装的区别?
2022-12-02 17:25:17
- 华为暂缓招聘停止社招了吗?官方回应来了
2022-11-19 11:53:50
- 热血江湖手游:长枪铁甲 刚猛热血 正派枪客全攻略技能介绍大全
2022-11-16 16:59:09
- 东京把玩了尼康微单相机Z7 尼康Z7现在卖多少钱?
2022-10-22 15:21:55
- 苹果iPhone手机灵动岛大热:安卓灵动岛App应用下载安装量超100万次
2022-10-03 22:13:45