GNN
전통적인 딥러닝 모델(예. CNN, RNN)으로는 그래프 데이터를 학습시키기 쉽지 않습니다. GNN은 그래프 데이터에 특화된 딥러닝 모델로 볼 수 있습니다.
GNN 으로 할 수 있는 일
1. Node Classification
그래프 내 각 노드의 특정 레이블을 예측하는 작업을 수행할 수 있습니다.
예. 소셜 네트워크에서 사용자의 관심사를 분류하고나, 논문 인용 네트워크에서 각 논문의 주제를 분류하는 데 사용됩니다.
2. Link Prediction
그래프에서 두 노드 간의 연결 가능성을 예측하는 작업도 수행할 수 있습니다.
예. 추천 시스템에서 사용자와 상품 간의 연결을 예측하거나, 소셜 네트워크에서 친구 추천에 활용됩니다.
3. Graph Classification
그래프 전체를 하나의 단위로 가주하여 특정 레이블을 예측하는 작업도 가능합니다.
예. 분자 구조를 그래프로 표현하여 해당 분자의 화학적 특성을 예측하거나, 소셜 네트워크에서 특정 커뮤니티 특성을 분류하는 데 사용됩니다.
GNN 학습 과정 예시 - 소셜 네트워크에서의 사용자 관심사 예측
소셜 네트워크에서 사용자의 관심사를 예측하는 노드 분류 문제를 생각해봅시다.
이 경우, 일단 주어진 데이터를 기반으로 노드 특징 행렬 X와 인접 행렬 A를 구성합니다.
- 노드 특징 행렬 (X):
- 각 사용자의 프로필 정보(나이, 성별, 지역 등)를 벡터로 표현한 행렬입니다.
- 인접 행렬 (A):
- 사용자들 간의 친구 관계를 나타내는 행렬입니다.
그리고 나서 아래와 같이 학습을 진행합니다.
학습 과정:
- 각 사용자는 자신의 친구들로부터 프로필 정보를 수집합니다.
- 수집된 정보를 기반으로 자신의 특징 벡터를 업데이트합니다.
- 2.1. 집계: 수집한 친구들의 프로필 정보를 평균하여 하나의 벡터로 통합합니다.
- 2.2. 변환: 통합된 벡터에 가중치 행렬을 곱하고, ReLU 함수를 적용하여 사용자 A의 새로운 특징 벡터를 생성합니다. - 이 과정을 반복하여, 각 사용자는 친구의 친구까지 포함한 넓은 범위의 정보를 통합합니다.
- 최종적으로 학습된 특징 벡터를 통해 각 사용자의 관심사를 예측합니다.
'개발 이야기 > [스터디] LLM' 카테고리의 다른 글
오늘의 LLM 공부: Recurrent Neural Network, Attention (0) | 2025.01.20 |
---|---|
오늘의 LLM 공부: LCM vs LLM (0) | 2025.01.14 |
오늘의 LLM 공부: smolagent (1) | 2025.01.09 |
오늘의 LLM 공부: MLLM (0) | 2025.01.07 |
오늘의 LLM 공부: RAG, GraphRAG, LazyGraphRAG (0) | 2025.01.06 |