【Datawhale图机器学习】DeepWalk和Node2Vec

news2025/7/12 23:17:35

DeepWalk:用于图节点嵌入的在线机器学习算法

论文介绍

DeepWalk是基于随机游走的图节点嵌入算法。首次将深度学习和自然语言处理思想用于图机器学习,将随机游走序列与句子类比,节点与单词类比,构建Word2Vec的Skip-Gram无监督(自监督)语言模型。将图中每个节点编码为低维稠密连续向量。
向量隐式包含了节点在原图中的邻居、社群、连接、结构、关联信息,但不包含节点类别信息和资深特征属性信息。
在稀疏数据标注场景下,使用DeepWalk图嵌入向量来解决多类别节点分类问题,性能卓越,并行性、扩展性好。

论文主页

论文主页1:http://www.perozzi.net/projects/deepwalk/
论文主页2:https://sites.google.com/site/bryanperozzi/projects/deepwalk
论文主页3(作者视频介绍):https://dl.acm.org/doi/10.1145/2623330.2623732
发表在KDD上的最终版本:https://dl.acm.org/doi/abs/10.1145/2623330.2623732
原始论文:https://arxiv.org/abs/1403.6652

作者相关

作者Bryan Perozzi个人主页:http://www.perozzi.net/
作者Rami Al-Rfou个人主页:https://sites.google.com/site/rmyeid/

代码

官方代码:https://github.com/phanein/deepwalk

课堂随记

解决图嵌入问题
Deepwalk将graph的每一个节点编码为一个D维向量(Embedding)(无监督学习)
Embedding中隐式包含了graph中的社群,连接,结构信息可用于后续节点分类等下游任务(监督学习)

首个将深度学习和自然语言处理的思想用于图机器学习
在稀疏标注节点分类场景下,嵌入性能卓越

均匀随机游走,没有偏向的游走方向。(Node2Vec)
需要大量随机游走序列训练
基于随机游走,管中窥豹。距离较远的两个节点无法相互影响。看不到全图信息(图神经网络)
无监督,仅编码图的链接信息,没有利用节点的属性特征。
没有真正用到神经网络和深度学习

特性

  • 灵活可变,弹性扩容
  • 反应社群聚类信息
  • 低维度
  • 连续

算法伪代码

在这里插入图片描述
在这里插入图片描述

Node2Vec:可扩展的图学习算法

论文介绍

node2vec: Scalable Feature Learning for Networks
KDD 2016
Node2Vec是基于有偏随机游走的图节点嵌入表示学习算法,在DeepWalk完全随机游走的基础上,Node2Vec增加p、q参数,实现有偏随机游走。并首次由节点嵌入计算连接嵌入,在节点多分类、连接预测等任务上性能卓越。
不同的p、q组合,对应了不同的搜索空间和节点语义:
DFS深度优先探索,相近社群的节点,向量(嵌入)距离相近。
BFS广度优先探索,相同功能角色的节点,向量(嵌入)距离相近。
在这里插入图片描述

论文主页

官方主页:http://snap.stanford.edu/node2vec/
snap主页:https://snap.stanford.edu/
作者Aditya在KDD 2016的演讲:https://www.youtube.com/watch?v=1_QH5BEP5BM

作者主页

Aditya Grover:http://aditya-grover.github.io/
Jure Leskovec.:https://cs.stanford.edu/people/jure/
Vid Kocijan:https://www.cs.ox.ac.uk/people/vid.kocijan/

代码和博客

官方代码(Python2实现):https://github.com/aditya-grover/node2vec
Elior Cohen代码:https://github.com/eliorc/node2vec
Elior Cohen代码博客:https://maelfabien.github.io/machinelearning/graph_5/#graph-embedding
FIFA17足球球员数据集图嵌入:https://www.kaggle.com/code/ferdzso/knowledge-graph-analysis-with-node2vec/notebook

算法伪代码

在这里插入图片描述

在这里插入图片描述
p大q小 DFS深度优先 探索远方
p小q大 BFS宽度优先 探索近邻

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

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

相关文章

了解Axios及其运用方式

Axios简介 axios框架全称(ajax – I/O – system): 基于promise用于浏览器和node.js的http客户端,因此可以使用Promise API 一、axios是干啥的 说到axios我们就不得不说下Ajax。在旧浏览器页面在向服务器请求数据时,…

计算机网络基础知识

目录 通信基础 前言 广播域与冲突域 计算机之间的连接方式 网线直连(交叉线) 同轴电缆 集线器 网桥 前言 举例(计算机6向计算机7相互通信) 交换机 交换机原理 路由器 路由器与其他设备区别: 注意&#…

Docker之路(3.docker底层原理、和虚拟机VM对比区别)

1.docker run 流程图 2. docker 底层原理 2.1 docker 是怎么工作的? Docker 是一个 Client-Server 结构的系统,Docker的守护进程运行在主机上, 通过Socket从客户端访问! DockerServer接收到Docker-Client的指令,就会执…

【历史上的今天】2 月 22 日:Red Hat Enterprise Linux 问世;BASIC 语言作者出生;计算机协会创始人诞生

整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。 今天是 2023 年 2 月 22 日,在 1857 年的今天,德国物理学家海因里希赫兹(Heinrich Hertz)出生。赫兹于 1887 年首先用实验证实了…

Mysql数据备份

一.数据备份的意义(1)保护数据的安全;(2)在出现意外的时候(硬盘的损坏,断电,黑客的攻击),以便数据的恢复;(3)导出生产的数…

【音频处理和分析工具】上海道宁与NUGEN Audio助力您更轻松地提供高质量、合规的音频

NUGEN Audio的产品 可在任何情况下提供 先进的保真度和 不受限制的创造力 提供直接和直观的声音处理方式 NUGEN工具可以更轻松地 提供高质量、合规的音频 同时节省时间 降低成本并保留创作过程 开发商介绍 NUGEN Audio是后期制作、音乐和广播领域的知名品牌&#xff0c…

【Mysql】 锁

【Mysql】 锁 文章目录【Mysql】 锁1. 锁1.1 概述1.2 全局锁1.2.1 介绍1.2.2 语法1.2.2.1 加全局锁1.2.2.2 数据备份1.2.2.3 释放锁1.2.3 特点1.3 表级锁1.3.1 介绍1.3.2 表锁1.3.3 元数据锁1.3.4 意向锁1.4 行级锁1.4.1 介绍1.4.2 行锁1.4.3 间隙锁&临键锁1. 锁 1.1 概述…

一起学习用Verilog在FPGA上实现CNN----(八)integrationFC设计

1 integrationFC设计 LeNet-5网络结构全连接部分如图所示,该部分有2个全连接层,1个TanH激活层,1个SoftMax激活层: 图片来自附带的技术文档《Hardware Documentation》 integrationFC部分原理图,如图所示,…

python基于flask共享单车系统vue

可定制框架:ssm/Springboot/vue/python/PHP/小程序/安卓均可开发 目录 1 绪论 1 1.1课题背景 1 1.2课题研究现状 1 1.3初步设计方法与实施方案 2 1.4本文研究内容 2 2 系统开发环境 4 2. 3 系统分析 6 3.1系统可行性分析 6 3.1.1经济可行性 6 3.1.2技术可行性 6 3.1.3运行可行…

应用层协议

目录 应用层常见协议 DNS协议 前言 域名结构 DNS服务器分类 DNS的工作原理 DNS工作原理实例 DNS记录 DHCP协议 静态IP与动态IP DHCP协议好处 DHCP分配IP地址的4阶段 电子邮件 邮件的过程 电子邮件发送过程 pop协议特点 IMAP协议的特点 FTP协议 前言 FTP数据…

操作系统-初次理解

目录 1. 冯诺依曼体系 2. 操作系统 2.1 概念 2.2 解释 2.3 为什么管理 1. 冯诺依曼体系 我相信大家在学习计算机语言时一定听过这个体系结构的,那么这个结构到底是什么呢?上图: 该图是我对冯诺依曼体系结构简单构造,真实情况更…

Java实现多线程有几种方式(满分回答)

目录JDK8 创建的线程的两种方式orcle文档解释方式一:继承Thread类方式二:实现Runnable接口同时用两种的情况其他间接创建方式Callable接口线程池JDK8 创建的线程的两种方式 orcle文档解释 orcle文档:https://docs.oracle.com/javase/8/docs…

【项目精选】动漫论坛的设计与实现(论文+视频+源码)

点击下载源码 作为文化产业的一部分,动漫影响了我国一代又一代青少年,据钱江晚报调查显示,有超过七成的95后愿意从事与动漫相关的行业,可见其对青少年影响力之大。 动漫论坛作为最先开始热爱动漫人士进行交流的方式之一&#xff0…

让师生“不跑腿”,教育数据治理究竟有何魔力

当前,教育信息化新基础设施正在加紧建设,教育业务系统应用不断推进,各种软硬件平台源源不断地产生着教育数据。海量数据的汇聚和分析,能给教育系统带来什么?如何在教育数字化转型中,探索出基于数据驱动的新…

Linux 浅谈之性能分析工具 perf

Linux 浅谈之性能分析工具 perf HELLO,各位博友好,我是阿呆 🙈🙈🙈 这里是 Linux 浅谈系列,收录在操作系统专栏中 😜😜😜 本系列将记录一些阿呆个人整理的 OS 相关知识…

【数据结构入门】-链表之单链表(1)

个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【数据结构初阶(C实现)】 文章标题回顾链表链表的概念及结构各种节点打印链表尾插创建节点尾删头插头删查找在pos…

微信小程序 Vue+uniapp+nodejs早教育教幼教知识学习系统

目 录 1绪论 1 1.1项目研究的背景 1 1.2开发意义 1 1.3项目研究现状及内容 5 1.4论文结构 5 2开发技术介绍 7 2.5微信小程序技术 8 3系统分析 9 3.1可行性分析 9 3.1.1技术可行性 9 3.1.2经济可行性 9 3.1.3操作可行性 10 3.2网站性能需求分析 10 3.3网站功能分析 10 3.4系统…

PHP7.4 FFI 扩展安全问题

在前面 [极客大挑战 2020] 的Roamphp5-FighterFightsInvincibly 题&#xff0c;遇到了 FFI扩展 调用函数进行rce to bypass disable_function&#xff0c;之前没遇见过&#xff0c;刚好借此机会学一学 目录 <1> PHP 7.4 FFI简介 <2> FFI 配置信息 <3> FF…

数据库丨TiDB集群中高危Grafana权限漏洞如何快速修复?答案在这里→

文章目录前言一、现有TiDB信息二、下载解压Grafana组件1.下载2. 解压安装三、制作离线镜像源1.制作镜像2.离线镜像发布3.查看当前镜像源&#xff0c;设置镜像源境准备4.备份private.json5.publish镜像6.各个参数解释如下&#xff1a;7.清理老文件四、Grafana组件升级替换Grafan…

记数据血缘前端中panzoom初始化缩放比例的问题探索

0. 背景 有人问我 血缘前端vue版本能不能改初始缩放比例&#xff0c;节点太多的情况下初始缩放比例太大导致无法看清全图&#xff0c;需要渲染完之后手动缩放才能。 当时编写代码的时候使用 panzoom这个库来完成 血缘图的缩放工作。 使用的panzoom版本是&#xff1a; “panzoo…