多标签节点分类

在这里插入图片描述

Multi-Label Node Classification on Graph-Structured Data,TMLR’23
Code
学习笔记

图结构数据的多标签分类

  1. 节点表示或嵌入方法
    通常会生成查找表,以便将相似的节点嵌入的更近。学习到的表示用作各种下游预测模块的输入特征。
    表现突出的方法是基于随机游走(random walk)的方法:通过节点在随机游走中的共现频率(co-occurrence frequency)来定义节点之间的相似性。[在随机游走的过程中,如果两个节点经常在一起出现,即它们在游走序列中共现的频率较高。]比如DeepWalk

  2. CNN.其他方法比如说使用卷积神经网络,首先通过聚合局部邻域的特征信息来提取节点表示。然后将提取的特征向量与标签嵌入融合以生成最终的节点嵌入。比如LANC

  3. 图神经网络(GNNs)
    通过递归聚合和转换其邻居的特征表示来计算节点表示,然后将其传递到分类模块。图卷积运算的第k层可以描述为:
    z i ( k ) = A G G R E G A T E ( { x i ( k − 1 ) , { x j ( k − 1 ) ∣ j ∈ N ( i ) } } ) z_i^{(k)}=AGGREGATE(\left \{ \mathbf{x}_i^{(k-1)},\left \{ {\mathbf{x}_j^{(k-1)}|j\in N(i)} \right \}\right \}) zi(k)=AGGREGATE({xi(k1),{xj(k1)jN(i)}})
    对于多标签节点分类,采用sigmoid层作为最后一层来预测类别概率 y ← ( sigmoid ( z i ( L ) θ ) ) \mathbf{y}\gets (\text{sigmoid}(z_i^{(L)}\theta )) y(sigmoid(zi(L)θ)) θ \theta θ对应于分类模块中的可学习权重矩阵。
    GNN模型的主要区别在于聚合层的实现。最简单的模型是GCN:对邻域特征采用度加权(degree-weighted)聚合;
    GAT采用了多个堆叠的图注意力层,它允许节点关注其邻域的特征;
    GraphSAGE仅使用邻域的随机样本进行特征聚合步骤。
    一般来说,GNNs在高**同配图(连接的节点往往共享相同的标签)**表现出更好的性能。H2GCN显示了在异配图上(多类设置)的改进:将邻居聚合的信息与自我节点的信息分开。此外,它利用高阶邻域信息来学习信息丰富的节点表示。

  4. 标签传播(label propagation)
    LPA算法和GNNs都基于消息传递。GNNs传播和变换节点特征,而LPA沿着图的边缘传播节点标签信息,以预测未标记节点的标签分布。 最近的一些工作将他们结合起来,比如GCN-LPA利用LPA作为正则项来帮助GCN学习适当的边权重,从而提高分类性能。

多标签数据集的特性

标签同配性label homophily

本文提出多标签图数据集的同配性定义
GNNs的性能通常根据标签同配性来讨论,标签同配性量化了图中相似节点之间的相似性,特别是,标签同配性在文(Beyond homophily in graph neural networks: Current limitations and effective designs)中被定义为图中同配边的分数:其中如果一条边连接具有相同标签的两个节点,则该边被认为是同配的。
这一定义不能直接用于多标签图数据集,因为每个节点可以有多个标签,并且在多标签dataset中两个连接节点的整个标签集相同的情况很少见。通常,两个节点共享其部分标签。
给定一个多标签图 G G G,其同配性 h h h定义为图中所有连通节点的标签集的杰卡德(Jaccard)相似度的平均值:
h = 1 ∣ ε ∣ ∑ ( i , j ) ∈ ε ∣ l ( i ) ∩ l ( j ) ∣ ∣ l ( i ) ∪ l ( j ) ∣ . h=\frac{1}{|\varepsilon |}\sum _{(i,j)\in \varepsilon }\frac{|l(i)\cap l(j)|}{|l(i)\cup l(j)|} . h=ε1(i,j)εl(i)l(j)l(i)l(j).
标签同配性是一阶标签引起的相似性,因为它根据相邻节点的标签分布来量化相邻节点之间的相似性。

跨类邻域相似度CCNS

二阶标签诱导度量,量化任何两个节点的邻域之间的相似性。
在这里插入图片描述
异配图的CCNS较低,同配图的CCNS更高

常用多标签节点分类数据集

  1. BlogCat
    nodes博客作者,edges表示他们的关系,labels表示所属社会群体
  2. Yelp
    nodes客户评论,edges对应他们的friendship,labels代表企业类型
  3. OGB-Proteins
    nodes蛋白质,edges表示蛋白质之间不同类型的生物学意义关联,labels对应于蛋白质功能
  4. DBLP
    nodes作者,edges合著关系,labels表示作者的研究领域

‘25%’、'50%'和’75%'对应于节点的标签数量的排序列表的第25、第50和第75位。即,有 25%、'50%‘或’75%’ 的节点的标签数目小于或等于这个值。
在这里插入图片描述

  • 标签分布不对称
  • 高标签稀疏性下使用AUROC评分进行评估存在问题
    (ROC曲线是以召回率为纵轴,FPR为横轴的曲线,其面积代表AUROC分数
    FPR是被错误地预测为正类别地负样本占所有负样本的比例,召回率是预测为true positive样本占所有实际positive样本的比例)
    因此存在,通过增加训练使其的数量来增加AUROC分数,即鼓励了模型通过预测为negative样本来减少损失。

NEW生物数据集

  1. PCG:蛋白质表型预测(phenotype:疾病可观察到的特征或形状)
  2. HumLoc:人类蛋白质亚细胞位置预测数据集(预测蛋白质亚细胞位置可以帮助识别药物靶点)标签是位置信息,14个维度one-hot编码
  3. EukLoc:真核生物蛋白质亚细胞位置预测数据集
    在这里插入图片描述
    HUMLOC、EUKLOC有着较高的同配性

Results

在这里插入图片描述


  1. DBLP
  2. EukLoc
  3. HumLoc
  4. PCG

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

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

相关文章

moon‘s 博客网站部署维护项目说明

项目概述 背景 博客系统致力为广大用户提供优质的互动交流平台,实现对博客发表文章、评论、图片、好友等数据的管理,同时实现了博客内容及时、快速更新的功能,系统不仅保留了传统博客系统的功能,还加上了一些人性化的界面设计,使…

分享flask_socketio配置时遇到的一些问题

flask_socketio 1.前言 flask_socketio应用启动后,在控制台中,存在着flask_socketio这些烦人的log 一堆的get和post几秒一个让我什么都看不清,因此想要关掉log 结果没想到,找了很多办法半天去不掉flask_socketio的log 试过了…

k8s之包管理器Helm

helm的作用就是通过打包的方式,把deployment service ingress这些打包在一块,一键式的部署服务。类似yum官方提供的一个类似与安装仓库的功能,可以实现一键化部署应用。 Helm的三个重要概念 ●Chart:Helm 的软件包,采…

数学建模竞赛实战-Latex公式、表格、图文排版

公式排版 Latex公式排版 行内公式:使用$$包围: 整行公式:使用$$$$包围: 公式编号: 使用$$不能自动编号: 公式编号使用equation: <

中仕教育:省考联考可以报多个省份吗?

省考联考就是多个省份在同一时间进行的公务员招聘考试&#xff0c;极大地增加了考生的选择空间。虽然是联考&#xff0c;但是招录工作都是各省份单独组织的&#xff0c;对于考生来说&#xff0c;省考联考可以报多个省份吗? 首先&#xff0c;每个省份的公务员招聘条件、考试内…

USB 2.0接口标准

一、USB2.0系统构成 USB&#xff08;UniversalSerialBus&#xff09;体系包括“主机&#xff08;Host&#xff09;”、“设备&#xff08;Device&#xff09;”以及“物理连接&#xff08;Connector&#xff09;”三个部分。其中主机是一个提供USB接口及接口管理能力的…

LeetCode.670. 最大交换

题目 题目链接 分析 这道题的意思是我们只能交换一次&#xff0c;需要得到最大的数字。 我们的第一个想法就是要这个数字先变成一个数组&#xff0c;便于我们操作。 然后把数组最大的数放到第一个位置&#xff0c;如果最大的数字已经在第一个位置&#xff0c;那么就把次大的…

【C++】C++中规范[ 类型转换标准 ] 的四种形式

前言 大家好吖&#xff0c;欢迎来到 YY 滴C系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; 目录 一.回顾C语言中的类型转换1&#xff09…

RPC框架简介

RPC定义 远程过程调用&#xff08;Remote Procedure Call&#xff09;。RPC的目的就是让构建分布式计算&#xff08;应用&#xff09;更加简单&#xff0c;在提供强大的调用远程调用的同时不失去简单的本地调用的语义简洁性 RPC整体架构 服务端启动时首先将自己的服务节点信息…

一个golang小白使用vscode搭建Ununtu20.04下的go开发环境

文章目录 前言搭建go环境下载go安装包解压go压缩包完成安装配置环境变量编写一个helloword程序 安装VSCode插件安装智能提示插件安装go依赖包修改代理并重新安装依赖包 go.mod 和 go.workgo.modgo.work小试一下go.work 总结 前言 先交代一下背景&#xff0c;距离正式接触golan…

flask 与 小程序 购物车 展示功能

mina/pages/cart/index.wxml <!--index.wxml--> <view class"container"><view class"title-box" wx:if"{{ !list.length }}">购物车空空如也&#xff5e;</view><view class"to-index-btn" bindtap"…

Flutter 综述

Flutter 综述 1 介绍1.1 概述1.2 重要节点1.3 移动开发中三种跨平台框架技术对比1.4 flutter 技术栈1.5 IDE1.6 Dart 语言1.7 应用1.8 框架 2 Flutter的主要组成部分3 资料书籍 《Flutter实战第二版》Dart 语言官网Flutter中文开发者社区flutter 官网 4 搭建Flutter开发环境参考…

【漏洞复现】CloudPanel makefile接口远程命令执行漏洞(CVE-2023-35885)

文章目录 前言声明一、CloudPanel 简介二、漏洞描述三、影响版本四、漏洞复现五、修复建议 前言 CloudPanel 是一个基于 Web 的控制面板或管理界面&#xff0c;旨在简化云托管环境的管理。它提供了一个集中式平台&#xff0c;用于管理云基础架构的各个方面&#xff0c;包括 &a…

nginx基于IP的多虚拟主机

结合这篇文章一起&#xff1a;nginx虚拟主机-CSDN博客文章浏览阅读63次。虚拟主机指的就是一个独立的站点配置&#xff0c;是nginx默认支持的一个功能&#xff0c;它能够有自己独立的域名&#xff0c;独立的ip&#xff0c;独立的端口配置&#xff0c;能够配置完整的www服务&…

ubuntu安装vm和Linux,安装python环境,docker和部署项目(一篇从零到部署)

1、下载Ubuntu Index of /releaseshttps://old-releases.ubuntu.com/releases/ 2、下载VMware 官方正版VMware下载&#xff08;16 pro&#xff09;&#xff1a;https://www.aliyundrive.com/s/wF66w8kW9ac 下载Linux系统镜像&#xff08;阿里云盘不限速&#xff09;&#xff…

JavaScript 学习笔记(WEB APIs Day2)

「写在前面」 本文为 b 站黑马程序员 pink 老师 JavaScript 教程的学习笔记。本着自己学习、分享他人的态度&#xff0c;分享学习笔记&#xff0c;希望能对大家有所帮助。推荐先按顺序阅读往期内容&#xff1a; 1. JavaScript 学习笔记&#xff08;Day1&#xff09; 2. JavaSc…

【概率统计】区间估计 假设检验公式汇总

区间估计 假设检验公式汇总 最简单的一集

爬虫逆向开发教程1-介绍,入门案例

爬虫前景 在互联网的世界里&#xff0c;数据就是新时代的“黄金”。而爬虫&#xff0c;就是帮助我们淘金的“工具”。随着互联网的不断发展&#xff0c;数据量呈现指数级的增长&#xff0c;在数据为王的时代&#xff0c;有效的挖掘数据和利用&#xff0c;你会得到更多东西。 学…

SqlAlchemy使用教程(五) ORM API 编程入门

SqlAlchemy使用教程(一) 原理与环境搭建SqlAlchemy使用教程(二) 入门示例及编程步骤SqlAlchemy使用教程(三) CoreAPI访问与操作数据库详解SqlAlchemy使用教程(四) MetaData 与 SQL Express Language 的使用SqlAlchemy使用教程(五) ORM API 编程入门 前一章用SQL表达式(SQL Expr…

用于垃圾回收的运行时配置选项

反馈 本文内容 指定配置的方法垃圾回收的风格管理资源使用情况大型页面 显示另外 4 个 此页面包含有关 .NET 运行时垃圾回收器 (GC) 设置的信息。 如果你要尝试让正在运行的应用达到最佳性能&#xff0c;请考虑使用这些设置。 然而&#xff0c;在特定情况下&#xff0c;默认…