【图书推荐】《图神经网络基础、模型与应用实战》

news2024/10/5 16:20:20

本书目的

详解PyTorch 图神经网络基础理论、模型与十多个应用案例,带领读者掌握图神经网络在自然语言处理、计算机视觉、推荐系统、社交网络4个领域的应用开发方法,丰富读者利用深度学习算法解决实际问题的能力。

本书案例

  1. 图卷积网络实现
  2. 图注意力网络实现
  3. 图自编码器实现
  4. 图生成网络实现
  5. 文本分类实现
  6. 情感分析实现
  7. 目标检测实现
  8. 图像生成实现
  9. 用户兴趣建模实现
  10. 推荐算法实现
  11. 广告推荐实现
  12. 社交网络分析实现
  13. 社交网络关系预测实现
  14. 社交网络推荐实现

内容简介

图神经网络不仅能够解决传统机器学习方法无法解决的图数据问题,而且能够应用于许多实际场景,例如社交网络、药物发现、网络安全、金融风控等。

本书旨在为初学者和实践者提供一个详细、全面的入门指南,围绕图神经网络基础、模型、应用实战(均采用Python+PyTorch实现)等方面进行介绍。

本书配套示例源码、数据集、PPT课件。

本书共分9章,内容包括图神经网络概述、PyTorch开发环境搭建、数据集的获取与加载、图神经网络模型、图神经网络在自然语言处理领域的应用、图神经网络在计算机视觉领域的应用、图神经网络在推荐系统领域的应用、图神经网络在社交网络领域的应用、图神经网络的挑战和机遇。其中,每个领域的应用都包括1~3个实战项目,可以帮助读者快速掌握图神经网络。

适合的读者

本书适合图神经网络初学者、图神经网络算法开发人员、深度学习算法开发人员,也适合高等院校或高职高专图神经网络相关课程的师生教学参考。

作者简介

兰伟,广西大学计算机与电子信息学院副教授,博士研究生导师,中南大学博士。主要研究方向为机器学习、数据挖掘、生物信息学。在国际知名期刊和会议上发表论文60余篇,先后出版专著2部,获省部级奖项1项。

前言

当今社会,图数据(如社交网络、交通网络、化学分子结构等)的出现越来越普遍,图神经网络在解决这些复杂的图数据上的挑战方面已经展现出了惊人的效果。图神经网络不仅能够解决传统机器学习方法无法解决的图数据问题,而且能够应用于许多实际场景,例如社交网络、推荐系统、药物发现、网络安全、金融风控、交通网络优化、计算机视觉、自然语言处理、医疗保健、物理科学和遥感科学等。

本书需要哪些预备知识

本书要求读者具备一定的预备知识,包括深度学习基础、线性代数、概率论、编程语言(如Python)的知识。对深度学习的理解至少应包括神经网络的基本原理和常见架构。对线性代数和概率论的理解应该能够支撑对复杂模型的数学描述和理论分析。读者应熟悉NumPy、Pandas等数据处理库,以及PyTorch等深度学习框架。

本书涵盖图神经网络的哪些方面

本书旨在为初学者和实践者提供一个详细的、全面的图神经网络入门指南,围绕图神经网络基础、实现、应用等方面进行介绍,主要内容包括图神经网络的基础、模型、算法实现、应用场景(如社交网络分析、推荐系统、蛋白质结构预测和图像分割等),以及图神经网络未来发展的前瞻性探讨。

图神经网络有哪些优势

图神经网络的主要优势在于其独特的能力,通过对图结构数据(如社交网络、推荐系统等)中的节点和边进行深度学习,有效捕捉和利用数据的拓扑关系,实现复杂关系和交互效应的建模。这种方法不仅能够提高数据分析和预测的准确性,而且能够揭示隐藏在图数据中的深层次模式和结构,从而在推荐系统、社交网络等多个领域提供前所未有的洞见和解决方案。

本书的特点

(1)全面深入:本书介绍了图神经网络的基础知识、算法原理、应用案例以及实践技巧,内容全面、深入。

(2)应用广泛:本书不仅介绍了图神经网络在社交网络分析、推荐系统等领域的应用,还介绍了其在计算机视觉和自然语言处理等领域的应用。

(3)实践性强:本书介绍了如何使用Python和流行的PyTorch框架来实现图神经网络,同时还介绍了如何处理和准备图数据集以及图神经网络的超参数调优方法等实践技巧。

(4)系统性强:本书的章节结构清晰,内容层次分明,系统性强,让读者在学习图神经网络时可以更好地理解整体框架和思路。

(5)前瞻性强:本书在讨论图神经网络未来发展的章节中,探讨了图神经网络的挑战和限制,并讨论了图神经网络未来的研究方向和应用前景,具有较强的前瞻性。

资源下载

本书配套示例源码、数据集、PPT课件,请读者用自己的微信扫描下面的二维码下载。如果在学习本书的过程中发现问题或有疑问,可发送邮件至booksaga@163.com,邮件主题写上“图神经网络基础、模型与应用实战”。

本书读者

  • 图神经网络初学者
  • 图神经网络算法开发人员
  • 深度学习算法开发人员
  • 高等院校或高职高专图神经网络课程的师生

作  者

2024年2月

目录

第1章  图神经网络概述 1
1.1  什么是图神经网络 1
1.1.1  图的基础知识 1
1.1.2  图神经网络简介 2
1.1.3  图神经网络的应用领域 3
1.2  图神经网络的重要性 4
1.3  图神经网络与传统深度学习的区别 5
1.3.1  传统深度学习模型 6
1.3.2  图神经网络与传统深度学习的区别 8
第2章  PyTorch开发环境搭建 10
2.1  Anaconda的安装和配置 10
2.2  PyCharm的安装和配置 12
2.3  PyTorch Geometric的安装和配置 13
2.3.1  查看系统支持的CUDA版本 14
2.3.2  下载最新的Navida显卡驱动 14
2.3.3  下载CUDA Toolkit 14
2.3.4  cuDNN的安装 16
2.3.5  安装PyTorch框架虚拟环境 17
2.3.6  检查PyTorch框架的安装 18
2.3.7  安装图神经网络库 19
2.3.8  使用Jupyter Notebook运行代码 20
第3章  数据集的获取与加载 22
3.1  PyTorch Geometric内置数据集 22
3.1.1  PyTorch Geometric简介 22
3.1.2  PyG内置数据集简介 23
3.1.3  如何加载内置数据集 24
3.2  自定义数据集 25
3.2.1  torch_geometric.data.Dataset类 25
3.2.2  torch_geometric.data.DataLoader类 28
3.2.3  如何加载自定义数据集 29
3.3  数据集预处理步骤 31
3.3.1  图像数据预处理 31
3.3.2  图数据预处理 41
第4章  图神经网络模型 45
4.1  图卷积神经网络 46
4.1.1  图卷积神经网络的起源和发展 46
4.1.2  图卷积神经网络与卷积神经网络的异同 46
4.1.3  图卷积神经网络简单代码实现 47
4.1.4  卷积神经网络简单代码示例 49
4.1.5  图卷积神经网络的应用领域 50
4.2  图注意力网络 51
4.2.1  图注意力网络的由来和发展 51
4.2.2  图注意力网络模型代码实现 51
4.2.3  图注意力网络的应用领域 53
4.3  图自编码器 54
4.3.1  图自编码器的由来和发展 54
4.3.2  图自编码器代码实现 54
4.3.3  图自编码器的应用领域 56
4.4  图生成网络 57
4.4.1  图生成网络的由来和发展 57
4.4.2  图生成网络代码实现 57
4.4.3  图生成网络的应用领域 59
第5章  图神经网络在自然语言处理领域的应用 60
5.1  基于图神经网络的文本分类实现 60
5.1.1  问题描述 61
5.1.2  导入数据集 61
5.1.3  词嵌入 63
5.1.4  构造邻接矩阵 64
5.1.5  构建图数据 66
5.1.6  图的小型批处理 68
5.1.7  图卷积神经网络 69
5.1.8  模型训练与测试 70
5.2  基于图神经网络的情感分析实现 71
5.2.1  问题描述 72
5.2.2  导入数据集 72
5.2.3  词嵌入 74
5.2.4  语法依存树 74
5.2.5  图的小型批处理 76
5.2.6  图神经网络的构造 77
5.2.7  模型训练与测试 78
5.3  基于图神经网络的机器翻译实现 79
5.3.1  基于语法感知的图神经网络编码器用于机器翻译 80
5.3.2  利用图卷积神经网络挖掘机器翻译中的语义信息 80
5.3.3  示例总结 80
第6章  图神经网络在计算机视觉领域的应用 81
6.1  基于图神经网络的图像分类实现 82
6.1.1  基于端到端的图神经网络模型的图像分类 82
6.1.2  基于区域的图神经网络模型的图像分类 93
6.2  基于图神经网络的目标检测实现 117
6.2.1  图神经网络的目标检测方法及其优缺点 117
6.2.2  GSDT目标检测的步骤 118
6.2.3  问题描述 120
6.2.4  导入数据集 120
6.2.5  模型搭建 120
6.2.6  模型训练与测试 121
6.3  基于图神经网络的图像生成实现 122
6.3.1  基于草图组合与图像匹配的图像生成 122
6.3.2  基于图神经网络的场景图生成 125
6.3.3  基于图卷积神经网络从场景图生成图像 126
第7章  图神经网络在推荐系统领域的应用 153
7.1  基于图神经网络的用户兴趣建模实现 154
7.2  基于图神经网络的推荐算法实现 155
7.3  基于图神经网络的广告推荐实现 156
7.3.1  数据预处理 157
7.3.2  模型定义 161
7.3.3  参数设置 165
7.3.4  模型训练与测试 168
7.3.5  结果 173
第8章  图神经网络在社交网络领域的应用 174
8.1  基于图神经网络的社交网络分析实现 174
8.1.1  问题描述 174
8.1.2  导入数据集 175
8.1.3  模型搭建 176
8.1.4  模型训练与测试 177
8.1.5  示例总结 178
8.2  基于图神经网络的社交网络关系预测实现 180
8.2.1  问题描述 180
8.2.2  导入数据集 181
8.2.3  模型搭建 182
8.2.4  模型训练与测试 183
8.2.5  示例总结 186
8.3  基于图神经网络的社交网络推荐实现 190
8.3.1  问题描述 190
8.3.2  导入数据集 190
8.3.3  模型搭建 192
8.3.4  模型训练与测试 193
8.3.5  示例总结 195
第9章  图神经网络的挑战和机遇 197
9.1  图神经网络的发展历程和现状 197
9.1.1  图神经网络的分类 198
9.1.2  经典的图神经网络模型 198
9.2  图神经网络的技术挑战和应用机遇 202
9.3  图神经网络的未来发展方向和热点问题 203

正版购买

《图神经网络基础、模型与应用实战(人工智能技术丛书)》(兰伟,叶进,朱晓姝)【摘要 书评 试读】- 京东图书 (jd.com)

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

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

相关文章

【状态压缩 动态规划 数论】1799. N 次操作后的最大分数和

本文涉及知识点 状态压缩 动态规划 数论 动态规划汇总 LeetCode1799. N 次操作后的最大分数和 给你 nums ,它是一个大小为 2 * n 的正整数数组。你必须对这个数组执行 n 次操作。 在第 i 次操作时(操作编号从 1 开始),你需要&a…

UE5 UMG

锚点 参考链接:虚幻5UI系统(UMG)基础(已完结)_哔哩哔哩_bilibili

专注 APT 攻击与防御—基于UDP发现内网存活主机

UDP简介: UDP(User Datagram Protocol)是一种无连接的协议,在第四层-传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后&#xf…

【Linux】冯·诺依曼体系结构

要想谈进程,我们就不能只谈进程,我们如果想搞清楚什么是进程,就要从操作系统讲起。我们现在的不管是Linux或是Windows或是安卓等操作系统,它们都有一个相同点,那就是遵循冯诺依曼体系结构,我们看一下冯诺依…

Docker-harbor

一、搭建本地私有仓库 1.1 下载Registry镜像 1.2 添加本地私有仓库配置 1.3 重启服务并运行Registry容器 1.4.容器的操作 1.4.1 拉取Nginx镜像并为镜像打标签 1.4.2 上传到私有仓库 1.4.3 列出私有仓库所有镜像 1.4.4 列出私有仓库的镜像的所有标签 1.4.5 先删除原有…

leetcode-没有重复项的全排列-97

题目要求 思路 1.递归,如果num和n的元素个数一样就可以插入res中了,这个作为递归的结束条件 2.因为这个题是属于排列,并非组合,两者的区别是排列需要把之前插入的元素在回退会去,而组合不需要,因此会存在一…

5.Git

Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html文件等)。通过Git仓库来存储和管理这些文件,Git仓库分为两种 本地仓库:开发人员自己电脑上的Git仓库远程仓库:远程…

leetcode-有重复数字的全排列-98

题目要求 思路 1.同【没有重复项的全排列-97】这个题一样,都是递归的题,区别在于这个可能会包含重复的数字,因此,不能只是简单的通过两个值是否相等然后用标志位标记,而是新增了一个数组,这个数组专门用于…

Springboot工程创建

目录 一、步骤 二、遇到的问题及解决方案 一、步骤 打开idea,点击文件 ->新建 ->新模块 选择Spring Initializr,并设置相关信息。其中组为域名,如果没有公司,可以默认com.example。点击下一步 蓝色方框部分需要去掉,软件包…

Liunx磁盘管理(下)

中篇:https://blog.csdn.net/Lzcsfg/article/details/138355036 一.逻辑卷 逻辑卷(Logical Volume)是逻辑卷管理 (LVM) 中的一个概念,它为 Linux 系统中的存储管理提供了更大的灵活性和可扩展性。LVM 允许你将物理存储设备&…

Linux:进程概念(二.查看进程、父进程与子进程、进程状态详解)

Linux:进程概念(二.查看进程、父进程与子进程、进程状态详解) 上次讲了一下:Linux:冯诺依曼体系结构、操作系统、初识进程 文章目录 1.查看进程1.1准备工作1.2 指令:ps—显示当前系统中运行的进程信息1.3查看进程属性…

Adobe Illustrator 2024 for Mac:矢量图形设计软件

Adobe Illustrator 2024 for Mac是一款专为Mac用户设计的行业标准矢量图形设计软件。该软件以其卓越的性能和丰富的功能,为设计师和艺术家们提供了一个全新的创意空间。 作为一款矢量图形软件,Adobe Illustrator 2024 for Mac支持创建高质量的矢量图形&a…

这是用VS写的一个tcp客户端和服务端的demo

服务端: 客户端: 其实这里面的核心代码就两行。 客户端的核心代码: //套接字连接服务端 m_tcpSocket->connectToHost(_ip,_port);//通过套接字发送数据m_tcpSocket->write(ui.textEditSend->toPlainText().toUtf8());//如果收到信…

代码本地化

目的 代码本地化(Localization)是指将软件应用程序中的文本、图形、声音和其他内容翻译成特定语言的过程,同时确保这些内容在目标文化中适当地呈现。本地化不仅仅是对文本进行翻译,还包括对日期、时间、数字、货币、排序顺序、文本…

Linux网络—PXE高效批量网络装机

目录 一、部署PXE远程安装服务 1、搭建PXE远程安装服务器 1)安装并启用 TFTP 服务 2)安装并启用 DHCP 服务 3)准备 Linux 内核、初始化镜像文件 4)准备 PXE 引导程序 5)安装FTP服务,准备CentOS 7 安…

学习笔记:【QC】Android Q telephony-data 模块

一、data init 流程图 主要分为3部分: 1.加载TelephonyProvider,解析apns-config.xml文件,调用loadApns将 xml中定义的数据,插入到TelephonyProvider底层的数据库中 2.初始化phone、DcTracker、TelephonyNetworkFactory、Conne…

用标准的Linux命令替换Alpine上的精简版命令

Alpine Linux 是一个基于 musl libc 和 busybox 的轻量级Linux发行版,busybox 实现了很多常用类Unix命令的精简版,特点是体积很小,舍弃了很多不常用参数,我们简单对比一下标准Linux自带的 ls命令 和Alpine下的 ls 命令便可略知一二…

服务智能化公共生活场景人员检测计数,基于YOLOv5全系列参数模型【n/s/m/l/x】开发构建公共生活场景下人员检测计数识别系统

在当今社会,随着科技的飞速发展,各种智能化系统已广泛应用于各个领域,特别是在人员密集、流动性大的场合,如商场、火车站、景区等,智能人员检测计数系统发挥着至关重要的作用。特别是在特殊时期,如节假日、…

04.1.添加多个监控同步其他主机

添加多个监控&同步其他主机 1.首先在agent配置文件中存在Include的,也就是说明,可以配置多个监控项并且同步到其他主机上的进行使用; 2.主机之间互相推送配置文件即可; 开始测试 我这里实在agent节点上直接在路径/etc/zabbi…

【iOS】多线程

文章目录 前言一、多线程的选择方案二、GCD和NSOperation的比较二、多线程相关概念任务队列 三、死锁情况主队列加同步任务 四、任务队列组合主队列异步并发队列异步 前言 这两天将iOS的多线程的使用都看了一遍,iOS的多线程方案有许多,本篇博客主要总结…