BiNE: Bipartite Network Embedding 阅读笔记

article/2025/10/26 7:02:42

论文传送门

作者

华东师范大学:

  • 高明
  • 周傲英
  • Leihui Chen
    中国科学技术大学:
  • 何向南

摘要

传统的学习图数据的节点表示的方法大都聚焦于一般的同构网络,忽略了二部图的特殊性质。因此这些方法对于二部图嵌入来说可能是次优的。
本文提出了BiNE(Bipartite Network Embedding)来学习二部图的顶点表示。通过有目的地采用“biased random walk”,生成可以较好保持长尾分布的顶点序列。接着提出了一个优化框架,在学习过程中既考虑了显式关系(observed links),也考虑了隐式关系(transitive links)。本文在真实数据集上完成了多种任务,包括边预测、推荐和可视化。定量的结果和定性的分析都验证了BiNE的有效性和合理性。

引言

二部图是一直常见的数据结构,被广泛应用于各种场景,如推荐系统、搜索引擎、问答系统等。
常见的图嵌入的方法 DeepWalk 通常分为两步:

  1. 随机游走得到顶点序列
  2. 使用词嵌入方法(如word2vec)进行计算

传统的嵌入方法在二部图上是次优的,原因有以下两点:

  1. 未考虑节点的类型信息,虽然边只存在于不同类型的点之间,但是同类型的点存在着隐含的关系(如用户-物品中,用户有相同的偏好)。随机游走能在一定程度上捕获高层次的隐含信息,但我们提出了一个更加有效和显式的方法来编码这种隐式的关系。
  2. 随机游走生成的 corpus 不能很好的保持二部图的特征。二部图的分布通常遵循幂律,但是deepwalk 等的随机游走的generator的设计存在不足,难以反映二部图的这种分布情况。

BiNE 有两个优点:

  • 提出了一个联合优化框架,既考虑了显式的关系也考虑了隐式的关系。
  • 为了尽可能多地保持二部图的属性,提出了一个有偏的自适应的随机游走生成器。

相关工作

图表示学习可以分为两类:

  • 基于矩阵分解的
  • 基于神经网络的

BINE

对显式的边建模

在这里插入图片描述
在这里插入图片描述
最小化 KL 散度
在这里插入图片描述

对隐式的边建模

对于同一类的点,连接它们的路径数量和长度表征了它们之间的关系。
但是计算路径数量是指数级的复杂度。
为此,我们考虑在两个包含相同类型的节点的二阶邻近关系的同质网络上进行随机游走。
定义 2nd-order proximity:
在这里插入图片描述
随机游走的步数与节点的 centrality 正相关。
设置停止随机游走的概率。
遵循了“rich gets richer”的准则。

centrality 可以用很多标准来衡量,比如 degree centrality,PageRank、HITS 等等。本文是用来 HITS。

接着对两个 corpora 采用 Skip-gram 模型。

优化目标:
在这里插入图片描述
由于这个优化是非平凡的,所以本文采用了 negative sampling。
首先采用了 locality sensitive hashing(LSH),然后随机选择负样本。

联合优化

采用了随机梯度下降(SGA)来优化模型。
在这里插入图片描述
由于优化目标是非凸的,所以初始化很重要。

实验

边预测任务数据集:

  • 维基百科数据:http://konect.uni-koblenz.de/networks/wikipedia_link_en
  • QQlive 数据

推荐任务数据集:

  • DBLP
  • MovieLens
  • VisualizeUs

在这里插入图片描述
边预测评价指标:

  • AUC-ROC
  • AUC-PR

推荐任务评价指标:

  • F1
  • Normalized Discounted Cumulative Gain
  • Mean Average Precision
  • Mean Reciprocal Rank

案例分析时采用 DBLP 的一个子集,对 Embedding 进行 TSNE 降维,同时与不对隐式关系建模的 BiNE 的效果进行了比较,其他参考的方法有:

  • DeepWalk
  • Node2Vec
  • LINE
  • Metapath2vec++

实验验证了 BiNE 的有效性。


http://chatgpt.dhexx.cn/article/etFlS7gC.shtml

相关文章

C#,图论与图算法,二分图(Bipartite Graph)最佳二分匹配(Maximum Bipartite Matching)算法与源程序

二部图中的匹配是一组边的选择方式,使两条边不共享一个端点。最大匹配是最大大小(最大边数)的匹配。在最大匹配中,如果向其添加任何边,则该边不再是匹配。对于给定的二部图,可以有多个最大匹配。 我们为什…

【论文精读】Bipartite network projection and personal recommendation

一、Introduction 在过去的几年里,人们对复杂网络进行了大量的研究,一类特殊的网络是二部网络(bipartite network)。特点是其节点可分割为两个互不相交的子集X和Y,连接只允许存在于不同集合中两个节点之间。例如人类的…

【一致性仿真】Group-Bipartite Consensus in the Networks With Cooperative-Competitive Interactions

文章链接:Group-Bipartite Consensus in the Networks With Cooperative-Competitive Interactions 仿真图Fig3: MATLAB代码 % Group-Bipartite Consensus in the Networks With Cooperative-Competitive Interactions % Protocol Simulation Results …

C#,图论与图算法,二分图(Bipartite Graph)的霍普克罗夫特-卡普(Hopcroft Karp)最大匹配算法与源程序

二分图Bipartite graph 有没有可能通过数学过程找到你的灵魂伴侣?大概让我们一起探索吧! 假设有两组人注册了约会服务。在他们注册后,会向他们展示另一组人的图像并给出他们的描述。他们被要求选择他们愿意与之匹配的人。 所有信息都被输入…

[VLDB 2022]Butterfly Counting on Uncertain Bipartite Graphs

总结 非确定二部图上的蝴蝶结构统计,精确算法。在普通的蝴蝶结构统计上,增加了边权重,使得传统算法失效,再在这基础上定义新的统计并优化老方法。 动机 Butterfly的数量直接展示了二部图的密度,是个很重要的属性。相…

二分匹配大总结——Bipartite Graph Matchings[LnJJF]

文章目录 二分匹配——Bipartite Graph Matchings[LnJJF]认识:什么是二分图?理解:现实模型如何与二分图相互转化?如何判断能否转化?能够转化的话,如何转化? 应用:已知一个二分图&…

【一致性仿真】Fixed-time bipartite consensus of multi-agent systems with disturbances

文章链接:Fixed-time bipartite consensus of multi-agent systems with disturbances 仿真图Fig2: MATLAB代码: % Fixed-time bipartite consensus of multi-agent systems with disturbances % author:JCGUY % date:2022-04-20 clear clc…

Bipartite Graph多视图学习聚类文章总结

看了一些anchor graph和bipartite graph 的文章始终不知道他们的区别在哪里。今天总结一下这类文章。 1.能看到最早的这类关于多视图学习的文章 Large-Scale Multi-View Spectral Clustering via Bipartite Graph(AAAI-2015) 目标:we addre…

Fast spectral clustering learning with hierarchical bipartite graph for large-scale data

Fast spectral clustering learning with hierarchical bipartite graph for large-scale data 基于层次二分图的大规模数据快速谱聚类学习 abstract 传统方法:不适用大规模问题 高斯核函数 提出了一种新的基于层次二分图(SCHBG)的光谱聚…

Bipartite Graph Based Multi-View Clustering

Bipartite Graph Based Multi-View Clustering 基于二部图的多视图聚类 abstract 对于基于图的多视图聚类,一个关键问题是通过两阶段学习方案捕获共识聚类结构。具体来说,首先学习多个视图的相似性图矩阵,然后将它们融合为统一的高级图矩阵。…

BiNE: Bipartite Network Embedding

** BiNE: Bipartite Network Embedding ** SIGIR 2018 论文链接:https://dl.acm.org/doi/10.1145/3209978.3209987 项目代码:https://github.com/clhchtcjj/BiNE 文章目录 BiNE: Bipartite Network Embedding 摘要1、Introduction2、Related work&a…

【Paper】2020_Event-triggered bipartite consensus over cooperation-competition networks under DoS atta

Hu, A., Park, J.H., Cao, J. et al. Event-triggered bipartite consensus over cooperation-competition networks under DoS attacks. Sci. China Technol. Sci. 64, 157–168 (2021). 文章目录 1 Introduction2 Problem description and preliminaries2.1 Multiagent model…

Bipartite graph/network学习

Bipartite graph/network翻译过来就是:二分图。 维基百科中对二分图的介绍为:二分图是一类图(G,E),其中G是顶点的集合,E为边的集合,并且G可以分成两个不相交的集合U和V,E中的任意一条边的一个顶点属于集合…

bipartite matching二分图匹配

目录 二分图bipartite的概念 匹配的概念 最大匹配 bipartite matching 这个词最近在看Transformer相关的论文里常见用作loss function,所以特地学习一下,bipartite matching是一个什么操作。个人理解,若有表述错误或不当的问题,还请各位大…

【嵌入式单元测试】C语言单元测试框架搭建

cmocka cmocka交叉编译源码下载 编译准备源码修改指定编译器编译 cmocka使用示例常见问题参考 单元测试框架是一个软件包,它能够让开发者比较方便的表达产品代码需要表现出什么样的行为。单元测试框架提供了一个自动化单元测试的解决方案,让开发者把更多…

三年黑盒测试工程师,带你了解嵌入式测试,金三银四升职加薪秘诀

什么是嵌入式系统? 嵌入式系统是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”。 嵌入式系统是“用于控制,监视或辅助操作机器和设备的装置”。 嵌入式系统还可以定义为“以应用为中心,以计算机技术为基础,软硬件可裁剪,功能、可靠性、成本、体积、功耗…

嵌入式软件测试的小结

文章内容为本人这三年来在嵌入式软件测试(黑盒)上的一些积累吧,说起来也挺快的,毕业三年的时间就这样过去了,在两家公司工作过(现在这家是第二家),这几年的测试项目基本都是围绕着嵌…

【测试】嵌入式软件测试VS一般软件测试

文章目录 1)什么是软件测试?测试的目的:软件测试的特点:软件测试信息流:软件测试的对象: 2)嵌入式软件测试2.1 嵌入式软件2.2 嵌入式软件测试嵌入式软件测试的特点: 3)嵌…

嵌入式软件自动化测试介绍

什么是嵌入式测试 嵌入式软件测试的概念似乎没那么大众,很多人从字面上理解,可能会以为这是个硬件测试,那么嵌入式测试实际上是什么呢? 根据IEEE(国际电机工程师协会)的定义,嵌入式系统是“控…

嵌入式软件测试的基本方法

嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可剪裁,适应应用系统对功能、可靠性、成本、体积及功耗严格要求的专用计算机系统。嵌入式系统的软硬件功能界限模糊,测试比PC系统软件测试要困难得多,嵌入式软件…