Hands-On-Graph-Neural-Networks-Using-Python
Hands-On Graph Neural Networks Using Python 是一本专注于图神经网络(GNN)实战的开源配套资源,旨在帮助读者利用 Python 和 PyTorch Geometric 构建强大的图深度学习应用。它主要解决了如何处理和分析具有复杂关系结构的数据难题,例如社交网络、化学分子结构或交通路网等传统方法难以有效建模的场景。
通过本书及代码库,用户能够掌握从基础概念到高级架构的完整流程,包括节点与图的分类、拓扑结构预测、多源异构数据融合以及基于拓扑信息的事件 forecasting。其独特亮点在于提供了大量基于真实世界问题的实践案例,涵盖了从自然语言处理到药物发现等多个前沿领域,让抽象的算法理论落地为可运行的代码。
这套资源非常适合人工智能开发者、数据科学家以及相关领域的研究人员使用。如果你希望深入理解图神经网络的内部机制,并具备动手实现工业级模型的能力,Hands-On Graph Neural Networks Using Python 将提供系统化的指导与丰富的代码示例,助你快速提升在图数据挖掘领域的专业技能。
使用场景
某制药公司的 AI 研发团队正致力于从海量分子结构数据中筛选潜在的新药候选物,以加速药物发现进程。
没有 Hands-On-Graph-Neural-Networks-Using Python 时
- 团队难以有效建模分子间的复杂拓扑关系,传统机器学习方法将分子简化为固定向量,丢失了关键的化学键连接信息。
- 缺乏基于 PyTorch Geometric 的现成架构参考,研究人员需从零推导图卷积公式,导致算法验证周期长达数周。
- 面对异构数据源(如蛋白质相互作用网络与化合物结构)时,无法有效融合多模态特征,模型预测准确率长期停滞在低位。
- 缺少生成 realistic 图拓扑的实战指导,团队在尝试设计全新分子结构时,生成的结果往往不符合化学稳定性规则。
使用 Hands-On-Graph-Neural-Networks-Using Python 后
- 利用书中提供的图神经网络架构,团队成功将分子建模为图结构,精准捕捉原子与化学键的空间依赖关系,显著提升了特征表达能力。
- 直接复用基于 PyTorch Geometric 的代码模板,快速实现了节点分类与图预测功能,将新模型的迭代验证时间从数周缩短至几天。
- 应用书中讲解的异构图融合技术,成功整合生物网络与化学数据,使药物活性预测的准确率提升了 15% 以上。
- 借鉴图生成模型的实战案例,团队能够设计出符合化学规则的全新分子拓扑,大幅提高了先导化合物发现的效率。
通过引入该书提供的系统化实战方案,研发团队成功突破了非欧几里得数据处理的瓶颈,将药物筛选的效率与精度推向了新高度。
运行环境要求
- Windows
- macOS
- Linux
- 非必需(可选 NVIDIA GPU 加速)
- 需安装 CUDA 11.7 和 cuDNN
- 第 15-17 章需要高显存,可通过减小训练集降低需求,具体型号未说明
未说明

快速开始
加入我们的新闻通讯 📬
DataPro
AI的未来正在展开。别掉队。
与DataPro保持同步,这是面向数据科学家、AI/ML研究人员和数据工程师的免费每周通讯。
从热门工具如PyTorch、scikit-learn、XGBoost和BentoML,到关于数据库优化和真实世界ML工作流的实用见解,您将快速获取所需信息。
与DataPro一起保持敏锐。加入超过11.5万名数据专业人士,不错过任何重要资讯。
BIPro
业务运行依赖数据。确保您的数据讲述正确的故事。
BIPro是面向商业智能专业人士、分析师和数据领导者的免费每周通讯。
通过Power BI、Tableau、Looker、SQL和dbt等工具,获取关于仪表板设计、数据可视化和分析策略的实用技巧。
与BIPro一起提升专业能力。受到超过3.5万名商业智能专业人士的信赖,看看您错过了什么。
Packt大会:10月11日至13日(线上)将生成式AI付诸实践
3天,20多位AI专家,25场以上研讨会和主题演讲
优惠码:USD75OFF
使用Python动手实践图神经网络
这是由Packt出版的《使用Python动手实践图神经网络》一书的代码仓库。
利用PyTorch构建强大图神经网络和深度学习应用的实用技术和架构
这本书讲什么?
图神经网络是一种非常有效的工具,可用于分析以图形式表示的数据,例如社交网络、化学化合物或交通网络。过去几年里,图神经网络的应用呈爆炸式增长,涉及自然语言处理、计算机视觉、推荐系统以及药物研发等多个领域。
本书涵盖以下精彩内容:
- 理解图神经网络的基本概念
- 使用Python和PyTorch Geometric实现图神经网络
- 利用数百万样本对节点、图和边进行分类
- 预测并生成逼真的图拓扑结构
- 结合异构数据源以提升性能
- 利用拓扑信息预测未来事件
- 应用图神经网络解决实际问题
如果您觉得这本书适合您,请立即购买纸质版!
使用说明与导航
所有代码都按文件夹组织。
代码示例如下:
DG = nx.DiGraph()
DG.add_edges_from([('A', 'B'), ('A', 'C'), ('B', 'D'), ('B', 'E'), ('C', 'F'), ('C', 'G')])
本书适用人群: 本书适用于对图神经网络及其应用感兴趣的机器学习从业者和数据科学家,以及希望全面了解这一快速发展的领域的学生。无论您是初学者还是希望进一步提升技能,本书都能满足您的需求。具备基本的机器学习和Python编程知识将有助于您更好地理解本书内容。
掌握基础的Python知识将帮助您更好地理解示例。
按照以下软硬件要求,您可以运行书中第2至第14章的所有代码文件。
软件与硬件清单
为了获得最佳的学习效果,您应当对图论和机器学习的基本概念有所了解,例如监督学习与无监督学习、模型训练以及模型评估等。熟悉深度学习框架(如 PyTorch)将有所帮助,但并非必需,因为本书会全面介绍相关数学概念及其具体实现。
| 所需软件 | 所需操作系统 |
|---|---|
| Python 3.8.15 | Windows、Mac OS X 和 Linux(任意) |
| PyTorch 1.13.1 | Windows、Mac OS X 和 Linux(任意) |
| PyTorch Geometric 2.2.0 | Windows、Mac OS X 和 Linux(任意) |
要安装 Python 3.8.15,您可以从 Python 官方网站下载最新版本:https://www.python.org/downloads/。我们强烈建议使用虚拟环境,例如 venv 或 conda。此外,如果您希望使用 NVIDIA 的图形处理器(GPU)来加速训练和推理,则需要安装 CUDA 和 cuDNN:
CUDA 是由 NVIDIA 开发的并行计算平台及 API,用于在 GPU 上进行通用计算。安装 CUDA 时,您可以按照 NVIDIA 官方网站上的说明进行操作:https://developer.nvidia.com/cuda-downloads。
cuDNN 是 NVIDIA 开发的一个库,为深度学习算法提供了高度优化的 GPU 实现原语。要安装 cuDNN,您需要在 NVIDIA 官网注册账号,并从 cuDNN 下载页面下载该库:https://developer.nvidia.com/cudnn。
您可以在 NVIDIA 官网查看支持 CUDA 的 GPU 产品列表:https://developer.nvidia.com/cuda-gpus。要安装 PyTorch 1.13.1,您可以参考 PyTorch 官方网站上的说明:https://pytorch.org/。请根据您的系统情况选择合适的安装方式(包括 CUDA 和 cuDNN)。
安装 PyTorch Geometric 2.2.0 时,您可以参照 GitHub 仓库中的说明:https://pytorch-geometric.readthedocs.io/en/2.2.0/notes/installation.html。在此之前,您需要先在系统中安装 PyTorch。
第 11 章需要 TensorFlow 2.4。安装方法可参考 TensorFlow 官方网站:https://www.tensorflow.org/install。请根据您的系统配置和所需版本选择合适的安装方式。
第 14 章则需要较旧版本的 PyTorch Geometric(2.0.4)。建议为此章节创建一个专用的虚拟环境。
第 15、16 和 17 章对 GPU 显存的需求较高。您可以通过减小代码中训练集的规模来降低显存占用。
其他一些 Python 库在部分或大部分章节中也会用到。您可以使用 pip install <name==version> 命令进行安装,也可以根据自身配置选择其他包管理工具(如 conda)。
以下是所需软件包及其对应版本的完整列表:
- torch==1.13.1+cu117
- torchvision==0.14.1+cu117
- torchaudio==0.13.1+cu117
- pandas==1.5.2
- gensim==4.3.0
- torch-scatter==2.1.0+pt113cu117
- torch-sparse==0.6.16+pt113cu117
- torch-cluster==1.6.0+pt113cu117
- torch-spline-conv==1.2.1+pt113cu117
- torch-geometric==2.2.0
- networkx==2.8.8
- matplotlib==3.6.3
- node2vec==0.4.6
- seaborn==0.12.2
- scikit-learn==1.2.0
- tensorflow-gpu~=2.4
- deepchem==2.7.1
- torch-geometric-temporal==0.54.0
- captum==0.6.0
完整的依赖清单可在 GitHub 上找到:https://github.com/PacktPublishing/Hands-On-Graph-Neural-Networks-Using-Python。此外,您也可以直接在 Google Colab 中导入笔记本:https://colab.research.google.com。
我们还提供包含本书中截图/图表彩色图像的 PDF 文件。点击此处下载。
更正说明
第 62 页:评分数量应为 55375,而非 48,580。
第 109 页:GAT 公式应为:

第 18 页(第一段第二句):例如,入度高的节点很可能是重要的信息或资源来源。 应改为 例如,出度高的节点很可能是重要的信息或资源来源。
第 18 页(第一段第三句):相比之下,出度高的节点很可能是重要的信息或资源的去向或消费者。 应改为 相比之下,入度高的节点很可能是重要的信息或资源的去向或消费者。
相关产品 <您可能喜欢的其他书籍>
认识作者
Maxime Labonne 是摩根大通的高级应用研究员,拥有巴黎理工学院的机器学习与网络安全博士学位。在攻读博士期间,Maxime 致力于开发用于计算机网络异常检测的机器学习算法。随后,他加入空中客车公司的 AI 连接实验室,运用其机器学习专长提升计算机网络的安全性和性能。之后,他加入摩根大通,目前致力于开发解决金融及其他领域各类挑战性问题的技术。除了科研工作外,Maxime 还热衷于通过 Twitter (@maximelabonne) 和个人博客与他人分享自己的知识和经验。
免费下载 PDF 版本
如果您已购买本书的纸质版或 Kindle 版,可免费获取无 DRM 限制的 PDF 版本。
只需点击链接即可领取您的免费 PDF。
常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器




