Graph学习笔记

复杂的图

2.1 异构图

  • 同构图只有一种节点类型,一种边的类型。异构图即边与节点的类型都不止一种的图。
  • 二分图: G = { V , E } \mathcal G=\left\{\mathcal V,\mathcal E\right\} G={V,E},节点集 V \mathcal V V可以被划分为两类 V 1 \mathcal V_{1} V1, V 2 \mathcal V_{2} V2,图里的边只存在与这两个集的节点的相互连接。
  • 多维图:在许多现实世界的图形中,一对节点之间可以同时存在多个关系。比如电商网站里用户与商品之间的关系可以为:‘点击’,‘购买’,‘评论’
  • 符号图:包含正边与负边,比如在社交网络里,有些节点之间的关系是屏蔽,有些是无关系,可以把这两类的的关系都用负边来表示,而’关注‘则是正边。定义: G = { V , E + , E − } \mathcal G =\left\{\mathcal V,\mathcal E^{+},\mathcal E^{-}\right\} G={V,E+,E}
    在这里插入图片描述
  • 超图:在现实生活中关系往往并不是成对出现的。比如下图这个学术论文的关系图,特定作者可以发表两篇以上的论文。 因此,作者可以看作是连接多篇论文(或节点)的超边,
    在这里插入图片描述
  • 动态图:上述提到的图都是静态的,节点之间的连接在观测时时固定的。然而在现实世界的很多应用中,随着向图上添加新的节点,图也在不断地发展,节点之间的边的数量也会增多。比如像Fcebook这样的社交网络,用户可以不断与他人建立友谊,新用户也可以随时加入Facebook。 这些类型的演化图可以表示为动态图,其中每个节点或边都与时间戳关联。节点的时间戳代表着当这个节点第一次与其他节点相连接的时刻。
  • 定义:动态图 G = { V , E } \mathcal G=\left\{\mathcal V,\mathcal E\right\} G={V,E},节点的集合KaTeX parse error: Expected '}', got 'EOF' at end of input: …v_{1},...,v_{N},边的集合 E = { e 1 , . . . , e M } \mathcal E=\left\{e_{1},...,e_{M}\right\} E={e1,...,eM}。每个节点与边都和一个时间戳相关联,代表着它们产生的时间。

在这里插入图片描述

图上的计算任务

  • 节点分类:在现实世界的图中,节点往往具有丰富的信息,这些信息经常被当作这些节点的标签。例如,在社交网络中,此类信息可以是用户的人口统计属性,例如年龄,性别和职业,或者用户的兴趣和爱好。这些标签通常有助于表征节点,并可以用于许多重要的应用程序。例如,在诸如Facebook之类的社交媒体中,可以利用与兴趣和爱好相关的标签向其用户推荐相关项目(即新闻和事件)。但是,实际上,对于所有节点通常很难获得全套标签。例如,不到1%的Facebook用户提供了完整的人口统计属性。 因此,我们可能会得到仅具有与标签关联的部分节点的图,并且我们的目标是为没有标签的节点推断标签。 这激发了图上节点分类的问题。在图片托管平台Flickr上,用户可以订阅多个图片频道,那么一个用户就和多个标签联系了起来,图的多节点分类问题,可以帮助预测用户潜在的可能喜欢的新的图片类别。
  • 连接预测:在许多实际应用中,图形并不完整,具有未被观测到的缺失的边。同时,许多图也在不停的发展,再比如facebook之类的社交媒体,用户可以继续与其他用户成为朋友。在学术合作关系图中,作者可以不断与其他学者建立新的合作关系。推断或者预测这些缺失的边很有帮助,可以用来完成朋友推荐,知识图谱的补全,犯罪情报分析。
  • 图分类:
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
你好!关于学习数据结构的C语言笔记,我可以给你一些基本的指导和概念。数据结构是计算机科学中非常重要的一门课程,它涉及存储和组织数据的方法。C语言是一种常用的编程语言,很适合用于实现各种数据结构。 下面是一些数据结构的基本概念,你可以在学习笔记中包含它们: 1. 数组(Array):一种线性数据结构,可以存储相同类型的元素。在C语言中,数组是通过索引访问的。 2. 链表(Linked List):也是一种线性数据结构,但不需要连续的内存空间。链表由节点组成,每个节点包含数据和指向下一个节点的指针。 3. 栈(Stack):一种后进先出(LIFO)的数据结构,类似于装满物品的箱子。在C语言中,可以使用数组或链表来实现栈。 4. 队列(Queue):一种先进先出(FIFO)的数据结构,类似于排队等候的队伍。同样可以使用数组或链表来实现队列。 5. 树(Tree):一种非线性数据结构,由节点和边组成。每个节点可以有多个子节点。二叉树是一种特殊的树结构,每个节点最多有两个子节点。 6. 图(Graph):另一种非线性数据结构,由节点和边组成。图可以用来表示各种实际问题,如社交网络和地图。 这只是数据结构中的一些基本概念,还有其他更高级的数据结构,如堆、哈希表和二叉搜索树等。在学习笔记中,你可以介绍每个数据结构的定义、操作以及适合使用它们的场景。 希望这些信息对你有所帮助!如果你有任何进一步的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值