GraphBLAS_01_图的稀疏表示
python直接安装python -m pip install python-graphblas1 邻接矩阵表示图假设有如下0123个节点的有向图可以用邻接矩阵表示沿行读取是出边沿列读取是入边沿行例如node 2出边到node0, node3沿列例如node 3, 可以看到有3个1则入度为3分别来自节点123importnumpyasnp Anp.array([[0,1,1,0],[1,1,0,1],[1,0,0,1],[0,0,1,1]],dtypenp.int32)虽然邻接矩阵概念上很好但用二维稠密数组就是每个数存储极其低效例如100 万用户社交关注关系图平均每人关注 100 人的场景下2 稀疏存储表示图实际上就是只记录不为0的坐标和值graphblas内部的计算基于稀疏数据结构但是用哪种结构由框架智能选择。2.1 COO/CSR/CSC计算的时候从COO格式构造内部计算都是用的CSR没有必要显示指定框架内部智能决定用什么数据结构importgraphblasasgb# COO 三元组row[0,0,1,1,1,2,2,3,3]col[1,2,0,1,3,0,3,2,3]val[1]*9# 构建矩阵默认 CSRAgb.Matrix.from_coo(row,col,val,nrows4,ncols4)# Matrix 4x4, int64, 9 entries# 默认就是 CSR 格式print(A)显示查看COO, CSR,CSC的储存细节CSC用的是按照列进行索引来记录非0坐标importnumpyasnpfromscipy.sparseimportcoo_matrix,csr_matrix# 1. 准备 COO 格式的数据rownp.array([0,0,1,1,1,2,2,3,3])colnp.array([1,2,0,1,3,0,3,2,3])datanp.array([1,1,1,1,1,1,1,1,1])# 2. 构建 COO 矩阵构建阶段coocoo_matrix((data,(row,col)),shape(4,4))# 3. 转换为 CSR 格式计算阶段这会自动完成压缩csrcoo.tocsr()# 查看结果print(csr.toarray())# 输出: [[0 1 0] [0 0 1] [0 0 0]]print(csr.indptr)# 输出: [0 2 5 7 9] (行索引被压缩了)print(csr.indices)# 输出: [1 2 0 1 3 0 3 2 3]print(csr.data)# 输出: [1 1 1 1 1 1 1 1 1]#4. 转换为 CSC 格式计算阶段这会自动完成压缩csccoo.tocsc()print(csc.toarray())print(csc.indptr)# 输出: [0 2 4 6 9] (列索引被压缩了)print(csc.indices)# 输出: [1 2 0 1 0 3 1 2 3]print(csc.data)# 输出: [1 1 1 1 1 1 1 1 1]2.2 3种表达方式说明2.3 和稠密的规模对比场景100 万用户关注关系的场景平均每人关注 100 个人3 介于稀疏和稠密之间的bitmaprbitmapcbitmaprBitmap by Row按行位图存储是 python-graphblas 的 另一种内部存储格式SuiteSparse:GraphBLAS 7.0新引入的一种内部格式介于 CSR 和稠密矩阵之间专为半稠密场景优化。比如CSR是存每行的列索引只存非零那 BitMapR:就是每行用 01 位图标记所有列“1” 的位置就是非零构造逻辑如下bitmapc和bitmapr逻辑一致只不过是按列。3.1 bitmapr和CSR对比BitMapR 的核心优势A[i, j]查询是 O(1)读位图CSR 要 O(log k) 二分查找。3.2 什么时候用 BitmapR条件推荐格式每行非零数 / ncols 10%CSR每行非零数 / ncols ≈ 20%~6%BitmapR每行非零数 / ncols 80%FullR稠密大量全空行HyperCSR

相关新闻

NAS硬盘选购与RAID阵列配置全指南

NAS硬盘选购与RAID阵列配置全指南

1. NAS硬盘选购的核心考量因素当我们需要为NAS系统选购硬盘时,不能简单地套用普通PC硬盘的选择标准。NAS作为24x7不间断运行的存储设备,对硬盘的可靠性、耐用性和性能稳定性有着更高的要求。以下是几个关键选购指标:1.1 转速与缓存的选择5400…

2026/7/22 13:34:19 阅读更多 →
AI工具提升学术写作效率:4款实用工具评测

AI工具提升学术写作效率:4款实用工具评测

1. 学术写作效率革命:4款AI工具深度评测去年帮导师审稿时,我发现近30%的投稿都带有明显的AI辅助痕迹。这促使我系统测试了市面上12款论文写作工具,最终筛选出4个真正能提升科研效率的利器。不同于常见的浮夸推荐,本文将基于三个月…

2026/7/23 14:53:41 阅读更多 →
OpenClaw开源AI助手框架本地部署指南

OpenClaw开源AI助手框架本地部署指南

1. OpenClaw项目概述OpenClaw是一个开源的AI助手框架,它允许开发者在本地环境中部署和定制自己的AI对话系统。这个框架特别适合需要私有化部署AI能力的企业或个人开发者,能够整合多种AI模型并通过统一接口提供服务。我第一次接触OpenClaw是在为一个客户构…

2026/7/23 21:35:25 阅读更多 →

最新新闻

05-职业发展-AI时代数字孪生开发者进阶指南从技术执行者到价值创造者

05-职业发展-AI时代数字孪生开发者进阶指南从技术执行者到价值创造者

AI时代数字孪生开发者进阶指南:从技术执行者到价值创造者的转型之路 引言 在AI技术汹涌来袭的时代背景下,数字孪生开发者面临着前所未有的职业发展挑战。传统的"写代码-做项目-交付"的线性发展路径正在被打破,取而代之的是"技…

2026/7/23 22:27:24 阅读更多 →
网站自动建站备份工具:本地测试站,1分钟平滑传阿里云

网站自动建站备份工具:本地测试站,1分钟平滑传阿里云

普通办公电脑上的网页文件传到云端服务器,过去靠手动上传。现在用软件打包。本地运行环境装有PHP 8.1版本的电脑里,存放着500MB的网页图片。传到拥有2核4G配置的阿里云轻量应用服务器,整个动作在60秒内完成。文件传输速度能达到每秒15MB。普通…

2026/7/23 22:27:24 阅读更多 →
AI Agent面试题第二期(持续更新)

AI Agent面试题第二期(持续更新)

一、Python基础&工程能力(10题) ### 基础题1. 简历提到你使用过**生成器、装饰器、上下文管理器、匿名函数**,分别说说它们的作用,结合你的Streamlit流式输出项目举例说明生成器怎么解决回答丢失问题? 生成器作用&…

2026/7/23 22:27:24 阅读更多 →
6人AI旅行开发团队覆盖1140城,实现5000万营收的产品路径

6人AI旅行开发团队覆盖1140城,实现5000万营收的产品路径

2026年全球AI旅游规划助手市场规模已突破478亿美元,年增长率达41.6%,亚太地区贡献全球58%的增量。赛道已进入整合期,产品形态分化为四大阵营。独立开发者面临技术门槛降低、垂直细分、B端SaaS蓝海等明确机遇,但构建“规划-预订”闭…

2026/7/23 22:27:24 阅读更多 →
【关注可白嫖源码】--课程设计--毕业设计--springboot体育馆运营管理平台[编号:project75681](案件分析)

【关注可白嫖源码】--课程设计--毕业设计--springboot体育馆运营管理平台[编号:project75681](案件分析)

本文仅展示核心实现逻辑与部分代码片段,完整项目源码、配套文档、数据库脚本内容较多,篇幅有限无法全部放出。 有需要完整资源的同学,可以在评论区留言【资料或领源码】,我会一 一回复站内私信,发送完整文件 摘 要 传…

2026/7/23 22:27:24 阅读更多 →
KTV行业数字化升级:技术如何解决经营痛点

KTV行业数字化升级:技术如何解决经营痛点

传统KTV的经营挑战 许多KTV门店在经营中常面临一些共性问题:获客渠道单一,主要依赖线下自然客流,线上预订和宣传缺失;包厢管理靠人工登记,房态更新不及时,容易出现重复预订和混乱;零食酒水库存靠…

2026/7/23 22:26:23 阅读更多 →

日新闻

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

更多请点击: https://intelliparadigm.com 第一章:从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表) 当AI副业主理人不再仅满足于单次服务交付,而是主动构建可复用、可裂变、可…

2026/7/23 0:00:25 阅读更多 →
AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

更多请点击: https://codechina.net 第一章:AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析 在对2,346篇跨行业AI生成文案的A/B测试数据进行聚类分析后,我们发现&#xff1…

2026/7/23 0:01:26 阅读更多 →
Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具 【免费下载链接】chitchatter Secure peer-to-peer chat that is serverless, decentralized, and ephemeral 项目地址: https://gitcode.com/gh_mirrors/ch/chitchatter Chitchatter是一款革命性的安…

2026/7/23 0:01:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 8:58:19 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/22 19:43:43 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/23 17:49:47 阅读更多 →

月新闻