Bipartite graph/network学习

article/2025/10/26 9:54:25

Bipartite graph/network翻译过来就是:二分图。

维基百科中对二分图的介绍为:二分图是一类图(G,E),其中G是顶点的集合,E为边的集合,并且G可以分成两个不相交的集合U和V,E中的任意一条边的一个顶点属于集合U,另一顶点属于集合V。一个简单的形象表示如下图:

因此,二分图的表示为:G=(U,V,E)。

如果|U|=|V|,即集合U和集合V的元素个数相等,该二分图称为“平衡二分图”(Balanced bipartite graph)。

如果U或V中顶点的度是相同的,则该二分图称为“双正则”(biregular)。

然而,为了方便地表示二分图中某一个集合(U或V)中顶点之间的关系,经常采用"单模式投影"(one-mode projection)的方法将二分图进行处理。单模式投影的一个简单表示如下图:

其中,(a)为一个二分图,两个顶点集合X和Y。集合X上的单模式投影得到的结果为(b),Y上的单模式投影的得到的结果为(c)。

单模式投影是如何实现的呢?就是当集合(X)内的两个顶点在二分图的另外一个集合(Y)中有一个邻居时,这两个点(这两个顶点是X中的两个顶点)之间用一条边连接起来。

拿X的单模式投影举例: 该集合中有8个点,首先看点x1,它的度为2,也就是说X中的顶点x1和Y中的顶点y1、y2相连。X中的顶点x2,它的度为3,在集合Y中与之相连的点为y1、y2、y4。顶点x1和x2有共同的邻居y1、y2,则在单模式投影中将顶点x1和x2用一条边连接起来。x3的度为2,在集合Y中与之相连的为y3、y5。x1和x2都不与y3、y5相连,则在单模式投影的过程中,x1和x2都不与x3相连。以此类推,得到X的单模式投影的结果即为(b)。

单模式投影可以形象地表示出一个集合内部的顶点之间的关系,然而单模式投影却损失了原始网络中一些信息,这些信息可能在某些应用中非常重要。

考虑如下情况:

(1)两个人A、B都有喜欢的100首歌曲列表,然而A喜欢的100首歌曲中,B只喜欢其中的1首,显然我们可以得出:A、 B两个人在歌曲方面的喜好差异非常大。

(2)两个人C、D也有喜欢的100首歌曲列表,其中C和D的列表有99首歌都是相同的,显然可以得出的结论为:C、D两人在歌曲方面的偏好几乎一致。

然而,用上面的单模式投影方法对情况(1)、(2)进行处理,得到的投影结果是一样的。

因此,在进行单模式投影时,为图中的边加上权重可以保留一些重要信息。最简单的权重计算方法为:两个顶点有共同邻居的个数即为连接这两个点的边的权重。


http://chatgpt.dhexx.cn/article/072KSXXO.shtml

相关文章

bipartite matching二分图匹配

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

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

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

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

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

嵌入式软件测试的小结

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

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

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

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

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

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

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

嵌入式测试大赛预选赛

刚刚参加了预选赛,对于这种热身赛,是不需要一点编程能力的,只不过需要一些细心 题目下载: 链接:https://pan.baidu.com/s/1Xm2d8UYhrK75fukcXQhEcg 密码:hxzy 这次预选赛是在练习题4的基础上改的&#x…

嵌入式软件测试

如何在目标板上实时测试应用程序为什么嵌入式系统测试困难? 在目标板上测试面临的系列问题: 1、如何下载测试到板子上,然后如何收集测试结果 2、如何累积可重复自动执行的测试 3、如何尽可能减少人工工作 4、如何减少内存不够的问题 这…

全国软件测试大赛嵌入式测试步骤及所需工具

文章目录 前言一、所需工具二、测试步骤1.从慕测平台上下载题目2.搭建测试环境3.测试脚本编写怎么编写 总结 前言 全国软件测试大赛嵌入式测试最全步骤及所需的工具 一、所需工具 若需要测试工具请私信我 二、测试步骤 以2019年的省赛题目为例 1.从慕测平台上下载题目 下…

嵌入式软件测试(黑盒测试)-----三年嵌入式软件测试的理解

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

简单聊聊嵌入式软件测试

一、什么是嵌入式?什么是嵌入式软件测试? 此文不从行业术语来讲,就用大白话来描述,容易明白,不当之处,还请见谅和指正。 嵌入式?简单的可以理解为上位机或者单片机,或者运行微型可定…

嵌入式测试

一、嵌入式软件测试的方法 嵌入式软件测试分为4个阶段,即模块测试、集成测试、系统测试、硬件/软件集成测试。前3个阶段适用于任何软件的测试,硬件/软件集成测试阶段是嵌入式软件所特有的,目的是验证嵌入式软件与其所控制的硬件设备能否正确地…

机器学习必备知识点 之 先验概率和后验概率

机器学习必备知识点 见 机器学习必备知识点 我们可以把概率获得分为两种: 一种是从原因到结果——先验概率一种是从结果到原因——后验概率 举个例子: 这里的P(C1),P(C2),P(x|C1),P(x|C1)都是先验概率,因…

Gretna网络分析之先验知识

目录 1. 简介 1.1 小世界网络 1.2 平均路径长度 2.功能键介绍 2.1 Global Network metrics 2.2 Nodal and modular network metrics 3.彩蛋 (转载请注明来自Ressan博客) 1. 简介 网络:由节点和连线构成的图/模型,用来研究…

如何将先验知识注入推荐模型

看到知乎上的一个问题“如何向深度学习模型中加入先验知识?”,觉得这是一个很好的问题,恰好自己在这方面有一些心得,今天拿出来和大家聊一聊。 说这个问题有趣,是因为提问者一定是对DNN的“智能”程度不满意了&#xf…

如何给模型加入先验知识?

来源:PaperWeekly 作者:Billy Z 模型加入先验知识的必要性 端到端的深度神经网络是个黑盒子,虽然能够自动学习到一些可区分度好的特征,但是往往会拟合到一些非重要特征,导致模型会局部坍塌到一些不好的特征上面。常常一…

几何深度学习 - 利用几何先验知识的深度学习

深度学习很难。 虽然通用逼近定理表明足够复杂的神经网络原则上可以逼近“任何东西”,但不能保证我们可以找到好的模型。 尽管如此,通过明智地选择模型架构,深度学习取得了巨大进步。 这些模型架构对归纳偏差进行编码,为模型提供…

如何向深度学习模型中加入先验知识?

链接:https://www.zhihu.com/question/279012198 编辑:深度学习与计算机视觉 声明:仅做学术分享,侵删 作者:采石工https://www.zhihu.com/question/279012198/answer/1298985606 1) CNN 中使用的卷积层就是利用了图像像…