شبکه توجه گراف (Graph Attention Network - GAT)، در ریاضیات (Mathematics)
انواع شبکه های عصبی (Neural Networks) را در آموزش زیر شرح دادیم :
شبکه توجه گراف (Graph Attention Network - GAT) :
شبکه توجه گراف (GAT) توسط ولیچکوویچ و همکاران در سال ۲۰۱۸ معرفی شد. GAT از مکانیزم توجه (self-attention) برای یادگیری اهمیت متفاوت همسایگان هر گره استفاده می کند. برخلاف GCN که وزن ثابت و از پیش تعریف شده (بر اساس درجه) برای همسایگان دارد، GAT به صورت تطبیقی وزن ها را یاد می گیرد.
در هر لایه GAT، برای هر گره
\[ i \]، ضریب توجه (importance) به هر همسایه
\[ j \](از جمله خودش) محاسبه می شود:
\[ e_{ij} = \text{LeakyReLU}\left( \mathbf{a}^T [\mathbf{W}\mathbf{h}_i \| \mathbf{W}\mathbf{h}_j] \right) \]که
\[ \mathbf{h}_i \]ویژگی گره
\[ i \]،
\[ \mathbf{W} \]ماتریس وزن قابل یادگیری،
\[ \mathbf{a} \]یک بردار وزن توجه، و
\[ \| \]عملگر الحاق (concatenation) است. سپس با سافت مکس روی همسایگان، وزن های نهایی به دست می آید:
\[ \alpha_{ij} = \frac{\exp(e_{ij})}{\sum_{k \in \mathcal{N}(i) \cup \{i\}} \exp(e_{ik})} \]خروجی نهایی برای گره
\[ i \]، جمع وزن دار تبدیل شده همسایگان است:
\[ \mathbf{h}'_i = \sigma\left( \sum_{j \in \mathcal{N}(i) \cup \{i\}} \alpha_{ij} \mathbf{W} \mathbf{h}_j \right) \]برای پایدارتر شدن فرآیند، GAT معمولا از توجه چندسر (multi-head attention) استفاده می کند: چندین مکانیزم توجه مستقل با پارامترهای مختلف، و سپس الحاق یا میانگین گیری خروجی ها.
مزایا GAT نسبت به GCN: انعطاف پذیری بیشتر، قابلیت تفسیر (وزن های توجه نشان می دهند کدام همسایه مهم تر است)، عملکرد بهتر در بسیاری از داده ها. همچنین نیازی به اطلاعات درجه یا ساختار کلی گراف ندارد (فقط محلی عمل می کند).
کاربردها: مشابه GCN در طبقه بندی گره ها، پیش بینی یال، اما به دلیل توجه، در مسائلی که بعضی همسایگان اهمیت بیشتری دارند (مثل متون با کلمات کلیدی) بهتر عمل می کند.
GAT به یکی از پراستنادترین معماری های GNN تبدیل شده و الهام بخش کارهای بعدی مانند GATv2 (با فرمول بندی بهبودیافته) بوده است.