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

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

3天内不再提示

NETWORKX Python编程语言软件包概述及用途

NVIDIA英伟达 来源:NVIDIA英伟达 作者:NVIDIA英伟达 2022-07-01 11:30 次阅读

NetworkX 是一个 Python 编程语言软件包,可用于创建、操作和学习复杂图形网络的结构、动态和功能。

什么是 NETWORKX ?

NetworkX 是一个进行复杂图形网络分析的 Python 软件包。要了解 NetworkX 功能,首先需要了解图形。图形是一种数学结构,用于对物理、生物、社会和信息系统中多种类型的关系和过程进行建模。图形由通过边缘连接(表示这些实体之间的关系)的节点或顶点(表示系统实体)构成。图形处理是一种能够穿梭各边缘和节点的功能,用于发现和理解网络中关联数据之间的复杂关系和/或优化路径。

图形网络分析有许多用途,例如分析社交网络中的关系、网络威胁检测,以及根据共同偏好识别潜在买家。

在现实世界中,节点可以是人员、群组、地点或事物,例如客户、产品、成员、城市、商店、机场、端口、银行帐户、设备、手机、分子或网页。

节点之间的边缘或关系示例包括友谊、网络连接、超链接、道路、路线、电线、电话、电子邮件、“点赞”、支付、交易、电话呼叫和社交网络消息。边缘可以用一个单向箭头来表示从一个节点到另一个节点的关系,比如,如果 Janet “点赞了” Jeanette 的一篇社交媒体文章。不过,它们也可以是无向的,比如,如果 Bob 是 Alice 的 Facebook 好友,那么 Alice 也是 Bob 的好友。

NetworkX 节点可以是任何可哈希的对象,它的值保持永久改变。这些值可以是文本字符串、图像、XML 对象、整个图形,也可以是自定义节点。基本软件包内提供了多个函数,可以借助这些函数以多种格式生成、读取和编写图形。

NetworkX 能够处理具有 1000 多万个节点和 1 亿多个边缘的巨大图形。核心软件包是符合 BSD 许可的免费软件,其中包括表示简单图形、有向图形以及采用并行边缘和自循环的图形等的数据结构。NetworkX 还具有一个庞大的开发者社区。开发者会维护核心软件包,并为第三方生态系统贡献力量。

NetworkX 具有以下主要用途:

研究社会、生物和基础设施网络结构和动态

标准化图形的编程环境

快速开发协同跨学科项目

与使用 C、C++ 和 FORTRAN 编写的算法和代码集成

处理大型非标准数据集

NetworkX 易于安装和使用,尤其是对于 Python 开发者而言。

为何选择图形分析?

图形分析可用于确定图形中对象之间的关系强度和方向。鉴于网络在我们的信息生态系统中发挥着日益重要的作用,因此,对关系分析工具的需求有着近乎无限的潜能。从购买决策到举国选举,社交网络对一切事物都有着重要影响,这一影响加速了对图形分析的使用。在发现由于网络复杂性或节点间路径的数量而导致的不明显关系时,它发挥的作用尤为明显。

图形分析对于实现以下目标作用明显:

检测洗钱等金融犯罪

识别欺诈交易及活动

在社交网络社区执行网红分析

根据客户评级或购买物来进行推荐分析。

发现电网、水网和运输网络的缺点

优化航空公司、零售和制造业的路线

了解影响力如何发挥作用,以便营销人员能够锁定最有可能为其产品树立口碑的人

根据用户之间的关系(即使用户彼此不了解),通过映射相似兴趣和共享连接,提供社交营销内容

帮助政治运动和政治科学家更好地了解导致信息病毒式传播和传播虚假新闻的因素

使得搜索引擎根据信息需求相似的人的行为偏好提供结果

为何选择 NETWORKX?

NetworkX 为数据科学家和图形数学的其他用户提供了一种标准化的方式,供其协作、构建、设计、分析和共享图形网络模型。作为以可扩展性和可移植性而闻名的免费软件,NetworkX 深受 Python 爱好者喜爱。它也是广为数据科学家喜爱的热门图形框架。数据科学家致力于构建一个充满活力的 Python 软件包生态系统,利用数值线性代数和绘图等功能扩展 NetworkX。

NETWORKX 对数据科学家的重要意义

|数据科学团队

机器学习深度学习等大数据科学项目通常需要许多团队成员共同协作。标准化工具和格式的使用大大简化了信息共享。NetworkX 根植于 Python(一种热门的数据科学语言),为 Python 库提供图形分析扩展,它只需为 Python 用户提供极少量培训,且可在多家公司及多个大洲的团队间部署。

借助 GPU 加速图形分析

GPU 具有大规模并行性,并且显存访问带宽优势显著,因此十分适用于加速数据密集型分析,特别是图形分析。GPU 采用大规模并行架构,包含数千个专为同时处理多个任务而设计的小核心,非常适合执行“为每个 X 执行 Y”的计算任务,可应用于大型图形中的顶点或边缘集。

借助 RAPIDS CUGRAPH 加速 NETWORKX

NVIDIARAPIDScuGraph 能够提供将 RAPIDS 生态系统与 NetworkX 相集成的加速图形分析库。RAPIDS cuGraph 的愿景是使图形分析无处不在,以便用户只需考虑分析而无需考虑技术或框架。

最新款 NVIDIA GPU 的强大计算能力提升了图形分析速度。此外,GPU 的内部显存速率使 cuGraph 能够快速切换数据结构,满足分析需求,而不限于单一数据结构。

通过有效利用 GPU 中的大规模并行性,RAPIDS 的图形算法(如 PageRank)和功能(如 NetworkX)能够将大型图形的分析速度提高 1000 多倍。用户可以在单块 NVIDIA A100 Tensor Core GPU 上探索多达 2 亿个边缘,并在 NVIDIA DGX A100 集群上扩展至数十亿个边缘。

NVIDIA GPU 加速的端到端数据科学

RAPIDS结合了执行高速 ETL、图形分析、机器学习和深度学习的能力。它是一套开源软件库和 API,用于完全在 GPU 上执行数据科学流程,并且可以将训练时间从几天缩短至几分钟。RAPIDS 依赖于 NVIDIA CUDA 基元进行低级别计算优化,但通过用户友好型 Python 界面实现 GPU 并行结构和极高的内存带宽。

Rapids cuGraph 无缝集成到 RAPIDS 数据科学生态系统中,使数据科学家能够使用存储在 GPU DataFrame 中的数据轻松调用图形算法。借助 RAPIDS GPU DataFrame,数据可以通过一个类似 Pandas 的接口加载到 GPU 上,然后用于各种连接的机器学习和图形分析算法,而无需离开 GPU。这种级别的互操作性是通过 Apache Arrow 这样的库实现的。这可加速端到端流程(从数据准备到机器学习,再到深度学习)。RAPIDS 和 DASK 使 cuGraph 能够扩展为多个 GPU,支持数十亿个边缘图形。

原文标题:NVIDIA 大讲堂 | 什么是 NETWORKX?

文章出处:【微信公众号:NVIDIA英伟达】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

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

    关注

    14

    文章

    4978

    浏览量

    102993
  • 编程语言
    +关注

    关注

    10

    文章

    1942

    浏览量

    34708
  • python
    +关注

    关注

    56

    文章

    4792

    浏览量

    84629

原文标题:NVIDIA 大讲堂 | 什么是 NETWORKX?

文章出处:【微信号:NVIDIA_China,微信公众号:NVIDIA英伟达】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    对比Python与Java编程语言

    Python与Java都是目前非常流行的编程语言,它们各有其独特的优势和适用场景。以下是对这两种编程语言的对比: 一、语法和易用性
    的头像 发表于 11-15 09:31 289次阅读

    苹果推出全新开源Swift软件包

    七月三十一日,苹果企业总部对外正式发表公告,宣布昨日(即七月二十九日)成功推出全新的开源 Swift 软件包—— (唤名为 swift-homomorphic-encryption)。此举旨在为 Swift 编程语言带来应用便利
    的头像 发表于 07-31 15:17 378次阅读

    安装依赖的Python软件包时报错如何解决?

    安装依赖的 Python 软件包,出现了如下错误,请问如何解决,谢谢! Command \"E:/msys32/mingw32/bin/python2.7.exe E:/msys32
    发表于 06-26 07:32

    TLE9879QXA40_eSL-BAS-EVAL未找到软件包的原因?

    我使用的是TLE987x EvalBoard。 打开我的项目时,弹出了这个窗口 点击"Yes" ,打开软件包安装程序窗口,发现以下错误 "
    发表于 05-24 07:38

    矽力杰推出SA32B系列功能安全软件包

    的功能安全资料和SafetyPack软件包支持,详细介绍可参考《矽力杰车规ASIL-BMCU重磅发布!》。该SafetyPack功能安全软件包旨在用于作为一个基于功能
    的头像 发表于 05-22 08:20 1473次阅读
    矽力杰推出SA32B系列功能安全<b class='flag-5'>软件包</b>

    Spectrum仪器为旗下200余款产品提供了灵活的Python编程功能

    Spectrum仪器旗下全部的测试测量产品。新的软件包使采样率在5MS/s到10GS/s区间的200余款仪器的编程更加快速和轻松。Python因其简单、功能多样且灵活的特性深受业内欢迎,它拥有丰富的资源库和框架
    的头像 发表于 05-15 16:51 316次阅读

    RT-Thread Studio添加软件包报错怎么解决?

    RT-Thread Studio添加软件包报错ImportError: No module named psutil
    发表于 03-01 08:41

    RZ/G柔性软件包v2.0.1发布说明

    电子发烧友网站提供《RZ/G柔性软件包v2.0.1发布说明.pdf》资料免费下载
    发表于 02-21 10:48 0次下载
    RZ/G柔性<b class='flag-5'>软件包</b>v2.0.1发布说明

    光伏逆变器拓扑概述及关键技术

    光伏逆变器拓扑概述及关键技术
    的头像 发表于 02-21 09:47 799次阅读
    光伏逆变器拓扑<b class='flag-5'>概述及</b>关键技术

    RL78系列Flash自编程库Type01软件包Ver.4.00发布说明

    电子发烧友网站提供《RL78系列Flash自编程库Type01软件包Ver.4.00发布说明.pdf》资料免费下载
    发表于 02-19 10:08 1次下载
    RL78系列Flash自<b class='flag-5'>编程</b>库Type01<b class='flag-5'>软件包</b>Ver.4.00发布说明

    RL78系列 Data Flash Library Type04软件包3.0版发布说明

    电子发烧友网站提供《RL78系列 Data Flash Library Type04软件包3.0版发布说明.pdf》资料免费下载
    发表于 02-19 10:06 0次下载
    RL78系列 Data Flash Library Type04<b class='flag-5'>软件包</b>3.0版发布说明

    四种编程语言之间的区别和联系

    编程语言是一种人与计算机之间进行交流的方式,不同的编程语言有着不同的特点和用途。本文将对四种常见的编程
    的头像 发表于 02-05 14:16 1548次阅读

    RZ/G验证的Linux软件包V2.1.20-RT 修补程序应用指南

    电子发烧友网站提供《RZ/G验证的Linux软件包V2.1.20-RT 修补程序应用指南.pdf》资料免费下载
    发表于 01-03 14:12 0次下载
    RZ/G验证的Linux<b class='flag-5'>软件包</b>V2.1.20-RT 修补程序应用指南

    RZ/G验证的Linux软件包V2.1.20-RT组件列表

    电子发烧友网站提供《RZ/G验证的Linux软件包V2.1.20-RT组件列表.pdf》资料免费下载
    发表于 01-03 14:11 0次下载
    RZ/G验证的Linux<b class='flag-5'>软件包</b>V2.1.20-RT组件列表

    RZ/G验证的Linux软件包V2.1.20-RT 发布说明

    电子发烧友网站提供《RZ/G验证的Linux软件包V2.1.20-RT 发布说明.pdf》资料免费下载
    发表于 01-03 10:11 0次下载
    RZ/G验证的Linux<b class='flag-5'>软件包</b>V2.1.20-RT 发布说明