超图论文细品——2019年AAAI《Hypergraph Neural Networks》

news2024/10/7 6:48:25

我是“导航”

  • 1 摘要
    • 1.1 简介
    • 1.2 问题描述
  • 2 超图
    • 2.1 图和超图对比
  • 参考


1 摘要

1.1 简介

文章提出了一种名为超图神经网络的框架,用于高维数据的表示学习。
该方法英文称呼为 Hypergraph Neural Networks,简写为 HGNN

1.2 问题描述

  • 传统的 GNN 是用于低维数据的表示学习的,没有办法对高维复杂数据进行建模。
  • 超图可以对复杂数据进行建模,挖掘数据中的高维关系。
  • 但是对超图进行表示学习,这仍没有解决方案。

因此,文章作者提出了 HGNN 方法/框架来解决这一问题。

2 超图

2.1 图和超图对比

图和超图最大的区别在于:图中边的度为 2,而超图中边的度可以是任意值(原文说了一个词,特别好:degree-free)。
在这里插入图片描述
文章中给出了一个示例:
在这里插入图片描述
上面部分,是一个图(Graph),下面部分是这个图对应的邻接矩阵(adjacency matrix)。

补充:帮助忘记怎么得到邻接矩阵的小伙伴回忆一下,加深印象。

  • 图中的圆圈表示顶点,不同的颜色对不同的顶点加以区分;短线表示边,不同的颜色对不同的边加以区分。图中共有 8 个顶点,记为 { n 1 , n 2 , n 3 , … , n 8 } \{n_1,n_2,n_3, \dots, n_8\} {n1,n2,n3,,n8};共有 6 条边。
  • 每个顶点,如 n 1 n_1 n1,可以连接其他 7 个顶点以及自身,共 8 个顶点。将顶点 n 1 n_1 n1 连接其他顶点的情况排成一行,那么 8 个顶点连接情况就是 8 行,因此就组成了 8 行 8 列的矩阵(8*8)。
  • 如果顶点 n i n_i ni 和顶点 n j n_j nj 相连,那么邻接矩阵的第 i i i 行第 j j j 列位置 ( i , j ) (i, j) (i,j) 上的元素值应该为 1;否则为 0。(前提:所有的顶点按顺序排列。)
  • 这个矩阵的第一行第一个元素表示顶点 n 1 n_1 n1 连接顶点 n 1 n_1 n1 的情况,第一行的第二个元素表示顶点 n 1 n_1 n1 连接顶点 n 2 n_2 n2 的情况;其余的以此类推。
  • 观察图, n 1 n_1 n1(蓝色)连接了 n 5 n_5 n5(灰色)和 n 6 n_6 n6(青色),因此第一行的第五个元素、第六个元素值应该为 1,第一行的其他位置元素值为 0。矩阵的其他位置的值,采取同样的策略赋值。
  • 对于无向图,邻接矩阵是对称的;对于有向图,邻接矩阵一般不对称。

在这里插入图片描述
原文中说有多组超边(Hyperedge group 1/2/3/…/N),我理解的应该多种输入数据的形式。

观察上面这个超图,顶点和上面图中的顶点,是一模一样的。常用 V V V 表示顶点集合,由此 V = { n 1 , n 2 , … , n 8 } V=\{n_1,n_2,\dots, n_8\} V={n1,n2,,n8}。超边和图中的边就稍微有些不同了。上面提到,图中有 6 条边,颜色对边进行了区分。超图这里也是用颜色对超边进行了区分。

补充:作者牛逼。这图的审美,真的太棒了。

好了,话说回来,不同的超边使用了不同的颜色。超图中有三种颜色的超边,黑色、红色、深绿色,分别用符号 e 1 e_1 e1 e 2 e_2 e2 e 3 e_3 e3 来表示。

构建关联矩阵(incidence matrix):行表示顶点,8 个顶点, n 1 n_1 n1 n 2 n_2 n2 … \dots n 8 n_8 n8;列表示超边,3 条超边, e 1 e_1 e1 e 2 e_2 e2 e 3 e_3 e3。如果某一个顶点属于某一条超边,则关联矩阵对应位置的值为 1;否则为 0。

  • 超边 e 1 e_1 e1 包含顶点 n 2 n_2 n2 n 4 n_4 n4 n 8 n_8 n8,所以 ( n 2 , e 1 ) (n_2, e_1) (n2,e1) ( n 4 , e 1 ) (n_4, e_1) (n4,e1) ( n 8 , e 1 ) (n_8, e_1) (n8,e1) 位置上的值为 1, e 1 e_1 e1 列其他位置上的值为 0。
  • 超边 e 2 e_2 e2 包含顶点 n 1 n_1 n1 n 6 n_6 n6 n 7 n_7 n7,所以 ( n 1 , e 2 ) (n_1, e_2) (n1,e2) ( n 6 , e 2 ) (n_6, e_2) (n6,e2) ( n 7 , e 2 ) (n_7, e_2) (n7,e2) 位置上的值为 1, e 2 e_2 e2 列其他位置上的值为 0。
  • 超边 e 3 e_3 e3 包含顶点 n 3 n_3 n3 n 5 n_5 n5 n 7 n_7 n7,所以 ( n 3 , e 3 ) (n_3, e_3) (n3,e3) ( n 5 , e 3 ) (n_5, e_3) (n5,e3) ( n 7 , e 3 ) (n_7, e_3) (n7,e3) 位置上的值为 1, e 3 e_3 e3 列其他位置上的值为 0。
  • 不知道大家发现没有,顶点 n 7 n_7 n7 在两条超边 e 2 e_2 e2 e 3 e_3 e3 都存在。

在这里插入图片描述
同理,可以得到第 N N N 种数据形式下的关联矩阵 H N H_N HN

在这里插入图片描述
然后将这 N N N 个关联矩阵 { H 1 , H 2 , … , H N } \{H_1, H_2, \dots, H_N\} {H1,H2,,HN} 拼接起来,得到了最后的 H H H。也即是说:
H = ⋃ i = 1 N H i . H = \bigcup^N_{i=1} H_i. H=i=1NHi.

解读:一般的数据超图只有一个,也即是说只有一个 H H H。而论文中提到了 N N N H i H_i Hi 进行拼接得到一个 H H H,应该是为了更好地利用多模态的数据。即考虑了多种数据的形式。

参考

  1. Y. Feng, H. You, Z. Zhang, R. Ji et.al. Hypergraph neural networks. In Proceedings of the AAAI conference on artificial intelligence, 2019 (Vol. 33, No. 01, pp. 3558-3565).

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1835622.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多模态大模型通用模式

MM-LLMs(多模态大模型)是目前比较新的和实用价值越发显著的方向。其指的是基于LLM的模型,具有接收、推理和输出多模态信息的能力。这里主要指图文的多模态。 代表模型:GPT-4o、Gemini-1.5-Pro、GPT-4v、Qwen-VL、CogVLM2、GLM4V、…

服务器测试之硬盘规格扫盲贴

最近整理了AVL系统里的SSD相关规格信息,来个了解硬盘规格信息的扫盲贴,过程很曲折,但是认为学习一下相关规格参数还是很有用的 1.什么是硬盘 硬盘是计算机最主要的存储设备,平常买电脑的时候看到的配置24G1T里的1T就是硬盘,计算机…

ECharts 词云案例三:2024年阅读关键词

ECharts 词云案例三:2024年阅读关键词 引言 在数据可视化领域,ECharts 以其强大的功能性和灵活性,成为开发者和设计师的首选工具之一。继上一篇关于 ECharts 词云图的详细介绍后,本文将探索词云图的进阶应用——使用蒙版来创造更…

【Linux】—在Linux中搭建Python环境

文章目录 前言一、检查Linux系统是否自带Python版本。二、安装依赖包(重要)三、下载Python-3.9.5安装包四、下载完成后,通过xftp6上传到Linux服务器上五、解压Python安装包六、编译安装Python七、配置Python环境变量八、运行Python,查看是否可用九、pyth…

如何用Excel随机抽取幸运儿

在举行年会等活动,会在大屏幕互动随机滚动抽取幸运观众,有专门开发的软件或程序; 对于我们日常工作中有时会遇到,如何在群体中随机抽取部分幸运儿的问题? 除了抓阄,当然也可以用Excel解决哦,今…

适合小白学习的项目1906java Web智慧食堂管理系统idea开发mysql数据库web结构java编程计算机网页源码servlet项目

一、源码特点 java Web智慧食堂管理系统是一套完善的信息管理系统,结合java 开发技术和bootstrap完成本系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 前段主要技术 bootstra…

现在市面上哪个大大数据信用查询平台比较好用?

在当今信息化和数字化的时代,信用查询平台的重要性愈发突出,特别是在个人贷款、信用卡申请和金融服务领域。选择一个优秀的大数据信用查询平台,不仅可以帮助用户全面了解自己的信用状况,还能提供针对性的解读和建议,帮…

中国天辰×蓝卓丨共创行业级工业操作系统,加速培育新质生产力!

6月17日,中国天辰工程有限公司(以下简称“中国天辰”)党委委员、总经理梁军湘一行莅临蓝卓,双方就工业互联网平台合作进行座谈交流。蓝卓总经理谭彰、副总经理蓝照斌、总经理助理俞益标,以及中控技术副总裁吴才宝、大客…

阿里又出AI神器,颠覆传统图像编辑,免费开源!

文章首发于公众号:X小鹿AI副业 大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年,也一名 AIGC 爱好者,持续分享更多前沿的「AI 工具」和「AI副业玩法」,欢迎一起交流~ 最近阿里开源了 Mi…

玩转编程的终极挑战,C++究竟有多难?

C是一门非常强大和灵活的编程语言,它可以实现面向对象、泛型、元编程等多种编程范式,可以开发高性能的系统软件、游戏、图形、网络等各种应用。但是,C也是一门非常复杂和难学的语言,很多初学者在学习C的过程中会遇到很多困难和挫折…

YOLOv8目标检测算法在地平线Bernoulli2架构BPU上高效部署参考(PTQ方案)30fps!

—— 以RDK X3为例,修改Head部分,8ms疾速Python后处理程序,30fps稳稳当当 本文在地平线对YOLOv8s的Backbone修改的基础上,提出一种在地平线Bernoulli2架构BPU上部署YOLOv8的后处理思路。使用640640分辨率,80类别基于C…

【STM32入门学习】定时器与PWM的LED控制

目录 一、定时器与PWM介绍 1.1定时器 1.1.1定时器分类简介 1.1.2STM32定时器分类比较表 1.1.3定时器启动操作: 1.2 PWM 1.2.1 简介: 1.2.2PWM工作原理 1.2.3使用步骤: 二、定时器计数控制LED灯亮灭 2.1HAL库 2.1.1使用HAL库创建…

如何选择适合自己的收银系统源码?

提到收银系统源码,想必很多企业都为此头疼,收银系统厂商五花八门,价格从几千元,到几十万元,甚至上百万元不等。到底如何选择一套适合自己的收银系统源码呢?本文我将结合自己8年从业经验展推荐大家从以下几个…

代码随想录算法训练营第二十七天

题目:122. 买卖股票的最佳时机 II 本题首先要清楚两点: 只有一只股票!当前只有买股票或者卖股票的操作 想获得利润至少要两天为一个交易单元。 局部最优:收集每天的正利润,全局最优:求得最大利润。 我…

(资料收藏)王阳明传《知行合一》共74讲,王阳明知行合一音频讲解资料

今天给大家带来的不是软件,而是一份精神食粮——《知行合一》的教程福利。这可不是一般的教程,它关乎心灵,关乎智慧,关乎我们如何在纷繁复杂的世界中找到自己的位置。 咱们得聊聊王阳明,这位明代的大儒,他…

el-table合并单元格之后,再进行隔行换色的实现

el-table 中有现成的隔行换色功能,只要增加 stripe 属性即可。但是如果有单元格合并的话,这个属性就不可用了。这时候我们就需要动点小心思了。 基于相同字段进行合并 如果是基于表头中的某一列,具有相同值进行合并的话,那么只需…

【Unity】RPG2D龙城纷争(三)角色、角色数据集

更新日期:2024年6月18日。 项目源码:后续章节发布 索引 简介角色数据集(RoleDataSet)一、定义角色数据集类二、角色基础数据(公共数据) 角色(Role)一、定义角色类二、角色其他数据&a…

Python构造TCP三次握手、传输数据、四次挥手pcap数据包并打乱顺序

Python构造数据包,包含: TCP三次握手、 传输数据、 四次挥手 实现 随机乱序TCP数据包 from scapy.all import * from scapy.all import Ether, IP, TCP, UDP, wrpcap from abc import ABC, abstractmethod import random import dpkt from scapy.all…

全氟己酮自动灭火材料表现亮眼!手把手教你自动灭火毯的使用方法

灭火毯的使用方法是什么?很多朋友在购买灭火毯之前,都比较关心这个问题。在这里,我们可以把灭火毯分为两种。一种是传统灭火毯,还有一种是近年来兴起的高科技产品—全氟己酮自动灭火毯。这两种灭火毯的使用方法大有不同&#xff0…

图解ZGC

ZGC(Z Garbage Collector) 是一款性能比 G1 更加优秀的垃圾收集器。ZGC 第一次出现是在 JDK 11 中以实验性的特性引入,这也是 JDK 11 中最大的亮点。在 JDK 15 中 ZGC 不再是实验功能,可以正式投入生产使用了,使用 –X…