清华大学发布首个自动图机器学习工具包 AutoGL,开源易用可扩展,支持自定义模型...

本文主要是介绍清华大学发布首个自动图机器学习工具包 AutoGL,开源易用可扩展,支持自定义模型...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

来源:机器之心本文约2800字,建议阅读6分钟如何应用自动机器学习 (AutoML) 加速图机器学习任务的处理?

清华大学发布全球首个开源自动图学习工具包:AutoGL (Auto Graph Learning),支持在图数据上全自动进行机器学习。

人工智能的蓬勃发展离不开数据、算力、算法这三大要素。而在浩瀚的数据中,有一种数据结构既普遍又复杂,它就是图(graph)。

图是一种用于描述事物之间关系的结构,其基本构成元素为节点和连接节点的边。

很多不同领域的研究问题都可以很自然地建模成图机器学习,例如蛋白质建模、物理系统模拟、组合优化等基础研究;社交媒体分析、推荐系统、虚假新闻检测等互联网应用;以及金融风控、知识表征、交通流量预测、新药发现等。

社交网络图示例

图结构丰富且具有与生俱来的导向能力,因此非常适合机器学习模型。同时,它又无比复杂,难以进行大规模扩展应用。而且不同的图数据在结构、内容和任务上千差万别,所需要的图机器学习模型也可能相差甚远,这就导致不同任务的模型自动化面临巨大挑战。如何设计最优的图自动机器学习模型,是一个尚未解决的难题。

图 + AutoML = ?

自动机器学习 (AutoML) 旨在将机器学习的过程自动化,在降低机器学习使用门槛的同时,提升机器学习的效果。但现有的自动机器学习工具,无法考虑图数据的特殊性,因此无法应用在图机器学习模型中。

为了解决该问题,清华大学朱文武教授带领的网络与媒体实验室发布了球首个开源自动图学习工具包:AutoGL (Auto Graph Learning)。该工具支持在图数据上全自动进行机器学习,并且支持图机器学习中最常见的两个任务:节点分类任务(node classification)与图分类任务(graph classification)。

AutoGL 流程图

AutoGL 工具包首先使用 AutoGL Dataset 维护图机器学习任务所需数据集。AutoGL Dataset 导入了大规模图表示学习工具包 CogDL 和图神经网络库 PyTorch Geometric (PyG) 中的数据集模块,并添加对 OGB 数据集的支持,同时还添加了一些支持以便集成 auto solver 框架。

不同的图机器学习任务可以通过不同的 AutoGL Solver 得到解决。AutoGL Solver 使用四个主要模块自动化解决给定任务,分别是特征工程(Feature Engineering)、图学习模型(Graph Learning Model)、超参数优化(HPO),以及模型自动集成(Auto Ensemble)。每个部分在设计时都引入了对图数据特殊性的考虑。

模块 1:特征工程

AutoGL 特征工程模块包含了图机器学习过程中常用的特征工程方法,包括节点 / 边 / 子图特征提取、变换和筛选,如节点度数、节点 ID、特征向量等。这些方法显著丰富了目标图数据上的信息,提高了图学习的效果。同时,用户还可以非常方便地扩展特征工程模块,以实现个性化的需求。

模块 2:图学习模型

AutoGL 目前支持 GCN、GAT、GIN 等常见图学习模型,可以完成包括点分类、图分类在内的多种常见任务,使用方式简单,上手方便。同时,AutoGL 主页还提供了详细的说明文档,支持用户自定义模型,可扩展性良好。

模块 3:超参数优化

AutoGL 目前集成了多种通用超参数优化方法, 如网格搜索、随机搜索、贝叶斯优化、模拟退火、TPE 等算法,同时还包含专门针对图学习优化的自动机器学习算法 AutoNE。该模块省去了图学习中繁杂的手动调参过程,极大地提高了工程效率。同时,该模块易于使用,用户只需给出各个超参数的类型和搜索空间、指定超参数优化方法,即可快速上手运行若干自动图学习模型。

AutoGL 会在给定的资源预算(时间、搜索次数等)内给出最优的超参数组合。该模块同样支持扩展,用户可以自定义新的超参数优化算法。

模块 4:模型自动集成

自动集成模块目前支持两类常用的集成学习方法:voting 和 stacking。该模块通过组合多个基模型得到一个博采众长的集成模型,从而进一步提升图学习的效果。

AutoGL 工具包目前支持多种算法,如下表所示:

AutoGL 工具包四个不同模块所支持的算法

AutoGL 工具包极大地方便了开发人员进行对应的图学习算法设计和调优。用户只需按照 AutoGL 的数据集标准提供目标数据集,AutoGL 就会自动寻找最优的模型和对应的超参数,从而简化图学习算法开发与应用的流程,极大提升图学习相关的科研和应用效率。

此外,AutoGL 工具包还提供了一个供使用者公平地测试与对比算法的平台。AutoGL 在设计时遵循模块化思想,每个模块均可扩展,用户只需实现对应模块类的接口,即可方便地测试自己的算法,为快速获得 baseline 效果、公平对比不同模型性能提供方便。

未来展望

据 AutoGL 研发团队透露,他们将进一步深入研发,以方便其他研究者、业界使用者和初学者快速上手 AutoGL,解决学术界、产业界遇到的图学习相关问题。

AutoGL 网站显示,该工具包将在近期支持以下功能:

  • 神经架构搜索;

  • 大规模图数据集支持;

  • 更多图任务(如链接预测、异构图任务、时空任务);

  • Graph Boosting & Bagging;

  • 对更多图模型库提供后端支持(如 DGL)。

AutoGL 研发团队期待得到各类使用反馈,以更好地完善 AutoGL 的各项功能。「我们的最终目的是推动自动图机器学习在学术界与工业界的深层次探索和应用。」AutoGL 研发者谈及之后的计划时表示。

相关链接:

AutoGL 网站地址:http://mn.cs.tsinghua.edu.cn/autogl/

AutoGL 代码链接:https://github.com/THUMNLab/AutoGL

AutoGL 说明文档:https://autogl.readthedocs.io/en/latest/index.html

图深度学习模型综述:https://arxiv.org/abs/1812.04202

编辑:黄继彦

这篇关于清华大学发布首个自动图机器学习工具包 AutoGL,开源易用可扩展,支持自定义模型...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/901235

相关文章

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

Go Mongox轻松实现MongoDB的时间字段自动填充

《GoMongox轻松实现MongoDB的时间字段自动填充》这篇文章主要为大家详细介绍了Go语言如何使用mongox库,在插入和更新数据时自动填充时间字段,从而提升开发效率并减少重复代码,需要的可以... 目录前言时间字段填充规则Mongox 的安装使用 Mongox 进行插入操作使用 Mongox 进行更

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...