facets学习(1):什么是facets
2017-07-20 09:09 很大很老实 阅读(1344) 评论(0) 编辑 收藏 举报ML 数据集可以包含数亿个数据点,每个数据点由数百(甚至数千)的特征组成,几乎不可能以直观的方式了解整个数据集。为帮助理解、分析和调试 ML 数据集,谷歌开源了 Facets,一款可视化工具。
Facets 包含两个部分 —— Facets Overview 和 Facets Dive ,允许用户以不同的粒度查看其数据的整体图像。Facets Overview 可用于可视化数据的每一个特征,Facets Dive 用来探索个别的数据观察集。
可视化的部分是通过(https://www.polymer-project.org)Polymer web components来实现的。后来采用的开发语言是TS(可恶,为啥不是JS,还要去学习)。
而且,很容易的就可以嵌入到jupyter notebooks(使用python的我乐了)或者嵌入到web网页中。
具体的demo可以访问网页:https://pair-code.github.io/facets/
Facets Overview 可以让用户快速了解其数据集特征值的分布情况,可以在相同的可视化上比较多个数据集,例如训练集和测试集。阻碍机器学习的常见数据问题被推到最前端,比如出乎意料的特征值、具有高比例遗失值的特征、带有不平衡分布的特征,数据集之间的特征分布偏差等等。
Facets Dive 则提供了一个易于定制的直观界面,用于探索数据集中不同特征数据点之间的关系。它是一种交互式探索多达数万个数据点的工具,允许用户在高级概述和低级细节之间进行无缝切换。通过 Facets Dive,你可以控制位置、颜色和视觉表现。每个示例在可视化中被表示为单个项目,并且可以通过其特征值在多个维度上通过 faceting/bucketing 来定位点。通过结合细分和过滤,Dive 可以轻松地在复杂数据集中识别样式和异常值。