【图卷积神经网络】1-入门篇:为什么使用图神经网络(上)

2023-10-28

在本节中,将涵盖以下主要内容:

  • 为什么使用图?
  • 为什么学习图?
  • 为什么使用图神经网络?

为什么使用图?

首先需要回答的问题是:为什么对图感兴趣?图论是对图进行数学研究的学科,它已经成为理解复杂系统和关系的基本工具。图是一种将节点(也称为顶点)和连接这些节点的的集合的可视化表示,提供了一种表示实体及其关系的结构(见1.1)。

图1.1 - 具有六个节点和五条边的图的示例

通过将复杂系统表示为实体和相互作用的网络,我们可以分析它们之间的关系,从而更深入地了解它们的基本结构和模式。图的多功能性使它们成为各个领域的热门选择,包括以下领域:

  • 计算机科学:图可用于对计算机程序的结构建模,从而更容易理解系统的不同组件之间的交互方式。
  • 物理学:图可用于模拟物理系统及其相互作用,例如粒子之间的关系及其属性。
  • 生物学:图可用于模拟生物系统,例如代谢途径,作为相互连接的实体网络。
  • 社会科学:图可用于研究和理解复杂的社交网络,包括社区中个体之间的关系。
  • 金融学:图可用于分析股市趋势和不同金融工具之间的关系。
  • 工程学:图可用于建模和分析复杂系统,例如交通网络和电力网络。

这些领域自然地展示了一种关系结构。例如,图是社交网络的自然表示:节点是用户,边表示友谊关系。但是,图的多功能性使它们也可以应用于关系结构不太自然的领域,从而开启新的见解和理解。

例如,图像可以表示为图,如1.2所示。每个像素是一个节点,边表示相邻像素之间的关系。这使得可以将基于图的算法应用于图像处理和计算机视觉任务。

图1.2 - 左:原始图像;右:该图像的图表示

同样,句子可以转化为图,其中节点是单词,边表示相邻单词之间的关系。这种方法在自然语言处理和信息检索任务中非常有用,其中单词的上下文和含义是关键因素。

与文本和图像不同,图没有固定的结构。然而,这种灵活性也使得处理图更具挑战性。缺乏固定的结构意味着它们可以具有任意数量的节点和边,没有特定的排序。此外,图可以表示动态数据,其中实体之间的连接关系可以随时间变化。例如,用户和产品之间的关系可以随着它们彼此的互动而发生变化。在这种情况下,节点和边会根据现实世界中的变化进行更新,例如新用户、新产品和新关系。

在下一节中,我们将深入了解如何使用机器学习处理图数据,以创建有价值的应用程序。

为什么学习图?

图学习是将机器学习技术应用于图数据的研究领域。这个研究领域涵盖了一系列旨在理解和操作图结构化数据的任务。图学习有许多任务,包括以下内容:

  • 节点分类是一个任务,涉及预测图中节点的类别。例如,它可以根据其特征对在线用户或商品进行分类。在此任务中,模型根据一组带有标签的节点及其属性进行训练,并使用这些信息来预测未标记节点的类别。
  • 链路预测是一个任务,涉及预测图中节点对之间的缺失连接。这在知识图谱补全中非常有用,目标是完成实体及其关系的图。例如,它可以用于根据社交网络连接(朋友推荐)预测人与人之间的关系。
  • 图分类是一个任务,涉及将不同的图分类为预定义的类别。其中一个例子是在分子生物学中,分子结构可以表示为图,目标是预测它们的药物设计属性。在此任务中,模型根据一组带有标签的图及其属性进行训练,并使用这些信息来对未见过的图进行分类。
  • 图生成是一个任务,涉及根据一组期望的属性生成新的图。其中一个主要应用是为药物发现生成新的分子结构。这是通过训练一个模型来生成新的、未见过的结构来实现的。生成的结构可以根据其作为候选药物的潜力进行评估和进一步研究。

图学习还有许多其他实际应用,可以产生重大影响。其中最著名的应用之一是推荐系统,图学习算法根据用户之前的互动和与其他项目的关系推荐相关项目。另一个重要的应用是交通预测,图学习可以通过考虑不同路线和交通方式之间的复杂关系来改进旅行时间的预测。

图学习的多功能性和潜力使其成为一个令人兴奋的研究和开发领域。图的研究近年来取得了快速发展,这得益于大型数据集的可用性、强大的计算资源以及机器学习和人工智能的进步。因此,我们可以列举出四个主要的图学习技术家族[1]:

  • 图信号处理,将传统信号处理方法应用于图,例如图傅里叶变换和谱分析。这些技术揭示了图的固有属性,如其连接性和结构。
  • 矩阵分解,寻找大型矩阵的低维表示。矩阵分解的目标是识别解释原始矩阵中观察到的关系的潜在因素或模式。这种方法可以提供数据的简洁和可解释的表示。
  • 随机游走,是一种用于模拟图中实体移动的数学概念。通过在图上模拟随机游走,可以收集有关节点之间关系的信息。因此,它们经常用于为机器学习模型生成训练数据。
  • 深度学习,是机器学习的一个子领域,专注于具有多个层的神经网络。深度学习方法可以有效地将图数据编码和表示为向量。然后可以在各种任务中使用这些向量,具有出色的性能。

值得注意的是,这些技术并不是相互独立的,在应用中它们经常重叠。实际上,它们经常结合在一起形成混合模型,以利用每种技术的优势。例如,矩阵分解和深度学习技术可能会结合使用,以学习图结构化数据的低维表示。

当我们深入研究图学习的世界时,了解任何机器学习技术的基本构建块至关重要:数据集。传统的表格数据集,如电子表格,将数据表示为行和列,其中每行表示一个数据点。然而,在许多实际场景中,数据点之间的关系与数据点本身一样重要。这就是图数据集的用武之地。图数据集将数据点表示为图中的节点,将数据点之间的关系表示为边。

让我们以1.3中显示的表格数据集为例。

图1.3 - 家谱作为表格数据集与图数据集

该数据集表示有关一个家庭的五个成员的信息。每个成员有三个特征(或属性):姓名、年龄和性别。然而,表格版本的数据集不显示这些人之间的联系。相反,图版本用边表示它们,这使我们能够理解这个家庭中的关系。在许多情况下,节点之间的连接对于理解数据至关重要,这就是为什么以图形形式表示数据越来越受欢迎的原因。

现在,我们对图机器学习和涉及的不同类型的任务有了基本的了解,我们可以继续探索解决这些任务的最重要方法之一:图神经网络

具体请见下篇:【图卷积神经网络】1-入门篇:为什么使用图神经网络(下)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【图卷积神经网络】1-入门篇:为什么使用图神经网络(上) 的相关文章

随机推荐

  • 【PyTorch】PyTroch中.view()函数的详细使用方法

    文章目录 一 view 函数简介 二 view 函数的使用方法 一 view 函数简介 PyTorch中的 view 函数是一个用于改变张量形状的方法 它类似于NumPy中的 reshape 函数 可以通过重新排列张量的维度来改变其形状 而
  • 4.2.2-测试应用程序平台配置

    测试应用程序平台配置 ID WSTG CONF 02 总结 正确配置构成应用程序体系结构的单个元素非常重要 以防止可能危及整个体系结构安全性的错误 审查和测试配置是创建和维护体系结构的关键任务 这是因为各种系统通常带有通用配置 这些配置可能
  • zabbix 6.4.4 邮件媒介 设置

    配置后 启用 测试
  • 树莓派驱动交叉编译失败的可能原因总结

    1 首先检查交叉编译工具和源码版本是否一样 2 交叉编译工具环境变量是否正确配置 3 config 文件是否成功获取 4 make menuconfig 裁剪库是否配置正确 5 编译的命令是否正确 有些复制会乱码 6 驱动源码路径下的 Ma
  • 剑指offer 学习笔记 二叉搜索树的第K大节点

    面试题54 二叉搜索树的第K大节点 给定一棵二叉搜索树 找出其中第K大的节点 该题问法有问题 应该问从小到大第K个节点值为多少 这样才是书上代码的含义 即中序遍历到第K个元素 以下代码以下图二叉搜索树为例 include
  • android 开发之Activity切换

    img http dl iteye com upload attachment 434571 821c3369 a3bd 357a a260 e5ebe255fa6c jpg img img http dl iteye com upload
  • std::string、QString和const char*的互相转换

    std string QString和const char 常常需要互相转换 可以比作刚需哈哈哈哈 这里就做一个互相转换的记录 方便自己也方便大家 1 std string转QString QString有一个静态函数QString fro
  • 深度学习系列之ANN

    到此 ANN网络从最基础的单层感知器 到为深度网络作模板延伸的BP网络 将模型结构 参数训练 算法都举例讲解的很透彻 为下面的CNN网络的学习打下坚实的基础 这个在线编辑器 体验太差了 好好写一篇长文章 想知道博客上与大家交流 转换过程太麻
  • 大数据的认知

    对大数据的简单认识 大家好我是皈心 是个刚刚走上大数据这个领域的标题萌新 希望各位大佬多多指教 这是我的第一个博客来说说自己对大数据的认识 对大数据创意环境的构想以及自己在第一次实训中的感受有些不对的地方还请见谅 一 对大数据的认识 大数据
  • Mac电脑-mysql密码忘了怎么处理

    1 关闭mysql服务 老版本 sudo usr local mysql support files mysql server stop mac新版本 sudo usr local bin mysql server stop 或者 系统偏好
  • CSS盒子模型-01-优先级-基本测试

    3 1优先级的介绍 特性 不同选择器具有不同的优先级 优先级高的选择器样式会覆盖优先级低选择器样式 优先级公式 继承 lt 通配符选择器 lt 标签选择器 lt 类选择器 lt id选择器 lt 行内样式 lt important 注意点
  • C#基础知识

    快捷键 占位符 Console WriteLine 第一个数字是 0 第二个数字是 1 第三个数字是 3 n1 n2 n3 能取消斜线的转义作用 将字符串按照编辑的原格式输出 string str 11 n11 System IO File
  • Spring事务详解与使用

    Spring事务核心对象 J2EE开发使用分层设计的思想进行 对于简单的业务层转调数据层的单一操作 事务开启在业务层或者数据层并无太大差别 当业务中包含多个数据层的调用时 需要在业务层开启事务 对数据层中多个操作进行组合并归属于同一个事务进
  • Unity接入IAP、服务器验单(Google Play)

    Unity接入IAP 服务器验单 Google Play 最近因为项目需要 被分配来做项目SDK接入以及上架相关事宜 搞了好几天关于Unity接入支付的SDK 接入很简单 卡的最久的就是服务器验单 google相关文档也不是很全 走通之后觉
  • eclipse的Toggle Block Selection Mode功能---列模式

    快捷键 Alf Shift A Toggle Block Selection Mode 块选择模式开关 用法 首先用快捷键或者toolbar打开选择模式 会出现一个十字 表明块选择模式已开启 选中要统一修改的块 可以从 剪贴板ctrl v替
  • 2020大数据技术体系结构图,你值得拥有

    大数据技术体系结构图 JAVA JAVAEE核心 hadoop生态体系及各种框架 spark生态体系 Flink生态体系 JAVA JAVAEE核心 hadoop生态体系及各种框架 spark生态体系 Flink生态体系 希望对大家有所帮助
  • [设计模式] GoF 23种经典设计模式

    原文链接 https www yuque com cppdev patterns zainii GOF设计模式 Gang of Four 四人帮 设计模式的经典书籍 设计模式 可复用面向对象软件的基础 是由四个人共同完成 故GOF设计模式特
  • Spring Boot学习笔记

    文章目录 Spring Boot Spring Boot 整合 JSP Spring Boot HTML Thymeleaf 常用语法 Spring Boot 数据校验 Spring Boot 整合 JDBC Spring Boot 整合
  • Python中创建Dataframe的方法

    介绍4种在Python中创建Dataframe的方法 1 由数组 list组成的字典创建DataFrame import pandas as pd import numpy as np In 1 data pd DataFrame name
  • 【图卷积神经网络】1-入门篇:为什么使用图神经网络(上)

    在本节中 将涵盖以下主要内容 为什么使用图 为什么学习图 为什么使用图神经网络 为什么使用图 首先需要回答的问题是 为什么对图感兴趣 图论是对图进行数学研究的学科 它已经成为理解复杂系统和关系的基本工具 图是一种将节点 也称为顶点 和连接这