首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏数据分析与挖掘

    graphSAGE的python实现

    上一节实现了基础的GCN, 这一节我们继续实现graphSAGE。 : def __init__(self, input_dim, hidden_dim, num_neighbors_list): super(GraphSage 主函数:main.py import torch import numpy as np import torch.nn as nn import torch.optim as optim from graphsage import GraphSage from sampling import multihop_sampling from load_cora import load_data import pickle GraphSage( in_features=1433, num_neighbors_list=[10, 10] (gcn): ModuleList( (0): SageGCN(

    1.1K60发布于 2020-08-26
  • 来自专栏Datawhale专栏

    GNN 系列(三):GraphSAGE

    GraphSAGE的出现就是为了解决这样的问题,这篇文中我们将会详细得讨论它。 Inductive learning v.s. 概述 GraphSAGE是一个inductive框架,在具体实现中,训练时它仅仅保留训练样本到训练样本的边。 GraphSAGE 取自 Graph SAmple and aggreGatE, SAmple指如何对邻居个数进行采样。 下图展示了GraphSAGE学习的一个过程: ? 后话 GraphSAGE采用了采样的机制,克服了GCN训练时内存和显存上的限制,使得图模型可以应用到大规模的图结构数据中,是目前几乎所有工业上图模型的雏形。

    1.7K30发布于 2019-08-13
  • 来自专栏阿泽的学习笔记

    【Code】GraphSAGE 源码解析

    当然,在阅读 GraphSAGE 代码时我也发现了之前忽视的 GraphSAGE 的细节问题和一些理解错误。 比如说:之前忽视了 GraphSAGE 的四种聚合方式的具体实现,对 Alogrithm 2 的算法理解也有问题,再回头看那篇 GraphSAGE 的推文时,实在惨不忍睹= =。 进入正题,简单回顾一下 GraphSAGE。 核心算法: ? 2.SAGEConv dgl 已经实现了 SAGEConv 层,所以我们可以直接导入。 有了 SAGEConv 层后,GraphSAGE 实现起来就比较简单。 # GraphSAGE 的代码实现 class GraphSAGE(nn.Module): def __init__(self, in_feats,

    3.7K20发布于 2020-07-21
  • 来自专栏Coggle数据科学

    GNN 系列(三):GraphSAGE

    GraphSAGE的出现就是为了解决这样的问题,这篇文中我们将会详细得讨论它。 原文链接:GNN 系列(三):GraphSAGE 作者:金良,杨开漠 Inductive learning v.s. 概述 GraphSAGE是一个inductive框架,在具体实现中,训练时它仅仅保留训练样本到训练样本的边。 GraphSAGE 取自 Graph SAmple and aggreGatE, SAmple指如何对邻居个数进行采样。 下图展示了GraphSAGE学习的一个过程: ? 写在最后 GraphSAGE采用了采样的机制,克服了GCN训练时内存和显存上的限制,使得图模型可以应用到大规模的图结构数据中,是目前几乎所有工业上图模型的雏形。

    1.1K20发布于 2019-09-12
  • 来自专栏AI科技大本营的专栏

    GraphSAGE: GCN落地必读论文

    2.GraphSAGE框架 本文提出 GraphSAGE 框架的核心是如何聚合节点邻居特征信息,本章先介绍 GraphSAGE 前向传播过程(生成节点 embedding ),不同的聚合函数设定;然后介绍无监督和有监督的损失函数以及参数学习 可视化例子:下图是 GraphSAGE 生成目标节点(红色)embededing 并供下游任务预测的过程: ? 3.实验 3.1 实验目的 比较 GraphSAGE 相比 baseline 算法的提升效果; 比较 GraphSAGE 的不同聚合函数。 3.5 运行时间和参数敏感性 计算时间:下图A中 GraphSAGE 中 LSTM 训练速度最慢,但相比DeepWalk,GraphSAGE 在预测时间减少 100-500 倍(因为对于未知节点,DeepWalk 3.6 效果 GraphSAGE 相比 baseline 效果大幅度提升 GraphSAGE 有监督版本比无监督效果好。 LSTM 和 pool 的效果较好 ?

    5.5K32发布于 2019-08-20
  • 来自专栏阿泽的学习笔记

    【GNN】GraphSAGE:GCN 可能没我强

    针对这一痛点,斯坦福大学的同学提出了归纳式学习算法(inductive)——GraphSAGE,该算法可以利用的方式解决了未知节点无法 Embedding 的问题,接下来我们看一下 GraphSAGE 与 GCN 直接学习某个节点的 Embedding 向量不同的是,GraphSAGE 「是利用一组聚合函数进行学习」。 接下来我们看一下 GraphSAGE 是如何利用聚合函数学习的。 2. GraphSAGE 2.1 Algorithm 我们先概览下 GraphSAGE: ? 所以 GraphSAGE 大概思想就是聚合邻居信息,然后不断迭代。 放出 GraphSAGE 的伪代码: ? Conclusion 一句话总结:GraphSAGE 通过聚合节点邻居的特征将 GCN 扩展成归纳学习的方式,解决了未知 Embedding 的难题。

    2.6K20发布于 2020-07-21
  • 来自专栏AI科技大本营的专栏

    GraphSAGE:我寻思GCN也没我厉害!

    同年NIPS来了一篇使用Inductive Learning的GraphSAGE,解决了这个问题。今天,让我们来一起琢磨琢磨这个GraphSAGE是个什么玩意儿。 二、GraphSAGE是怎么做的 针对这种问题,GraphSAGE模型提出了一种算法框架,可以很方便地得到新node的表示。 基本思想: 去学习一个节点的信息是怎么通过其邻居节点的特征聚合而来的。 在GraphSAGE的实践中,作者发现,K不必取很大的值,当K=2时,效果就灰常好了,也就是只用扩展到2阶邻居即可。 (彩蛋)思考 & GCN的反刍: 在看完GraphSAGE之后,我又回头把GCN思考了一遍。 这也是为什么GraphSAGE的作者说,他们的mean-aggregator跟GCN十分类似。

    1.8K10发布于 2019-08-12
  • 来自专栏半杯茶的小酒杯

    图神经网络入门实战-GraphSAGE

    GraphSage GraphSage通过采样邻居的策略将GCN的训练方式由全图(Full Batch)方式修改为以节点为中心的小批量(Mini Batch)的方式,这使得大规模图数据的分布式训练成为可能 Visual illustration of the GraphSAGE sample and aggregate approach,图片来源[1] 2.1 采样邻居 GNN模型中,图的信息聚合过程是沿着 train_index] test_index = np.where(data.test_mask)[0] val_index = np.where(data.val_mask)[0] model = GraphSage

    1.4K20编辑于 2022-04-28
  • 来自专栏KI的算法杂记

    NeurIPS 2017 | GraphSAGE:大型图的归纳表示学习

    比如在GraphSAGE中,我们可以根据聚合函数来算出新节点的嵌入表示。 而在直推学习中,我们需要将新节点的信息经过网络重新训练,然后才能得到其嵌入表示。 GraphSAGE是对上一篇提到的GCN的扩展,其主要有两个方面的改进: 1. 如下所示: 上图中GraphSAGE在第一层采样时只选择了3个邻居节点,第二层选择了5个邻居节点。 而在GraphSAGE中,我们可以直接根据聚合函数和新节点邻居节点的嵌入表示来计算得到新节点的嵌入表示。 代码也不复现了,PyG上有GraphSAGE的封装实现,可以直接调包。

    1K20编辑于 2022-11-09
  • 来自专栏Soul Joy Hub

    图神经网络——【NIPS 2017】GraphSAGE

    本文提出归纳学习—GraphSAGE(Graph SAmple and aggreGatE)框架,通过训练聚合节点邻居的函数(卷积层),使GCN扩展成归纳学习任务,对未知节点起到泛化作用。 embedding 过程 下图展示了 GraphSAGE 学习目标节点(中心的红色节点) embedding 的过程: 先对邻居节点采样:上图仅对2跳内的邻居采样,2跳邻居节点采样5个节点,1跳邻居采样个节点

    78920发布于 2021-09-10
  • GraphSAGE:图神经网络中的采样大师

    GraphSAGE 的创新点 GraphSAGE 提出了一种归纳式 (Inductive)的学习方法,它不直接为每个节点学习固定的嵌入,而是学习一种节点特征生成函数。 这种特性使得 GraphSAGE 特别适合动态图数据。 ,观察效果差异 探索 GraphSAGE 在实际数据集上的应用 3. 跨领域应用 将 GraphSAGE 应用于推荐系统、计算机视觉、自然语言处理等领域 探索 GraphSAGE 在联邦学习中的应用,保护用户数据隐私 研究图神经网络与强化学习的结合,解决决策问题 3. 无论是学术研究还是工业应用,GraphSAGE 都展现出巨大的潜力。希望本文能帮助你理解 GraphSAGE 的核心思想,并激发你在图神经网络领域的探索热情。

    71610编辑于 2025-10-14
  • GraphSAGE 算法:图数据世界的特征提取大师

    GraphSAGE 算法给出了精妙的答案,它就像一位技艺高超的 “特征提取大师”,能让计算机从图数据中挖掘出有价值的信息。接下来,我们就一同走进 GraphSAGE 算法的世界。 三、Java 语言示例:用 GraphSAGE 实现节点分类 下面是一个简化版的 Java 示例,使用 Deeplearning4j 框架模拟 GraphSAGE 算法进行节点分类任务(实际应用中需根据具体图结构完善 ),开发基于 GraphSAGE 的多模态学习模型,解决复杂的实际问题。 理论研究与结合:深入研究 GraphSAGE 算法的理论基础,分析其在不同图结构下的表达能力和局限性;尝试将 GraphSAGE 与其他机器学习算法(如强化学习、生成对抗网络)相结合,创造新的模型架构, 无论是想要踏入图神经网络领域的新手,还是寻求创新突破的资深算法工程师,GraphSAGE 都有无限的探索空间。希望这篇介绍能帮助你开启 GraphSAGE 的学习之旅,在图数据的世界中发现更多精彩!

    40810编辑于 2025-10-14
  • 来自专栏小锋学长生活大爆炸

    【教程】用GraphSAGE和UnsupervisedSampler进行节点表示学习

    随着更新迭代,代码不一定能完全运行,仅供学习一下思想~         Stellargraph Unsupervised GraphSAGE是论文中所述GraphSAGE方法的实现: 大图上的归纳表征学习 无监督的GraphSAGE         对无监督GraphSAGE图表示学习方法的高层次解释如下。 GraphSAGE的1跳和2跳邻居样本的大小:         注意,num_samples列表的长度定义了GraphSAGE编码器的层数/迭代数。 在这个例子中,我们定义的是一个2层的GraphSAGE编码器。 该模型的GraphSAGE部分,两个GraphSAGE层的隐藏层大小为50,有一个偏置项,没有剔除。(可以通过指定一个正的辍学率来开启辍学,0<辍学<1)。

    1.4K30编辑于 2023-05-26
  • 来自专栏程序媛驿站

    NIPS 2017 | 斯坦福GraphSAGE:改进的GCN

    因此:本文提出 GraphSAGE 模型。 相比之下, GraphSAGE是一个归纳(inductive)框架,可以利用节点属性信息高效地生成以前未见过的数据的表示。 GraphSAGE也通过对邻居的采样控制达到了小批量训练,高效的完成大图上的归纳表示学习。 它需要在一个示例图或一组图上进行训练。 本论文提出了一个通用的框架:GraphSAGE(SAmple and aggreGatE,采样和聚合),用于归纳(inductive)节点embedding。 第3.1节,我们首先描述GraphSAGE的embedding生成算法(即前向传播),该算法在假定GraphSAGE模型参数已经学习的情况下为节点生成embedding。 第3.2节,我们描述如何使用标准随机梯度下降和反向传播技术学习GraphSAGE模型的参数。

    90810编辑于 2022-04-11
  • 来自专栏算法进阶

    图神经网络综述:从Deepwalk到GraphSAGE,GCN,GAT

    2.3.损失函数 3.GraphSAGE:generalized aggregation方法 4.Gated Graph Neural Networks:go deeper with RNN 5.Graph 3.GraphSAGE[9]:generalized aggregation方法 GCN是谱图方法的代表,那么GraphSAGE就是非谱图方法的代表。 如何进行更好的aggregate呢? 最后的这个黑盒里面可以装的东西就多了,只要能把多个vector最后map到一个最终的vector就行 GraphSAGE则是将aggregate后的neighbor和本身的self-embedding这两个 4.Gated Graph Neural Networks[10]:go deeper with RNN GCNs and GraphSAGE generally only 2-3 layers deep GraphSAGE为每一个node都抽取一个固定尺寸的neighborhood,在计算的时候就不是所有的neighbor都能参与其中(不是所有都直接相连的neighbor都参与了aggregate吗?)

    2.8K61编辑于 2023-11-05
  • 来自专栏自然语言处理

    图神经网络11-GCN落地的必读论文:GraphSAGE

    / 此文提出的方法叫GraphSAGE,针对的问题是之前的网络表示学习的transductive,从而提出了一个inductive的GraphSAGE算法。 原文链接:https://blog.csdn.net/yyl424525/article/details/100532849 4 GraphSAGE 核心思想 GraphSAGE的核心:GraphSAGE 通过一轮GraphSAGE算法,我们将获得节点A的新表示形式。原始图中的所有节点都遵循相同的过程。 ? GraphSAGE算法遵循两步过程。 GraphSAGE主页 GraphSAGE 代码 Inductive Representation Learning on Large Graphs GraphSAGE论文阅读笔记 GraphSAGE 论文详解 NIPS 2017 GraphSAGE: GCN落地必读论文 【Graph Neural Network】GraphSAGE: 算法原理,实现和应用

    3.3K30发布于 2021-04-27
  • 来自专栏NLP/KG

    PGL图学习之图神经网络GraphSAGE、GIN图采样算法

    GraphSAGE 主要分两步:采样、聚合。 有了GCN为啥还要GraphSAGEGraphSAGE通过采样,能够形成 minibatch 来进行批训练,能用在超大图上 GraphSAGE有什么优点? 无监督学习 GraphSAGE怎样进行无监督学习? GraphSAGE如何定义邻近和远处的节点? 如何计算无监督GraphSAGE的损失函数? GraphSAGE是怎么随机游走的? GraphSAGE什么时候考虑边的权重了? 训练 如果只有图、没有节点特征,能否使用GraphSAGE? 训练好的GraphSAGE如何得到节点Embedding?

    1K50编辑于 2022-11-25
  • 来自专栏大鹅专栏:大数据到机器学习

    GNN系列 综述 GNN GCN GraphSAGE GAT 简单理解 及调优Trick

    加权采样GraphSAGE等算法设计之初并没有考虑有权图,在做邻居采样时采用的是随机选取的策略,并将节点特征等权重地聚合至中心节点。从直觉上来说,邻居节点的边权重越高,对中心节点产生的影响也越重要。 zhuanlan.zhihu.com/p/112277874 GCNhttps://zhuanlan.zhihu.com/p/78624225 GCN简单理解https://zhuanlan.zhihu.com/p/79637787 GraphSAGE zhuanlan.zhihu.com/p/76025331 GNN综述:Review of Methods and Applicationshttps://jishuin.proginn.com/p/763bfbd5d071 GCN GraphSAGE

    3.9K42编辑于 2022-09-04
  • 来自专栏NLP/KG

    PGL图学习之图神经网络GraphSAGE、GIN图采样算法

    GraphSAGE 主要分两步:采样、聚合。 有了GCN为啥还要GraphSAGEGraphSAGE通过采样,能够形成 minibatch 来进行批训练,能用在超大图上 GraphSAGE有什么优点? 无监督学习 GraphSAGE怎样进行无监督学习? GraphSAGE如何定义邻近和远处的节点? 如何计算无监督GraphSAGE的损失函数? GraphSAGE是怎么随机游走的? GraphSAGE什么时候考虑边的权重了? 训练 如果只有图、没有节点特征,能否使用GraphSAGE? 训练好的GraphSAGE如何得到节点Embedding?

    1.7K20编辑于 2022-12-21
  • 来自专栏数据派THU

    图神经网络必读的​5个基础模型: GCN, GAT, GraphSAGE, GAE, DiffPool.

    Graph Sample and Aggregate(GraphSAGE)[8] 为了解决GCN的两个缺点问题,GraphSAGE被提了出来。 图8 那么GraphSAGE Sample是怎么做的呢?GraphSAGE是采用定长抽样的方法,具体来说,定义需要的邻居个数 ,然后采用有放回的重采样/负采样方法达到 。 至此,GraphSAGE介绍完毕。 当然,GraphSAGE也有一些缺点,每个节点那么多邻居,GraphSAGE的采样没有考虑到不同邻居节点的重要性不同,而且聚合计算的时候邻居节点的重要性和当前节点也是不同的。 3. 图10 这其中比较经典的模型有GraphSAGE、Graph Auto-Encoder(GAE)等,GraphSAGE就是一种很好的无监督表示学习的方法,前面已经介绍了,这里就不赘述,接下来将详细讲解后面两个

    27.6K14编辑于 2023-05-11
领券