[论文精读]Polarized Graph Neural Networks

news2024/11/18 3:21:30

论文网址:Polarized Graph Neural Networks | Proceedings of the ACM Web Conference 2022

英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用

目录

1. 省流版

1.1. 心得

2. 论文逐段精读

2.1. Abstract

2.2. Introduction

2.3. Related work

2.4. Preliminaries

2.4.1. Problem formulation

2.4.2. Homophily and heteriophily in graphs

2.4.3. Anonymous walks

2.5. Method

2.5.1. Measurement of similarities and dissmilarities

2.5.2. Polarization on the hyper-spherical space

2.5.3. Spherical classification loss

2.6. Experiment

2.6.1. Experimental setup

2.6.2. Node classification on different types of networks

2.6.3. Model analysis

2.6.4. Visualization

2.7. Conclusion

3. Reference


1. 省流版

1.1. 心得

(1)也是比较容易理解的文章,但是没有代码还是比较sad

2. 论文逐段精读

2.1. Abstract

        ①AGAIN~Message passing is only suit for homogeneous dissemination

        ②They proposed polargraph Neural Network (Polar-GNN)

2.2. Introduction

        ①The edge generation difference between homophilic graph and hererophilic graph:

        ②Heterophilic information prompts polorization(酱紫的话岂不是一个人看到相似的观点也是促进,看到不相似的也是促进,那好的坏的都当好的了?其实这个很难评,有些人是看到讨厌的东西更坚定自己,有些人反而慢慢接受了呢?计算机应该不能完全仿照什么什么心理学观点吧,这种东西没有一定的)

        ③Chanllenges: mining similar and dissimilar unlabeled nodes, discriminatively aggregating message

2.3. Related work

       ①Introducing homophily, heterophily, spectral and contrastive learning methods

2.4. Preliminaries

2.4.1. Problem formulation

        ①Graph representations G=\left \{ V, E \right \}v_i \in V is node and e_{ij}=\left ( v_i,v_j \right ) \in E is edge

        ②Each node is associated with a feature vector x_{i}\in\mathbb{R}^{d}

        ③Each node belongs to a label or class y_i

        ④For this semi-supervised learning, only few nodes are labeled

2.4.2. Homophily and heteriophily in graphs

        ①Definition 1: the edge homophily rartio:

h=\frac{|\{(v_i,v_j|(v_i,v_j)\in E \wedge y_i=y_j\}|}{| E |}

where | E | denotes the intra-class edges

        ②Homophily ratio: similar nodes h\rightarrow 1, dissimilar nodes h\rightarrow 0

2.4.3. Anonymous walks

        ①Anonymous walks is similar to random work but deletes the specific identity of nodes:

2.5. Method

        ①Overall framework:

2.5.1. Measurement of similarities and dissmilarities

        ①Exampling GAT:

e_{ij}=$Attention$(Wh_i,Wh_j) \\ \alpha_{ij}=\mathrm{softmax}_{j}(e_{ij})=\frac{\exp(e_{ij})}{\sum_{k\in N_{i}}\exp(e_{ik})}

        ②They introduced negative weights for dissimilar node pairs:

a_{ij}=f\left ( w\odot h_i,w\odot h_j \right )

where \odot denotes the Hadamard product, f denotes a mapping function \mathbb{R}^d\times\mathbb{R}^d\to[-1,1], they chose cosine similarity

        ③To record the structure of nodes, they samples anonymous walks sequence with length l for each node v_i, the distribution of the sequence p_i is regarded to the structure of node v_i

        ④The structural similarity:

\alpha_{ij}^p=f(w_2\odot p_i,w_2\odot p_j)

        ⑤Aggregated weights:

\alpha_{ij}=\lambda\alpha_{ij}^{h}+(1-\lambda)\alpha_{ij}^{p}

2.5.2. Polarization on the hyper-spherical space

        ①Neighbors utilization:

h_{i}=\sum_{j\in N_{i}}\alpha_{ij}h_{j}=\sum_{j\in N_{i}^{+}}|\alpha_{ij}|h_{j}-\sum_{j\in N_{i}^{-}}|\alpha_{ij}|h_{j}

        ②Number of neighbors affects the feature

        ③The authors have demonstrated that for a specific node representation, during a gradient descent update, if its norm is relatively large, then the change in its direction will be comparatively small.

        ④They project embeddings to hyper-sphere, they designe a polarized objective function:

\begin{aligned}L(\boldsymbol{h})&=\sum_{i=1}^{N}\left\|\boldsymbol{h}_{i}-\boldsymbol{h}_{i}^{*}\right\|^{2}+\sum_{i=1}^{N}\sum_{j\in N_{i}^{+}}\left|\alpha_{ij}\right|\left\|\boldsymbol{h}_{i}-\boldsymbol{h}_{j}\right\|^{2}\\&-\sum_{i=1}^{N}\sum_{j\in N_{i}^{-}}|\alpha_{ij}|\left\|\boldsymbol{h}_{i}-\boldsymbol{h}_{j}\right\|^{2},\end{aligned}

minimizing the distance between the initial and target states for stability, minimizing the distance between identified similar node pairs, and conversely, maximizing the distance between dissimilar node pairs

        ⑤Alogorithm of  Polar GNN:

2.5.3. Spherical classification loss

        ①Cross entropy loss in hyper-sphere:

L=-\frac{1}{N}\sum_{i=1}^{N}\log\frac{\exp\left(\cos(\theta_{iy_{i}}+m)\right)}{\exp\left(\cos(\theta_{iy_{i}}+m)\right)+\sum_{k\neq y_{i}}\exp(\cos\theta_{ik})}

        ②By fixing b=0 and \left \| w \right \|=1 by L_2 Norm, they transform the cross entropy to:

L=-\frac{1}{N}\sum_{i=1}^{N}\log\frac{\exp(\cos\theta_{iy_{i}})}{\sum_{k=1}^{K}\exp(\cos\theta_{ik})}

where \theta _{ik} denotes the angle between h_i and w_k

        ③They add an addictive angular penalty m:

L=-\frac{1}{N}\sum_{i=1}^{N}\log\frac{\exp\left(\cos(\theta_{iy_{i}}+m)\right)}{\exp\left(\cos(\theta_{iy_{i}}+m)\right)+\sum_{k\neq y_{i}}\exp(\cos\theta_{ik})}

        ④The following figure shows the effect of the penalty term on distance approximation:

2.6. Experiment

2.6.1. Experimental setup

(1)Dataset

        ①Homophily datasets: Cora, Pubmed, Photo and Facebook

        ②Heterophily datasets: Chameleon, Squirrel, Actor and Twitch

(2)Baselines

        ①GCN and GraphSAGE

        ②GAT and APPNP

        ③Geom-GCN

        ④FAGCN and GPRGNN

(3)Settings

        ①Training: 20 nodes per class for training

        ②Testing: 1000 nodes

        ③Validation: another 500 nodes 

        ④Epoch: 500

2.6.2. Node classification on different types of networks

        ①Model performance:

2.6.3. Model analysis

(1)Ablation studies

        ①Module ablation study on Chameleon, with

Polar-GNN-Featonly incorporates node features when calculating the aggregation weights
Polar-GNN-Structonly uses topological structure when calculating weights
Polar-GNN-NoNormPolar-GNN variant without normalization to a hyper-sphere

they got

        ②Penalty ablation:

(2)Alleviating over-smooth

        ①GNN layer ablation:

2.6.4. Visualization

(1)Aggregation weights

        ①Weight aggregation on Chameleon:

(2)Node embeddings-how negative weights help

        ①Node embedding on Chameleon:

2.7. Conclusion

        The polarization is similar to constrained optimization

3. Reference

Fang, Z. et al. (2022) 'Polarized Graph Neural Networks', WWW. doi: https://doi.org/10.1145/3485447.3512187 

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

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

相关文章

Junit 5 - 理解Mockito,提高UT 覆盖率

前言 当我是1个3年初级程序员时, 我被面试者问到1个问题: 如何保证你的开发任务交付质量 当我是1个7年开发组长时, 我被面试者问到另1个问题:如何保证你的团队的代码质量, 减少rework。 又若干年后, 我才…

代码随想录Day 58|拓扑排序、dijkstra算法精讲,题目:软件构建、参加科学大会

提示:DDU,供自己复习使用。欢迎大家前来讨论~ 文章目录 图论part08**拓扑排序精讲**题目:117. 软件构建拓扑排序的背景解题思路:模拟过程 **dijkstra(朴素版)精讲**题目:47. 参加科学大会解题思…

leetcode每日一题day14(24.9.24)——字符串最多的子序列

思路:对于应该首要和贡献联系起来,对于什么是贡献呢,即在某种情况下,会贡献出多少种,符合要求的结果,此题属于较为基础的,对于text中的一个字符如果是非pattern中的元素,则对结果无任何影响&…

舒舒活动图片 小暑至,暑气湿气缠身怎么办?中医教你消暑宁心,健脾祛湿

小暑标志着酷夏的到来,闷热潮湿的气候令人不适,仿佛暑湿交织笼罩全身。众多友人诉苦不已,此般环境致使心绪不宁、身躯疲惫,失措寻对策。实则无需忧虑,持之以恒地进行消暑养心、健脾除湿,便能安然度夏。 暑气…

Vue 技术入门 day1 模版语法、数据绑定、事件处理、计算属性与监视、class和style绑定、条件渲染v-if/v-show、列表渲染v-for

目录 1.Vue 核心 1.1. Vue 简介 1.1.1 介绍与描述 1.1.2 Vue 的特点 1.2 模板语法 1.2.1 模板的分类 1.2.2 插值语法 1.2.3 指令语法 1.2.4 实例 1.3 数据绑定 1.3.1 单向数据绑定 1.3.2 双向数据绑定 1.3.3 MVVM 模型 1.3.4 data与el的2种写法 1.3.5 实例 1.3.…

【C++前缀和】2731. 移动机器人|1922

本文涉及的基础知识点 C算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 LeetCode2731. 移动机器人 有一些机器人分布在一条无限长的数轴上,他们初始坐标用一个下标从 0 开始的整数数组 nums 表示。当你给机器人下达命令时&…

manim中实现文字换行和设置字体格式

实现换行 from manim import * class Textline(Scene): def construct(self): self.camera.background_color "#2F4F14" # 创建中心文本 horizontal_line Line(startLEFT * 8, endRIGHT * 8, colorWHITE).shift(3 * UP) stext Text("线性代数", …

0. Pixel3 在Ubuntu22下Android12源码拉取 + 编译

0. Pixel3 在Ubuntu22下Android12源码拉取 编译 原文地址: http://www.androidcrack.com/index.php/archives/3/ 1. 前言 这是一个非常悲伤的故事, 因为一个意外, 不小心把之前镜像的源码搞坏了. 也没做版本管理,恢复不了了. 那么只能说是重新做一次. 再者以前的镜像太老旧…

828华为云征文|部署去中心化网络的 AI 照片管理应用 PhotoPrism

828华为云征文|部署去中心化网络的 AI 照片管理应用 PhotoPrism 一、Flexus云服务器X实例介绍二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置2.4 Docker 环境搭建 三、Flexus云服务器X实例部署 PhotoPrism3.1 PhotoPrism 介绍3.2 PhotoPrism…

OpenHarmony标准系统上实现对rk系列芯片NPU的支持(驱动移植)

1.将RKNPU驱动移植到Openharmony内核 本文以rk3568为例,将RKNPU驱动移植到Openharmony使用的kernel 5.10中 开发环境 DAYU200 rk3568开发板OpenHarmony 4.1 Release 64位系统 文档约定:4.1r_3568为OpenHarmony标准系统源码根目录 1.0 环境准备 1.搭建O…

Windows11 + Ubuntu 24.10

我在win11安装Ubuntu主板:华硕主板Z790 DARK HERO,进入安装,所以文章中bios系统设置为华硕的bios系统。 一、确认系统信息-BIOS为UEFL 备注:UEFL优于MBR,具体可以查询问ai。如果BIOS模式中不是UEFL,建议为UEFL 1、 win+R 输入 msinfo32,打开系统信息,可以看到…

printf详解

printf("hello \nworld\n"):将hello word打印到屏幕上,在使用printf函数时可以多次使用换行符\n,想在哪里加都可以 int main() {printf("hello \nworld\n");return 0; } 占位符:在printf中,占位…

delphi制作漂亮的农历窗体(IntraWeb+Layui的完美结合)

delphi制作漂亮的农历窗体(IntraWebLayui的完美结合) 不需要安装服务器,Apache和IIS都不需要,自带企业级服务器。 运行exe服务器就架好了,直接打开手机浏览器或者电脑浏览器,网页就出来了,如果…

AI驱动TDSQL-C Serverless 数据库技术实战营-颠覆传统分析模式:智能体与TDSQL-C结合实现人才的可视化数据分析

文章目录 前言云数据库的对比传统云数据库:TDSQL-C Serverless: 智能体与TDSQL-C的结合思路 算力服务器与数据库服务器申请与部署购买 TDSQL-C Mysql Serverless 实例购买HAI高算力服务器 准备工作准备数据下载依赖 案例开发创建数据库开启智能体与TDSQL-C结合 总结…

智能新宠:BabyAlpha A2开启家庭机器人新时代

具身智能领域的“疯狂”,已经迈入了全新的阶段!让我们一起来看看这段视频:一个人形机器人在前面奔跑,一群机器狗紧随其后;接着是人追赶机器狗,随后机器狗又追逐人……视频最后,那个机器人似乎还…

【Python】Daphne:Django 异步服务的桥梁

Daphne 是 Django Channels 项目的一部分,专门用于为 Django 提供支持 HTTP、WebSocket、HTTP2 和 ASGI 协议的异步服务器。Daphne 是一个开源的 Python 异步服务器,它可以帮助开发者运行异步应用程序,并且非常适合与 Django Channels 一起使…

回家啦回家啦

耒阳也有茶颜月色了,没忍住喝了一杯! 衡阳卤粉,想出来的味道👅,一般般 但一个粉店能做到24小时不打烊,应该也还行哈 银行竟然支持扫脸取钱了!!

【微服务即时通讯系统】——etcd一致性键值存储系统、etcd的介绍、etcd的安装、etcd使用和功能测试

文章目录 etcd1. etcd的介绍1.1 etcd的概念 2. etcd的安装2.1 安装etcd2.2 安装etcd客户端C/C开发库 3. etcd使用3.1 etcd接口介绍 4. etcd使用测试4.1 原生接口使用测试4.2 封装etcd使用测试 etcd 1. etcd的介绍 1.1 etcd的概念 Etcd 是一个基于GO实现的 分布式、高可用、一致…

通过OpenScada在ARMxy边缘计算网关上实现数字化转型

随着工业4.0概念的普及,数字化转型已成为制造业升级的关键路径之一。在此背景下,边缘计算技术因其能够有效处理大量数据、减少延迟并提高系统响应速度而受到广泛关注。ARMxy边缘计算网关,特别是BL340系列,凭借其强大的性能和灵活的…

--杂项2--

将之前实现的顺序表、栈、队列都更改成模板类 #include <iostream> #include <string.h> using namespace std;template <typename T> class Stack { private:T* a;int top;int size1;public:Stack(int c) : a(new T[c]), top(-1), size1(c) {}~Stack() { de…