멀티태스크 자기 지도 그래프 표현 학습
멀티태스크 자기지도 그래프 신경망이 더 강력한 과제 일반화를 가능하게 한다 [ICLR 2023] — 저자: Mingxuan Ju, Tong Zhao, Qianlong Wen, Wenhao Yu, Neil Shah, Yanfang Ye, Chuxu Zhang
이 글은 AI 번역본입니다. 오역이 의심되는 부분은 댓글로 알려주세요.
Created on September 12|Last edited on September 12
Comment
참고: 이 보고서는 그래프 표현 학습에 관한 연재 보고서의 일부입니다. 간단한 개요와 서베이는 다음 글들도 함께 참고해 주세요.
💡
A Brief Introduction to Graph Contrastive Learning
This article provides an overview of "Deep Graph Contrastive Representation Learning" and introduces a general formulation for Contrastive Representation Learning on Graphs using W&B for interactive visualizations. It includes code samples for you to follow!
GraphCL: Graph Contrastive Learning Framework with Augmentations
Graph Contrastive Learning Framework as outlined in "Graph Contrastive Learning with Augmentations" by You. et al.
Multi-view Graph Representation Learning
Easy to digest breakdown of "Contrastive Multi-View Representation Learning on Graphs" by Kaveh Hassani and Amir Hosein Khasahmadi
Multi-Task Self Supervised Graph Representation Learning
Brief breakdown of Multi-task Self-supervised Graph Neural Network Enable Stronger Task Generalization [ICLR 2023] by Mingxuan Ju, Tong Zhao, Qianlong Wen, Wenhao Yu, Neil Shah, Yanfang Ye and Chuxu Zhang
지난 몇 편의 글에서 우리는 기본적인 프레임워크를 소개했습니다. 그래프 대비 학습 (GRACE), 프로젝션 헤드를 사용하도록 확장했습니다(GraphCL)., 더 똑똑한 증강과 그래프 확산(MVGRL)을 도입했습니다., 하지만 우리는 여전히 단일 과제에 묶여 있었습니다. 최신 AI는 서로 다른 모달리티와 과제 전반에서 학습할 수 있는 멀티모달 멀티태스크 모델을 기반으로 백본을 구축하고 있습니다. 이번 글에서는 멀티태스크 자가 지도 그래프 표현 학습을 가능하게 하려는 하나의 프레임워크를 다룹니다. 이는 다음에서 다룬 바와 같습니다.멀티태스크 자기지도 그래프 신경망으로 더 강력한 태스크 일반화 달성“
그래프 신경망에 대한 기본���인 이해를 전제로 합니다. 간단히 복습하고 싶다면, 더 깊이 읽고 학습할 수 있는 훌륭한 자료들로 연결되는 아래 글을 참고하세요!
목차
방법

그림 1: 제안된 ParetoGNN 프레임워크
그래프에서의 자가 지도 학습 맥락에서 논의된 기존 방법들 대부분은 자가 지도 비전 분야의 이전 연구를 차용한 것입니다. 이러한 아키텍처는 비전 분야의 다음과 같은 기법들과 뚜렷한 유사성을 보입니다. SimCLR 그리고 VICReg 따라서 상호 정보 극대화와 같은 단일 철학에 기반한 하나의 프리텍스트 과제만 사용하는 제약을 받습니다. MVGRL이 접근법은 앞서 언급한 프리텍스트 과제로 자연스럽게 정식화될 수 있는 명백한 경우에는 매우 잘 작동하지만, 다른 다운스트림 과제에서는 성능이 떨어집니다. 풍부한 표현을 학습하려면 다운스트림 과제마다 매번 다른 모델을 학습시킬 수는 없습니다. 그런 방식은 확장되지 않기 때문입니다. LLM 연구에서 우리는 대부분의 다운스트림 과제에서 경쟁력 있는 성능을 내는 단일 모델을 학습할 수 있다는 교훈을 얻었습니다. 본 논문이 제안하는 프레임워크는 이러한 통찰을 바탕으로, 여러 철학을 결합해 SSL 기반 GNN의 과제 일반화를 강화하고자 합니다.
이 문제를 해결하려는 다른 시도들도 있었지만, 노드 수준의 유사친화성(pseudo-homophily) 가정에 의존합니다. 반면 이 논문에서는 단일 그래프 인코더를 학습하고, 모든 프리텍스트 과제를 동시에 최적화하며 동적으로 조정할 것을 제안합니다. 이를 위해 프리텍스트 과제들 간의 충돌을 조정하고 Pareto 최적성을 촉진하는 가중치를 동적으로 부여하여, 그래프 인코더가 모든 프리텍스트 과제로부터 적극적으로 지식을 학습하는 동시에 상충을 최소화하도록 합니다.
ParetoGNN 프레임워크는 다음과 같이 요약할 수 있습니다:
- 전체 그래프가 주어지면 데이터 소스로서, 각 프리텍스트 과제마다 에서 서브그래프를 샘플링합니다. 과제별 증강 기법 사용 서브그래프 샘플링은 학습 데이터의 다양성을 높이고, 동시에 멀티태스크 학습을 메모리 효율적으로 수행할 수 있게 해주는 자연스러운 증강 방식입니다.
- 그다음 각 변형된 그래프를 하나의 공유 그래프 인코더에 입력하여, 다음으로 매개변수화된 과제별 노드 표현을 얻습니다.
- 각 프리텍스트 과제마다 다음을 정의합니다 k번째 과제의 손실로서, 다음과 같이 정의합니다 어디에서 노드 표현을 디코딩하는 네트워크가 있으며, MLP 프로젝션 헤드나 그래프 디코더일 수 있습니다.
- 그다음 모든 프리텍스트 과제 전반의 손실을 동시에 최소화하고자 합니다. 파레토 최적화 정식화 (본질적으로 다중 그래디언트 하강 알고리즘)
그렇다면 어떤 프리텍스트 과제를 써야 할까? 저자들은 생성적 복원, 화이트닝 기반 비상관화, 상호정보 극대화를 포함한 세 가지 상위 철학을 아우르는 다섯 가지 간결한 프리텍스트 과제를 설계했다.
- 생성적 복원 무작위로 선택한 노드 배치의 특성 일부를 마스킹하고, 이 마스킹된 그래프를 GNN 인코더에 입력한 뒤, 각 노드가 속한 로컬 서브그래프의 노드 표현을 바탕으로 마스킹된 노드 특성을 복원하는 방식이다. 이와 유사한 기법을 연결된 노드 쌍 간의 링크 복원 학습에도 적용하여, 노드 간의 쌍별 위상 정보를 보존한다. 이를 다음과 같이 부른다 FeatRec 그리고 TopoRec.
- 화이트닝 비상관화 동일한 서브그래프를 서로 독립적으로 증강하여 두 개의 뷰를 만들고, 두 뷰에서 동일한 노드 쌍 사이의 거리를 최소화하는 한편, 모든 노드 임베딩의 특성별 공분산이 항등 행렬이 되도록 제약을 가한다. 이를 다음과 같이 부른다 RepDecor.
- 상호정보 극대화 손상되지 않은 서브그래프의 그래프 수준 표현과 그 내부 노드 표현들 사이의 거리를 최소화하고, 동시에 그 그래프 수준 표현과 손상된 노드 표현들 사이의 거리를 최대화함으로써 로컬–글로벌 상호정보를 극대화하는 방법이다. 동일한 절차를 서브그래프의 서로 다른 뷰에도 적용한다. 이를 다음과 같이 부른다 MI-NG 그리고 MI-NSG.
이 다중 손실 최적화 문제를 더 자세히 살펴보자. 우리가 다루는 손실 최소화 문제는 다음과 같이 공식화할 수 있다.
보기에는 조금 부담스러울 수 있지만, 사실 단순한 가중합일 뿐이다! 은(는) 특정 작업에 할당된 가중치이다 그리고 해당 작업에 대응하는 손실이다. 여기서 주목할 점은 이것이 다음과 같다는 것이다 단일 목적 최적화, 즉 개별 손실이 아니라 가중합을 최적화하려는 것이다. 이는 각 손실마다 기울기 규모가 달라지는 등의 바람직하지 않은 현상을 초래한다. 따라서 저자들은 이를 다목적 최적화 문제로 정식화하여 해결하려 하며, 즉 각 손실을 각각 최적화하는 접근을 취한다. 동시에 함께.
글을 가볍게 유지하기 위해, 다중 기울기 하강 알고리즘의 파레토 최적 정식화에 대한 정리들과 이를 다중 작업 자기 지도 학습 설정에 적용할 때의 어려움은 다루지 않겠습니다. 더 자세히 알고 싶다면 원문 논문을 참고하시기 바랍니다. 다중 기울기 하강 알고리즘 그리고 논문 2.3절.
💡
코드
ParetoGNN 프레임워크는 앞서 이 시리즈에서 다룬 글을 바탕으로 기존 프레임워크들을 확장하되, 핵심적인 차이는 사용하는 인코더에 있습니다. 이 인코더에는 그래프 인코더가 다양한 뷰를 생성하기 위해 수행하는 여러 가지 증강이 포함됩니다.
여러 뷰 간의 노드–그래프 정보량을 최대화하기 위해 사용된 증강 기법의 구현을 살펴보겠습니다.
class GraphEncoder(torch.nn.Module):...def p_ming(self, graph, feat, cor_feat):positive = self.big_model(graph, feat)negative = self.big_model(graph, cor_feat)summary = torch.sigmoid(positive.mean(dim=0))positive = self.discriminator(positive, summary)negative = self.discriminator(negative, summary)l1 = F.binary_cross_entropy(torch.sigmoid(positive), torch.ones_like(positive))l2 = F.binary_cross_entropy(torch.sigmoid(negative), torch.zeros_like(negative))return l1 + l2
전체 코드는 다음을 참고하세요 공식 구현다만 멀티태스크는 어려운 주제이므로, 저는 현재 단순화한 추상화 구현을 진행 중이며 곧 Colab을 공개할 예정입니다! 이 글을 계속 지켜봐 주세요. 곧 해당 구현을 소개해 드리겠습니다.
요약
이 글에서는 논문에서 소개된 멀티태스크 자기지도 그래프 표현 학습 프레임워크를 간략히 살펴보았습니다.멀티태스크 자기지도 그래프 신경망으로 더 강력한 태스크 일반화 달성저자 Mingxuan Ju, Tong Zhao, Qianlong Wen, Wenhao Yu, Neil Shah, Yanfang Ye, Chuxu Zhang가 제안한 것으로, 목표 함수는 복잡하지만 기존 연구 위에 최소한의 변경으로 구축되었으며 견고하고 확장 가능한 프레임워크로 보입니다.
W&B의 모든 기능을 확인하려면 다음을 참고하세요 5분 만에 읽는 짧은 가이드수학적 내용과 ‘처음부터 구현한’ 코드까지 다루는 더 많은 리포트를 원하신다면, 아래 댓글이나 저희의 페이지에서 알려주세요. 포럼 ✨!
Introduction to Graph Neural Networks
Interested in Graph Neural Networks and want a roadmap on how to get started? In this article, we'll give a brief outline of the field and share blogs and resources!
A Brief Introduction to Graph Contrastive Learning
This article provides an overview of "Deep Graph Contrastive Representation Learning" and introduces a general formulation for Contrastive Representation Learning on Graphs using W&B for interactive visualizations. It includes code samples for you to follow!
Self-Supervised Learning : An Introduction
A Brief Introduction to Self Supervised Learning, the first in an upcoming series of reports covering Self Supervised Learning.
Add a comment