(LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation)
유튜브나 넷플릭스에서 영상을 시청하다 보면 '당신이 좋아할 만한 영상'이라는 추천을 받아본 적이 있을 겁니다.
이런 추천 시스템은 사용자의 취향을 분석하여 맞춤형 콘텐츠를 제공함으로써 사용자 경험을 크게 향상시켜 줍니다.
최근에는 그래프 신경망(Graph Neural Networks, GNN)을 활용한 추천 시스템이 각광받고 있는데요. 그중에서도 가장 혁신적인 모델로 평가받는 'LightGCN'을 소개하고자 합니다.
추천 시스템은 사용자와 아이템 간의 상호작용을 그래프로 표현할 수 있습니다.
사용자와 아이템을 노드로, 이들 간의 상호작용(구매, 시청, 평점 등)을 엣지로 나타내는 것입니다.
이렇게 구성된 그래프에서 사용자와 연결된 아이템, 그리고 그 아이템과 연결된 다른 사용자들의 정보를 활용하면 개인화된 추천이 가능해집니다.
그래프 예시
[노래 1]
↑ ↑
좋아요| |좋아요
| |
[사용자 1][사용자 2]
| |
재생 재생
| |
[노래 2][노래 3]
↑ ↑
좋아요 좋아요
\ /
[사용자 3]
노드 간의 화살표는 상호작용의 방향을, 화살표 위의 텍스트는 상호작용의 종류를 나타내고 있습니다.
사용자 1, 2는 노래 1을 좋아합니다.
사용자 1은 노래 2를 재생했고, 사용자 3은 노래 2를 좋아합니다.
사용자 2는 노래 3을 재생했고, 사용자 3은 노래 3을 좋아합니다.
그래프 신경망(GNN)은 이런 그래프 구조의 데이터를 처리하는 데 특화된 딥러닝 모델입니다.
GNN은 노드의 특징을 주변 노드의 정보를 활용하여 업데이트하는 과정을 반복하며 노드 임베딩을 학습합니다.
최근 몇 년간 GNN을 추천 시스템에 적용하려는 시도가 활발히 이뤄졌습니다.
대표적으로 NGCF(Neural Graph Collaborative Filtering)라는 모델이 있습니다.
하지만 이런 기존 모델들은 불필요하게 복잡한 구조를 가지고 있었습니다.
layer마다 특징 변환(feature transformation)과 비선형 활성화(nonlinear activation) 같은 연산을 수행했는데, 오히려 학습을 방해하고 성능 저하를 야기했습니다.
NGCF에서 이 연산들을 제거한 NGCF-fn 모델이 더 좋은 성능을 보인 것이 이를 방증합니다.
아래는 NGCF와 NGCF-fn의 성능을 비교한 표입니다.
| 데이터셋 | 지표 | NGCF | NGCF-fn |
|---|---|---|---|
| Gowalla | Recall | 0.1570 | 0.1742 |
| NDCG | 0.1327 | 0.1476 | |
| Amazon-Book | Recall | 0.0344 | 0.0399 |
| NDCG | 0.0263 | 0.0303 |
(논문 Table 참조)
LightGCN은 이런 문제 의식에서 출발했습니다.
추천 시스템에 정말 필요한 건 뭘까?
바로 사용자-아이템 간 상호작용 정보를 잘 활용하는 것입니다.
특징 변환이나 비선형성 같은 건 오히려 잡음으로 작용할 수 있죠. 이에 LightGCN은 모든 불필요한 연산을 걷어내고, 오로지 그래프 구조에 기반한 임베딩 전파(embedding propagation)에만 집중했습니다.
LightGCN은 크게 두 가지 아이디어를 기반으로 합니다.
경량 그래프 컨볼루션(Light Graph Convolution, LGC)
레이어 결합(Layer Combination)
아래 그림은 LightGCN의 전체 구조를 나타냅니다.

(논문 FIGURE 1 참조)
LightGCN은 기본적으로 사용자와 아이템의 ID 임베딩만을 학습 파라미터로 가집니다. 0번째 층의 초기 임베딩에 LGC를 K번 적용하면 K+1개의 임베딩이 생성되고, 이를 모두 결합한 것이 최종 임베딩이 됩니다.
최종 임베딩으로 사용자-아이템 점수를 계산하고, 이를 바탕으로 순위를 매깁니다.
학습 과정을 단계별로 나누어 보면 다음과 같습니다.
학습은 베이지안 개인화 순위(Bayesian Personalized Ranking, BPR) 손실 함수를 사용하며, 아래와 같이 정의됩니다.
여기서 와 는 각각 사용자 가 상호작용한 아이템 와 상호작용하지 않은 아이템 에 대한 예측 점수이고, 는 L2 정규화 계수입니다.
곧, BPR 손실 함수는 LightGCN이 사용자가 상호작용한 아이템에 높은 점수를 주고,
상호작용하지 않은 아이템에는 낮은 점수를 주도록 만드는 것입니다.
LightGCN의 성능은 여러 실험을 통해 입증되었습니다.
Gowalla, Yelp2018, Amazon-Book 등의 데이터셋에서 기존 모델들을 큰 폭으로 능가하는 결과를 보였는데요. 특히 NGCF 대비 16% 이상의 성능 향상을 달성했습니다.
| 데이터셋 | 지표 | NGCF | LightGCN |
|---|---|---|---|
| Gowalla | Recall | 0.1570 | 0.1830 |
| NDCG | 0.1327 | 0.1554 | |
| Yelp2018 | Recall | 0.0579 | 0.0649 |
| NDCG | 0.0477 | 0.0530 | |
| Amazon-Book | Recall | 0.0344 | 0.0411 |
| NDCG | 0.0263 | 0.0315 |
(논문 TABLE 2 참조)

(논문 Table3, Figure3 참조)
뿐만 아니라 LightGCN은 학습 효율성과 일반화 능력 측면에서도 두각을 나타냈습니다.
적은 수의 에폭으로도 충분한 성능을 얻을 수 있었고, 불필요한 파라미터를 제거함으로써 과적합에도 강건했죠.
LightGCN은 추천 시스템 분야에 여러 의미 있는 변화를 가져올 것으로 기대됩니다.
지금까지 LightGCN에 대해 알아보았습니다.
그래프 구조에 기반하되, 불필요한 복잡성은 과감히 덜어낸 LightGCN은 추천 시스템 분야의 새로운 지평을 열어줄 혁신적인 모델로 보입니다.
추천 시스템의 핵심은
사용자와 아이템 간 상호작용을 잘 이해하고 활용하는 것임을 다시 한번 생각하게 되며 흥미롭게 읽은 논문이었습니다.