GATGPT: A Pre-trained Large Language Model with Graph Attention Network for Spatiotemporal Imputation
資料形式
框架
Our approach integrates pre-trained large language models (LLMs) into spatiotemporal imputation, introducing a groundbreaking framework, GATGPT. This framework merges a graph attention mechanism with LLMs. We maintain most of the LLM parameters unchanged to leverage existing knowledge for learning temporal patterns, while fine-tuning the upper layers tailored to various applications. The graph attention component enhances the LLM’s ability to understand spatial relationships.
Input Embedding
Graph Attention Module
Frozen Pre-trained Blocks
GPT-ST: Generative Pre-Training of Spatio-Temporal Graph Neural Networks
資料形式
Spatio-Temporal Data \(\mathbf{X}\)
Spatio-Temporal Hypergraphs
為了幫助理解超邊和節點之間的關係,我們來定義一個帶有詳細標註的頂點-超邊連線矩陣 \(\mathbf{H}\)。
假設我們有以下節點:
- \(v_{A,8}\):A區在早上8點
- \(v_{B,8}\):B區在早上8點
- \(v_{C,8}\):C區在早上8點
- \(v_{A,9}\):A區在早上9點
- \(v_{B,9}\):B區在早上9點
- \(v_{C,9}\):C區在早上9點
超邊:
- \(e_1\):連線 \(v_{A,8}\)、\(v_{B,8}\) 和 \(v_{C,8}\)
- \(e_2\):連線 \(v_{A,9}\) 和 \(v_{B,9}\)
我們可以構建一個帶有標註的矩陣:
解釋
- 行表示節點 \(v_{A,8}\) 到 \(v_{C,9}\),代表不同區域在不同時間點的資料。
- 列表示超邊 \(e_1\) 和 \(e_2\),用來連線多個節點。
- 矩陣中的 "1" 表示某個節點被某條超邊連線。例如:
- 第一行中 \(v_{A,8}\) 和 \(e_1\) 連線,因此位置為 1。
- 第四行中 \(v_{A,9}\) 和 \(e_2\) 連線,因此位置為 1。
這樣標註之後,可以清晰地看到超邊和節點的連線關係。透過這種方式,超圖可以同時捕捉多個節點之間的複雜關係,而不僅僅是兩兩節點的關係。
框架
- We propose a spatio-temporal mask autoencoder as a pre-training model for learning spatio-temporal dependencies. The model incorporates customized parameter learners and hierarchical spatial pattern encoding networks. These modules are specifically designed to capture spatio-temporal customized representations and intra- and inter-cluster region semantic relationships, which have often been neglected in existing approaches.
- We introduce an adaptive mask strategy as part of the pre-training mechanism. This strategy guides the mask autoencoder in learning robust spatio-temporal representations and facilitates the modeling of different relationships, ranging from intra-cluster to inter-cluster, in an easy-to-hard training manner.
Spatio-Temporal Pre-training Paradigm
Pretrain時間序列的編碼器(利用mask的資料)。在下游任務的時候,先對時間進行編碼。
這裡的 \(g\) 表示的是下游任務的訓練。
以下是具體的訓練框架
Customized Temporal Pattern Encoding
- 初始化時間embedding
1. Initial Embedding Layer
在進行時空資料編碼時,首先構建一個初始嵌入層。具體流程如下:
- 資料歸一化: 原始的時空資料 \(\mathbf{X}\) 透過 Z-Score 方法進行歸一化。這可以確保資料在不同時間和空間維度上具有可比性。
- 掩碼操作: 歸一化後的資料經過掩碼處理。這意味著在預訓練或特定任務中,有選擇地隱藏一些輸入資料,用來模擬缺失值或鼓勵模型在部分缺失資料的情況下進行推斷。
- 線性變換: 接著,應用一個線性變換來增強資料表示:\[\mathbf{E}_{r,t} = \mathbf{M}_{r,t} \odot \hat{\mathbf{X}}_{r,t} \cdot \mathbf{E}_0 \]
- 這裡,\(\mathbf{E}_{r,t}\) 是表示區域 \(r\) 在時間 \(t\) 的嵌入。
- \(\mathbf{M}_{r,t}\) 是一個掩碼矩陣,表示哪些資料可見。
- \(\hat{\mathbf{X}}_{r,t}\) 是歸一化後的時空資料。
- \(\mathbf{E}_0 \in \mathbb{R}^{F \times d}\) 是初始的嵌入向量矩陣,\(F\) 表示特徵的數量,\(d\) 是隱藏單元的維度。
透過這種方式,初始嵌入層可以在輸入資料的基礎上進行增強,生成更具代表性的嵌入。
2. Temporal Hypergraph Neural Network
為了學習時空關係,該方法使用了超圖神經網路進行編碼。核心公式如下:
解釋:
- 超圖傳播 (HyperPropagate): 透過超圖神經網路模型,將初始嵌入 \(\mathbf{E}_r\) 轉換成中間嵌入 \(\mathbf{\tilde{E}}_r\)。
- 最終嵌入 \(\mathbf{\Gamma}_t\): 將中間嵌入和時間特定的引數 \(\mathbf{W}_t, \mathbf{b}_t\) 結合,使用啟用函式 \(\sigma\) 得到。
這些引數(例如 \(\mathbf{H}_r, \mathbf{W}_t, \mathbf{b}_t\))都可以動態地調整,以捕捉到不同時間點上區域間的複雜關係。而這些引數的動態生成過程由下一部分的自定義引數學習器提供。
3. Customized Parameter Learner
該模組的核心目的是實現自定義引數學習,特別是為不同的區域和時間段生成獨特的模型引數。這些引數直接服務於第2點的超圖神經網路,用於調整其超圖傳播過程,從而實現對不同區域和時間的精細化建模。
公式解讀:
- \(\hat{\mathbf{H}}, \hat{\mathbf{W}}, \hat{\mathbf{b}}\):獨立的基礎引數。這些引數透過自定義學習器進行調整,以生成適合特定時間和區域的引數。
- \(\mathbf{c}_r, \mathbf{d}_t\):分別表示區域 \(r\) 和時間 \(t\) 的特徵表示。
- \(\mathbf{c}_r\) 是區域的自由引數,可以根據不同的區域調節超圖引數 \(\mathbf{H}_r\),確保在超圖傳播過程中,能夠捕捉到區域特定的關係。
- \(\mathbf{d}_t\) 透過時間的特徵 \(\bar{\mathbf{z}}_t^{(d)}\)(表示一天中的特定時間,如上午或下午)和 \(\bar{\mathbf{z}}_t^{(w)}\)(表示一週中的特定時間,如工作日或週末)生成,用於調節時間特定的引數 \(\mathbf{W}_t\) 和 \(\mathbf{b}_t\),從而反映時間變化對模型的影響。
總結:
在“Customized Temporal Pattern Encoding”這一框架中,第3點的自定義引數學習器直接為第2點的超圖神經網路提供服務。透過生成自適應的引數 \(\mathbf{H}_r, \mathbf{W}_t, \mathbf{b}_t\),使得超圖神經網路能夠根據不同的區域和時間段動態地調整傳播過程,精準捕捉時空資料中的複雜關係。這種方法允許模型自動學習並適應時空資料中的變化模式,更好地進行分析和預測。
4.2 Hierarchical Spatial Pattern Encoding
4.2.1 Hypergraph Capsule Clustering Network
當前的空間編碼主要專注於捕捉區域性相鄰區域間的關係,但忽略了不同區域之間的廣泛相似性。這些區域即使在地理上相距較遠,也可能表現出相似的時空模式。例如,商業區即使地理位置分散,也會表現出相似的時空特性。因此,GPT-ST 引入了一種超圖膠囊聚類網路來捕捉全域性區域間的相似性。該網路將多個區域聚類中心作為超圖邊,這些邊表徵了區域間的全域性相似性。
為了進一步增強超圖結構學習,我們引入了膠囊網路的動態路由機制。這種機制透過迭代更新超圖表示和區域-超圖連線,根據語義相似性改進聚類效果,從而增強了區域間依賴關係的全域性建模能力。
具體來說,首先我們獲取區域 \(r\) 在時間 \(t\) 的歸一化區域嵌入 \(\mathbf{v}_{r,t} \in \mathbb{R}^d\),使用先前的嵌入 \(\mathbf{\Gamma}_{r,t}\) 和 squash 函式計算。然後,這個嵌入被用來計算從區域 \(r\) 到每個超圖聚類中心 \(i\) 的傳遞資訊 \(\mathbf{\tilde{v}}_{i|r,t} \in \mathbb{R}^d\),在時間槽 \(t\) 內的具體公式如下:
其中:
- \(\mathbf{V} \in \mathbb{R}^{d \times d}\) 和 \(\mathbf{c} \in \mathbb{R}^d\) 是自由可學習的引數。
- 超圖連線矩陣 \(\mathbf{H}_{i}^{\prime} \in \mathbb{R}^{H_S \times R}\) 記錄了 \(R\) 個區域和 \(H_S\) 個超圖邊之間的關係,用作聚類中心。
- 該矩陣是基於之前的自定義引數學習器,使用如下公式進行動態調整:\[\mathbf{H}_{i}^{\prime} = \text{softmax}(\mathbf{d}_t^{\top} \mathbf{\hat{H}}) \]這裡,\(\mathbf{d}_t\) 和 \(\mathbf{\hat{H}}\) 是時間特徵和超圖嵌入。
迭代超圖結構學習。透過初始化區域嵌入 \(\mathbf{v}_{r,t}\) 和超圖連線嵌入 \(\mathbf{\tilde{v}}_{i|r,t}\),採用膠囊網路的動態路由演算法來迭代增強超圖的聚類效果。第 \(j\) 輪迭代的公式如下:
- \(s_{i,t}^j \in \mathbb{R}^d\) 表示第 \(j\) 次迭代的超圖嵌入。
- 權重 \(c_{i|r,t}^{j} \in \mathbb{R}\) 是基於上一輪超圖嵌入和傳遞資訊計算得到的。
- 最後,動態更新 \(b_{i|r,t}^{j}\) 使得聚類效果逐漸得到最佳化。
4.2.2 Cross-Cluster Relation Learning
透過聚類嵌入 \(\mathbf{s}_{i,t}\),我們提出在高層次超圖神經網路中建模聚類之間的相互關係。具體來說,使用以下公式來透過高層超圖從各個超圖聚類中心和 \(H_M\) 個高層超圖邊之間進行訊息傳遞:
- 其中 \(\mathbf{\hat{S}} \in \mathbb{R}^{H_S \times d}\) 是從 \(\mathbf{s}_{i,t}\) 重整後的嵌入矩陣。
- \(\mathbf{H}^{\prime\prime} \in \mathbb{R}^{H_M \times H_S T}\) 表示高層超圖結構。
在調整後的聚類表示 \(\hat{\mathbf{s}}_{i,t}\) 之後,我們將聚類嵌入反向傳遞給低層超圖結構:
- 這裡 \(\mathbf{\Psi}_{r,t}\) 是新的區域嵌入。
- 自定義引數學習器生成的 \(\mathbf{W}_{r}^{\prime}\) 和 \(\mathbf{b}_{r}^{\prime}\) 是低層超圖的區域特異性變換和偏差引數。
Squash 函式
squash
函式是一種非線性啟用函式,主要用於膠囊網路。其目的是將輸入向量的長度限制在 \((0,1]\) 的範圍內,同時保持向量的方向。這種操作能夠有效地規範向量的長度,使得模型在處理特徵時,能夠更穩定地聚焦在特徵方向,而不會因為特徵值的大小而產生波動。
squash
函式的數學表示式為:
其中:
- \(\mathbf{x}\) 是輸入向量。
- \(\|\mathbf{x}\|\) 表示向量的歐氏範數(即長度)。
函式解釋
- 向量長度調整:
squash
函式透過 \(\frac{\|\mathbf{x}\|^2}{1 + \|\mathbf{x}\|^2}\) 這一項,將輸入向量的長度縮放到 \((0,1]\)。當 \(\|\mathbf{x}\|\) 較大時,輸出的長度會趨近於 \(1\);當 \(\|\mathbf{x}\|\) 較小時,輸出的長度會接近於 \(\|\mathbf{x}\|\)。 - 保持方向:由於最後的 \(\frac{\mathbf{x}}{\|\mathbf{x}\|}\),輸入向量的方向得以保持。這意味著向量的方向資訊不受縮放的影響,確保特徵的方向性不變。
應用場景
在膠囊網路和超圖神經網路中,squash
函式被用來規範向量的表示,使得模型在特徵傳遞時能夠更有效地利用方向資訊,同時將特徵長度控制在一個合理的範圍內。這種設計能夠幫助模型更好地進行聚類和分類任務。
4.3 Cluster-aware Masking Mechanism
受語義引導的 MAE 啟發,GPT-ST 設計了一種基於聚類的掩碼機制來增強聚類間和聚類內部的關係學習。這種機制根據之前的聚類資訊 \(c_{i|r,t}\) 設計,來建立一種易於學習的掩碼過程。具體實現方法如下:
- 在訓練的開始,我們隨機掩蓋每個聚類中的一部分割槽域。
- 隨著訓練進行,對某些類別逐漸增加掩碼比例,以減少對特定特徵的依賴。
- 最終完全掩蓋一些類別的訊號,從而減少模型依賴,增強跨聚類的學習能力。
直接使用 \(c_{i|r,t}\) 生成掩碼是不現實的,因此引入了基於自定義引數學習器的兩層 MLP 網路進行調整,最終預測結果 \(\mathbf{q}_{i,t}\) 用於最佳化分佈。透過 KL 散度損失 \(L_{KL}\) 來最小化預測和真實聚類資訊的差異。
意義的解讀
可以的,讓我來詳細解釋一下這個超圖結構在時空資料中的應用,並結合一個例子來幫助你理解。
超圖編碼在時空資料中的作用
在時空資料分析中,我們需要處理大量具有空間和時間維度的多維資料。例如,監測城市中各個區域的交通流量、空氣質量、溫度等。這些資料不僅僅受單個區域或單一時間點的影響,還會因為區域之間的相互關係和時間的變化而相互影響。如何有效地建模這些複雜的關係是時空資料分析的一個關鍵問題。
傳統的圖神經網路可以很好地捕捉到區域性鄰居之間的相互影響,但它們在處理更廣泛的全域性關係(例如,城市的幾個不同區域在相距較遠的情況下依然有相似的時空模式)時,就變得不夠有效。而超圖的引入能夠解決這一問題。
什麼是超圖?
- 在普通的圖結構中,一條邊只連線兩個節點。而在超圖中,一條“超邊”可以連線多個節點,這樣能夠直接表示多個區域之間的相互關係。例如,如果某些區域在某個時間段表現出相似的交通模式(比如通勤高峰),超圖就能把這些區域連線起來,作為一個超邊。
- 透過這種方式,超圖能夠將普通的點對點連線擴充套件到一個點對多個點的關係,增強模型捕捉全域性相似性和複雜模式的能力。
超圖在時空資料中的應用舉例
假設我們要分析一個城市的交通流量資料。我們有以下幾個區域(A、B、C、D、E、F),並且想在不同的時間段(比如工作日和週末,早高峰和晚高峰)下,捕捉這些區域之間的交通流量模式。
-
普通圖結構的限制:
- 假設我們只使用普通的圖神經網路來表示這些區域之間的相互關係。可能只能捕捉到區域 A 和它直接相鄰的 B、C 之間的交通流量關係。這樣就只能建模區域性鄰居的關係。
-
超圖如何增強建模:
- 透過超圖,我們可以把在某個特定時間段(比如週一早高峰)下,有相似交通流量模式的區域用一個“超邊”連線起來。
- 比如,如果區域 A、D、E 在早高峰都有大量的通勤流量,而 B 和 C 較少,那麼我們可以把 A、D、E 這三個區域用一條超邊連線,表示它們之間的相似性。
- 這樣做的好處是,即便 A、D、E 之間在地理位置上並不相鄰,超圖也能夠透過這種方式捕捉到它們在特定時間段下的相似模式。
-
動態時空關係的建模:
- 在不同的時間段,超圖的結構也可以動態調整。例如,在週末,區域 B、C 和 F 的某些活動更密集,超圖就會調整超邊的連線,將這些區域連在一起,形成另一種相似模式。
- 這種動態調整是透過自定義引數學習器完成的,會根據時空資料的變化自動調整超邊和節點的連線權重,從而捕捉到複雜的時空關係。
超圖在公式中的體現
-
超邊連線表示:
- 在公式中,\(\mathbf{H}^{\prime}\) 作為超圖的連線矩陣,可以表示區域和超圖邊之間的連線關係。超圖邊的調整透過自定義學習器控制的動態路由完成,從而根據不同時段的相似性調整連線。
-
資訊傳遞:
- 在時空資料中,使用 \(\text{HyperPropagate}\) 來進行資訊傳播。例如,城市不同區域的交通流量資訊會在這些相似模式的區域中傳播,形成一種“全域性特徵”的聚類,而不僅僅是區域性的相鄰關係。
結合squash函式的使用
squash
函式在這種超圖模型中主要用於將節點的表示進行歸一化和調整,確保每個節點的資訊不會在資訊傳遞過程中因為過大或者過小的特徵而丟失。
總結
透過超圖和膠囊網路的結合,模型能夠自動將時空資料中的複雜全域性模式進行編碼,不僅能夠捕捉到區域性的鄰居關係,還可以學習到不同區域在某些特定時間下的全域性相似性。這種模型在分析和預測時空模式(例如交通流量、天氣變化、空氣汙染分佈等)時非常有效,因為它能夠自動將分散的節點(區域)連線成有意義的整體,從而提升預測和分析的準確性。
是的,你的理解非常準確。我們可以總結如下:
普通圖 vs. 超圖
-
普通圖的關係:
- 主要基於空間上的鄰近關係,也就是說,如果兩個節點(例如,兩個城市區域)在地理位置上相鄰,普通圖會把它們連線起來。
- 這種方式適合建模區域性的相互影響,比如相鄰區域之間的交通流量、天氣狀況等。
-
超圖的關係:
- 除了考慮空間上的鄰近性外,超圖還能夠根據特定時間段的相似性進行連線。例如,儘管兩個區域在地理上不相鄰,但如果它們在同一時間段(比如早高峰、週末)有相似的流量模式,超圖可以用“超邊”將它們連線在一起。
- 這種連線方式更靈活,可以捕捉到跨越空間和時間的複雜關係,幫助模型瞭解哪些區域在不同時間段內表現出相似的時空模式。
超圖的更新機制
關於超圖的更新,你的理解也是正確的。超圖的更新過程通常是針對單獨一個時間節點進行的。具體地講:
-
時間特定的超圖更新:
- 在模型中,超圖會根據特定的時間點(例如一個小時、一段時間段或一天內的某個時刻)進行動態更新。這個時間點的選擇取決於資料的粒度和應用場景。
- 例如,在早高峰時段,超圖會調整連線關係,將那些在早上通勤高峰流量相似的區域用“超邊”連線起來;而到了晚上,超圖可能會重新調整連線,反映出晚高峰或夜間的相似模式。
-
動態調整的機制:
- 這種調整不是預定義的,而是透過模型的自定義引數學習器來自動完成的。自定義引數學習器會根據時間和區域的特徵調整連線權重,從而動態地更新超圖。
- 例如,引數學習器可能會透過分析一天中各個時間段的區域特徵,生成不同時間特定的引數 \(W_t\) 和 \(b_t\),進而調整每個時間節點的超圖結構。
總結
你可以將超圖視為一種增強版的圖,不僅表示空間上的直接鄰居關係,還可以表達時間上的相似性關係。而超圖的更新機制則是動態的、時間敏感的,針對每一個時間節點,根據時空資料自動調整超圖的連線結構。這種靈活性使得模型能夠捕捉到複雜的時空模式,從而更好地進行分析和預測。
第3條公式和第6條公式的區別
是的,你的理解非常到位,可以這麼說:
第 3 條公式:鄰接矩陣(超圖結構)在網路層間保持不變
在第 3 條公式中:
- 鄰接矩陣(超圖連線矩陣) \(\mathbf{H}_r\) 在模型的不同層中保持不變。
- 具體來說,如果你有 3 層的超圖神經網路,每一層都會使用相同的超圖連線矩陣 \(\mathbf{H}_r\) 來進行資訊傳遞和卷積操作。
- 這種結構類似於傳統的圖神經網路(GCN),其中鄰接矩陣通常在不同的網路層間是固定的,只是在每一層進行不同的特徵更新。
第 6 條公式:迭代最佳化中動態調整連線關係
在第 6 條公式中:
- 連線權重 \(c_{i|r,t}^{j}\) 是動態變化的,這意味著在每一輪迭代中,這些連線關係都會根據輸入資料和當前的最佳化狀態進行調整。
- 在迭代的每一輪中,\(b_{i|r,t}^j\) 會不斷更新,從而影響到 \(c_{i|r,t}^j\) 的計算,最終使得 \(s_{i,t}^j\) 逐漸收斂到更穩定的聚類表示。
- 由於這是一個迭代最佳化過程,連線關係會在每一輪的迭代中動態變化,而不是在每層網路間保持不變。
小結:第 3 條和第 6 條公式的鄰接矩陣(連線關係)是否變化
-
第 3 條公式:鄰接矩陣不變
- 在多層網路中,超圖的結構 \(\mathbf{H}_r\) 是固定的,不會隨著網路層數變化。它根據區域特徵和時間特徵動態生成,但在某一時刻或時間段內會保持固定,貫穿所有網路層。
- 這意味著,假設有 3 層的超圖神經網路,每一層都會使用相同的 \(\mathbf{H}_r\) 進行資訊傳遞。
-
第 6 條公式:連線關係動態變化
- 在第 6 條公式中,連線關係(即 \(c_{i|r,t}^{j}\))是基於動態迭代最佳化的,每一輪迭代中都會根據節點的相似性和之前的結果進行更新。
- 這種動態調整使得模型能夠在每一輪迭代中逐步增強對節點相似性的捕捉,最終找到更加穩定的連線模式。這意味著,連線關係並不固定,而是在迭代過程中不斷變化和最佳化。
結論
- 第 3 條公式:超圖的結構在網路層間固定,即便有多層網路,鄰接矩陣不會變化。這種設計適合全域性時空資訊的聚合。
- 第 6 條公式:連線關係在迭代最佳化過程中動態調整,這使得模型能夠靈活適應特定時段內的動態相似性,適合更精細的動態聚類任務。
你可以把第 3 條公式理解為一種靜態的全域性資訊整合,而第 6 條公式則是動態的區域性最佳化過程。這種設計使得整個模型既能捕捉到穩定的全域性時空模式,也能動態適應區域性的相似性變化。