0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Facebook为人工智能研究开放轻量级交互式可视化库/工具HiPlot

倩倩 来源:读芯术 2020-03-27 14:52 次阅读

不久前,Facebook为人工智能研究开放了自家的轻量级交互式可视化库/工具HiPlot。它使机器学习研究人员和数据科学家可以大量使用平行绘图来分析相关性并观察高维数据中的模式。

什么是平行图?

平行图是将高维或多元数据可视化的便捷方法之一。

· 对于n个维度,绘制n条平行线,垂直且等间隔。这些用作轴。

· 每个数据点由一条折线表示,在平行轴上具有顶点。

以下是使用ML 101 Iris数据集的直观示例。观察代表一个数据点的蓝色折线,并查看该数据点下面的表格记录。

为什么选择HiPlot?

机器学习的超参数调整

这就是Facebook构建HiPlot的目的。

由于神经网络需要调整从几个到数十个任意位置的超参数,因此可视化分析训练运行的能力对于进一步微调和构建性能模型至关重要。

HiPlot:过滤20个“历元”后获得的数据点,然后通过“有效ppl”轴进行切片。它表明,更高的学习率可以带来更好的表现。

多元数据探索性分析

以探索房屋数据这一熟悉场景为例。

· 可以使用HiPlot的交互式绘图对图表进行过滤和切片,从而快速查看昂贵的属性是否聚集在特定的邮政编码或城市内。

· 可以分析各种属性与房价之间的关系。

由于具有挖掘和分析高维数据点的能力,这些图比静态2D热力图或相关系数表具有更高的透明度和灵活性。

简单性和可扩展性

能够选择将HiPlot用作notebook中的python库或网络应用程序,就可以马上开始对其进行使用。有了支持自定义解析器、过滤和切片可视化内容的可共享URL之类的功能,HiPlot会优先考虑灵活性和协作性,还与Facebook的其他开源AI库的日志兼容。

入门

安装

pip install hiplot

安装后,可以通过两种方式使用Hiplot。

· 作为Jupyter Notebooks中的python库

import hiplot as hip

· 通过在终端/ 命令行中启动Web服务器,作为Flask Web应用程序:

(To launch as localhost)

》》》 hiplot(To enable sharing plot URLs)

》》》 hiplot --host 0.0.0.0

注意:要使用网络应用程序,必须实现附带实验提取器,这将在后文的“高级功能”部分中概述。

Notebook中的日常简单场景

以下是利用HiPlot分析各种学习率,辍学率和优化器如何影响训练损失的日常使用案例。

import hiplot as hip

data = [

{‘dropout’:0.1,

‘learning_rate’: 0.001,

‘optimizer’: ‘SGD’,

‘loss’: 10.0

},

{‘dropout’:0.15,

‘learning_rate’: 0.01,

‘optimizer’: ‘Adam’,

‘loss’: 3.5

},

{‘dropout’:0.3,

‘learning_rate’: 0.1,

‘optimizer’: ‘Adam’,

‘loss’: 4.5

}]hip.Experiment.from_iterable(data).display(force_full_width=True)

图表及表格呈现如下。

是的,就是这么简单。

进阶能力

树与关系

看一个示例,这个例子希望通过指定后代关系来关联相关数据点。由于正在处理高维数据点,这使得可视化突然变得复杂。但是HiPlot帮你搞定了。

观察以下基于人口的训练示例,这是一种遗传算法,其中可以使用不同的超参数将训练任务多次分叉。属于同一训练代的数据点被连接起来。

在上面的示例中,平行图下方的关系图显示了数据点之间的关系。在关系图中,每条折线代表一组连接的数据点,而折线中的每个顶点代表一个数据点。是的,它仍然是交互式的!因此,当鼠标悬停在关系图中的顶点上时,平行图中将突出显示相应的数据点。

下面是生成上面曲线的代码。关系随机分配,但要点很好把握。

exp = hip.Experiment()

exp.display_data(hip.Displays.XY).update({

‘axis_x’: ‘generation’,

‘axis_y’: ‘loss’,

})

for i in range(200):

dp = hip.Datapoint(

uid=str(i),

values={

‘generation’: i,

‘param’: 10 ** random.uniform(-1, 1),

‘loss’: random.uniform(-5, 5)

})

if i 》 10:

from_parent = random.choice(exp.datapoints[-10:])

# Connecting the parent to the child

dp.from_uid = from_parent.uid dp.values[‘loss’] += from_parent.values[‘loss’]

dp.values[‘param’] *= from_parent.values[‘param’]

exp.datapoints.append(dp)

实验提取器

将实验提取器视为美化的解析器,允许以可迭代和可绘制的形式提取,转换和加载数据。

如打算在网络应用程序模式下使用HiPlot,则必须实现实验提取器。如果是在notebook操作,只要对可视化数据采用表格形式或可迭代形式,就可不用读取器。

下面是一个实现实验提取器的示例。

提取程序:fetch_local_csv_experiment

提取程序前缀:localcsvxp://

目的:从本地文件系统加载CSV数据文件以进行可视化

import hiplot as hip

deffetch_local_csv_experiment(uri):

# Only apply this fetcher if the URI starts with webxp://

PREFIX=“localcsvxp://”

ifnot uri.startswith(PREFIX):

# Let other fetchers handle this one

raise hip.ExperimentFetcherDoesntApply()

# Parse out the local file path from the uri

local_path = uri[len(PREFIX):] # Remove the prefix

# Return the hiplot experiment to render

return hip.Experiment.from_csv(local_path)

使用网络应用程序

一旦实现了如上所述的实验提取器,就可以启动网络应用程序。

在示例中,fetch_local_csv_experiment提取程序(前缀localcsvxp://)存储在fetchers.py文件中。

可以在终端/命令行中以如下方式启动HiplotWeb服务器:

》》》 hiplotfetchers.fetch_local_csv_experiment --host 0.0.0.0

服务器将在一秒钟内启动。将URL复制到Web浏览器。

在突出显示的输入框中,用以下格式输入文件路径:

《fetcher_prefix》《file path》

可以与其他人共享过滤后的视图的URL。为此,需要使用“--host 0.0.0.0”标志启动Web服务器。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4572

    浏览量

    98737
  • Facebook
    +关注

    关注

    3

    文章

    1428

    浏览量

    54029
  • 人工智能
    +关注

    关注

    1776

    文章

    43842

    浏览量

    230590
收藏 人收藏

    评论

    相关推荐

    市场前景向好,交互式人工智能提供商声通科技迎广阔发展空间

    根据艾瑞咨询报告,2022年中国企业级交互式人工智能解决方案的市场渗透率仅为10.4%,美国市场渗透率为16.7%。目前中国企业级交互式人工智能解决方案的市场渗透率仍有巨大提升空间,预
    的头像 发表于 04-11 14:12 96次阅读

    声通科技全栈交互式人工智能,助力企业智能化升级

    在数字化浪潮席卷全球的今天,人工智能已经成为企业转型升级、提升竞争力的关键力量。上海声通信息科技股份有限公司(以下称:声通科技或公司)作为中国第二大企业级全栈交互式人工智能解决方案提供商,凭借其强大
    的头像 发表于 03-20 09:56 112次阅读

    嵌入人工智能的就业方向有哪些?

    于工业、农业、医疗、城市建设、金融、航天军工等多个领域。在新时代发展背景下,嵌入人工智能已是大势所趋,成为当前最热门的AI商业途径之一。
    发表于 02-26 10:17

    数据可视化的未来:2024 年及以后

    随着我们进入数据驱动决策的下一个时代,数据可视化领域即将迎来一场变革性革命。随着信息的不断涌入和数据的复杂性不断增加,传统的可视化方法需要帮助跟上步伐。人工智能、机器学习和增强现实等新兴技术正在为新一代实时数据
    的头像 发表于 01-25 11:52 198次阅读

    【飞腾派4G版免费试用】为欧拉系统安装可视化界面(deepin)

    一、什么是欧拉系统 “欧拉OS”是华为公司开发的一款基于Linux的操作系统。它是华为为适应未来5G时代和人工智能技术发展而研发的新一代操作系统。 该系统具有以下特征: 高安全性:提供模块
    发表于 01-05 21:19

    什么是交互式可视化?#可视化 #光点科技

    可视化
    光点科技
    发布于 :2023年10月12日 17:47:54

    ai人工智能机器人

    随着时间的推移,人工智能的发展越来越成熟,智能时代也离人们越来越近,近几年人工智能越来越火爆,人工智能的应用已经开始渗透到各行各业,与生活交融,成
    发表于 09-21 11:09

    《通用人工智能:初心与未来》-试读报告

    作者给出的结论。整体读下来,可以给我们关于通用人工智能全面的了解。作者也反复强调了通用人工智能与专用智能的区别。尤其是人们错误的认为一堆专用智能堆砌起来就是通用
    发表于 09-18 10:02

    可视化大屏设计模板 | 主题皮肤(报表UI设计)

    下载使用可视化大屏设计模板,减少重复性操作,提高报表制作效率的同时也确保了报表风格一致,凸显关键数据信息。 软件:奥威BI系统,又称奥威BI数据可视化工具 所属功能板块:主题皮肤上传下载(数据可视化
    发表于 09-12 10:10

    财务数据分析?奥威BI数据可视化工具很擅长

    智能财务指标计算功能,还拥有一套标准、系统的财务数据分析方案,无需测试,下载即可用! 奥威BI工具+智能财务方案:轻松完成
    发表于 08-29 09:44

    紧跟老板思维,这款数据可视化工具神了

    多维度自助分析;可无边界钻取分析,帮助商品/运营部门以数据驱动运营,实现数字运营管理。 在奥威BI数据可视化工具的多维动态分析功能的帮助下,即使是同一张报表,也能顺应不同角色的分析思维去分析、挖掘、展现,为企业运营决策提供更加详尽的数据信息。
    发表于 08-22 13:46

    SpeedBI数据可视化工具:浏览器上做分析

    的数据源,如数据、Excel、CSV等,从而满足不同用户的需求。 数据可视化图表多 SpeedBI数据分析云是一款数据可视化工具,提供包括折线图、树图、机器状态图、仪表盘等在内的数十种数据
    发表于 08-22 10:55

    keras可视化介绍

    keras可视化可以帮助我们直观的查看所搭建的模型拓扑结构,以及模型的训练的过程,方便我们优化模型。 模型可视化又分为模型拓扑结构可视化以及训练过程可视化。 以上一讲的mnist为例,
    发表于 08-18 07:53

    10款数据可视化工具,同行公认的好BI

    一款普及率很高的数据可视化工具,它具有强大的数据引擎和灵活的界面,可以快速地制作交互式图表、仪表板和报表等。 2、Power BI 这是一款由微软开发的商业智能工具,它可以连接到各种数据源,并能够生成各种
    的头像 发表于 08-10 10:46 780次阅读
    10款数据<b class='flag-5'>可视化工具</b>,同行公认的好BI

    奥威软件SaaS BI系统:一站数据可视化解决方案

    发展趋势。 一、介绍 奥威软件SaaS BI系统是一种基于云计算的商业智能平台,它集成了数据存储、数据分析和数据可视化等功能,使用户能够轻松地访问和分析数据。奥威软件SaaS BI系统平台提供了各种工具
    发表于 08-01 10:21