如何應用自動機器學習 (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 的各項功能。「我們的最終目的是推動自動圖機器學習在學術界與工業界的深層次探索和應用?!笰utoGL 研發者談及之后的計劃時表示。
相關鏈接
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
責編AJX
-
AI
+關注
關注
87文章
30146瀏覽量
268421 -
機器學習
+關注
關注
66文章
8377瀏覽量
132409 -
工具包
+關注
關注
0文章
46瀏覽量
9524
發布評論請先 登錄
相關推薦
評論