자기 지도 학습은 추천 시스템의 희소한 데이터를 처리하는 문제에 있어서 해결책으로 주목받고 있으며, 본 서베이 논문은 이러한 자기 지도 학습을 Contrastive, Generative, Predictive, Hybrid 네 가지 범주로 나누어 설명한다.
실험 비교를 용이하게 하기 위해 다양한 SSR 모델과 벤치마크 데이터셋이 포함되어 있는 SELERec이라는 오픈 소스 라이브러리를 공개한다.
처음에는 PinSAGE에서 negative sample을 정의하여 학습하는 방식이 SSR의 Contarstive learning과 다른점이 있는지 의아했지만, 본 논문에서 이에 대해 설명한다.
기존 Contrastive learning 기반 추천은 지도 및 비지도 설정 모두에 적용되며, 데이터를 증강하지 않고 marginal loss를 최적화한다는 점에서 self-supervised learning으로 분류되지 않는다.
데이터를 증강하는 것이 둘의 핵심적인 차이라고 보여진다.
현재 SSR의 연구는 주로 graph와 sequential data를 활용한다.
이 아키텍처를 기반으로 하여 SSR은 다음과 같이 정의될 수 있다.
수식에서 는 원본 데이터이며, ~: 증강된 데이터이다.
SSR에서 일반적으로 사용되는 데이터 증강 기술은 시퀀스 기반, 그래프 기반, 그리고 특징 기반으로 분류된다.
주어진 항목 시퀀스 가 있을 때, 일반적인 시퀀스 기반 증강 방법은 다음과 같다.
주어진 사용자-아이템 그래프와 인접 행렬에 대해 일반적인 그래프 기반 증강 방법은 다음과 같다.
Feature-based agumentation 작업은 속성이나 임베딩 공간 내에서 작동한다.
Contrastive learning의 아이디어는 각 인스턴스(사용자/아이템/시퀀스)를 하나의 클래스로 취급하고, 임베딩 공간에서 동일한 인스턴스의 변형을 가깝게 배치하는 반면, 서로 다른 인스턴스의 변형을 멀리 배치하는 것이다.
이러한 작업은 structure-level contrast, feature-level contrast 그리고 model-level contrast로 나뉜다.
structure-level contrast는 same-scale contrast와 cross-scale contrast로 나뉜다.
Local-Local contrast는 그래프 기반 SSR 모델과 함께 사용되어 사용자/아이템 노드 표현 간의 상호 정보를 최대화한다.
와 는 모두 증강된 노드 표현을 의미한다.
Global-Global Contrast는 sequential 추천 모델에서 자주 사용되며 시퀀스를 사용자의 전체적인 뷰로 간주한다.
와 는 모두 증강된 시퀀스를 의미한다.
Local-Global Contrast는 그래프 학습에서 자주 사용되며, 전역 정보를 지역 구조 표현으로 인코딩하고 전역 및 지역 의미를 통합하는 것을 목표로 한다.
은 global-level 그래프 표현의 readout 함수로 그래프에서 노드의 특성을 요약한다.
Local-Context Contrast는 그래프와 시퀀스 모두에서 관찰되며, 컨텍스트는 ego-network 혹은 클러스터링을 통해 구성된다.
는 노드 혹은 시퀀스 의 컨텍스트를 의미한다.
feature-level contrast는 structure-level contrast 대비 학술 데이터셋에서의 제한된/특성 속성 정보로 인해 덜 탐구되었다.
반면, 산업에서는 데이터가 일반적으로 다중 필드 형식으로 구성되며 사용자 프로필 및 아이템 카테고리와 같은 다양한 범주형 특성을 사용할 수 있다.
일반적으로 이 유형은 다음과 같은 형식으로 정의된다.
~와 ~는 위에서 설명한 feature augmentation 방식으로 입력 특성을 수정하거나 모델에서 학습한 특성 수준의 증강이다.
앞의 두 방식은 데이터 관점에서 self-supervised learning 신호를 추출하지만, 이들은 end-to-end 방식으로 구현되지 않았다.
또 다른 방식은 입력을 변경하기 않고 모델 아키텍처를 수정하여 필요할 때 뷰 쌍을 증강하는 것이다.
contrastive loss의 최적화 목표는 두 표현 와 간의 상호 정보(Mutual information)를 최대화하는 것이다.
[참고] 상호 정보(MI) 정의와 최대화하는 이유
상호 정보는 두 확률 변수 간의 통계적 의존성을 측정하는 지표로, self-supervised learning에서는 데이터의 한 부분(샘플의 한 뷰)이 다른 부분(동일한 샘플의 다른 뷰)에 대해 얼마나 많은 정보를 제공하는지를 측정한다.
서로 다른 변수 간의 높은 MI는 모델이 입력 데이터의 다양한 특징 및 관계를 잡아내어 더 풍부한 표현을 학습할 수 있게 도와준다.
따라서 MI를 최대화하는 것은 모델이 두 변수 간의 의존성 및 상호 관계를 더 잘 이해하고 반영할 수 있도록 하는 목적이다.
하지만 MI를 직접 최대화하는 것은 어렵기 때문에 실질적인 방법은 그것의 lower bounds를 최대화하는 것이다.
이에 대해서는 두 가지 일반적으로 사용되는 lower bounds가 있다.
Jensen-Shannnon divergence(JSD)는 SSL에서 상호를 추정하는 데 사용되는 상호 정보 추정기 중 하나이다.
그래프 시나리오에서 널리 사용되며 다음과 같이 정의될 수 있다.
논문에서 제시된 바닐라 구현은 다음과 같은 bilinear scoreing function인
이며, dot-product 형태로도 사용된다.
JSD를 최대화하여 두 뷰 간의 상호 정보량을 효과적으로 최대화하며,이를 통해 모델은 데이터로부터 의미 있는 정보를 포착한다.
InfoNCE(information Noise Contrastive Estimation)은 NCE(Negative Contrastive Estimation)의 소프트맥스 기반 버전으로 사용하여 일련의 부정적인 샘플중에서 양성 샘플을 식별하는 방법이다.
와 는 동일한 입력의 서로 다른 뷰로부터 얻은 임베딩이다.
는 두 표현 간의 유사성을 나타내는 점수이며, 는 부정적인 샘플의 수를 나타낸다.
이 손실은 양성 샘플의 확률을 최대화하고 동시에 부정적인 샘플과의 차이를 최소화하여 모델이 의미 있는 정보를 추출하도록 임베딩을 학습한다.
Generative 접근 방식은 BERT와 같은 masked language models에서 영감을 받았다.
해당 방식의 모델은 자기 지도 학습 작업을 사용하여 사용자/아이템 프로필을 손상시킨 후 원래 사용자/아이템 프로필과 같아지도록 재구성하는 방향으로 훈련된다.
Generative 방식은 Structure Generation과 Feature Generation 두 방법으로 나뉜다.
Structure Generation 방식은 원래 구조에 마스킹/드롭아웃 기반의 증강 연산자를 적용하여 해당 구조의 손상된 버전을 얻는다.
시퀀스 기반 추천의 시나리오에서 구조를 복구하는 것은 다음과 같다.
는 일부 아이템이 마스킹되어 있는(토큰 [mask]으로 대체) 손상된 시퀀스를 나타낸다.
Feature Generation은 회귀 문제로 이해될 수 있으며 다음과 같다.
는 평균 제곱 오차 손싱을 나타내며, 는 사용자 프로필 속성, 아이템 텍스트 특성 또는 학습된 사용자/아이템 표현과 같은 일반적인 특성을 나타내는 기호이다.
Contrastive 및 Generative 방법이 주로 정적인 증강 연산자에 의존하는 것과 비교하여, Predictive 방법은 더 동적이고 유연한 방식으로 샘플과 의사 레이블을 얻는다.
샘플은 진화하는 모델 매개변수를 기반으로 예측되며, 이는 자체 지도 신호를 정제하고 최적화 목표와 일치시켜 추천 성능을 향상시킬 수 있다.
Predictive 접근 방식은 sample-based 방식과 Pseudo-label 기반 방식으로 나뉜다.
Sample prediction은 semi-supervised learning의 한 유형으로 self-supervised learning과 관련이 있다.
self-supervised learning 모델은 원본 데이터에서 사전 훈련되며, 추천 작업을 위한 잠재적으로 유용한 샘플은 사전 훈련된 매개변수를 사용하여 증강된 데이터로 예측된다.
semi-supervised learning 기반의 샘플 예측과 self-supervised learning 기반의 차이는 semi-supervised learning에서는 한정된 수의 미분류된 샘플이 사용가능한 반면, self-supervised learning에서는 샘플이 동적으로 생성된다.
Pseudo-Label Prediction은 Relation Prediction과 Similarity Prediction으로 나뉜다.
Relation Prediction은 두 개체 간의 관계를 설명하며, 해당 관계가 존재하는지를 예측한다.
관계 예측 작업은 비용 없이 자체 생성된 가상의 레이블을 사용하는 분류 문제로 볼 수 있다.
와 는 원본 데이터 에서 가져온 두 객체의 쌍이며, 는 클래스 레이블 생성기이다.
Similarity Predcition은 사전 계산/학습된 연속값이 모델의 출력이 근사화해야 하는 대상으로 작용하는 회귀 문제로 제시될 수 있다.
Hybrid 방법은 다양한 self-supervised 신호를 활용하가 위해 여러 유형의 pretext task를 조합한다.
이러한 방식은 Collaborative self-supervision과 Parallel self-supervision으로 나뉜다.
Collaborative self-supervision은 종합적인 self-supervised 신호를 얻기 위해 여러 self-supervised 작업이 협력하여 대조적인 작업을 강화한다.
이를 통해 더 많은 정보를 제공하는 샘플을 생성한다.
Parallel self-supervision은 서로 다른 self-supervision task 간에 상관 관계가 없으며, 이들은 병렬로 작동한다.
여러 범주의 데이터 증강 기법 및 대표적인 self-supervised learning 모델들에 대한 비교 분석이 수행되었다.
엄격하고 의미있는 공정한 비교를 위해 백본으로 Light-GCN을 사용하는 그래프 기반 모델과 Transformer를 백본으로 사용하는 순차 모델이 선택되었다.
self-supervised learning 중 Contrastive 방식은 구조 수준, 특성 수준 및 모델 수준의 방법을 포함하여 다양한 데이터 증강 정근법이 있다.
다음 표의 결과를 기반으로 몇 가지 결론을 도출했다.
self-supervised learning에서 가장 효과적인 패러다임을 식별하기 위해 그래프 및 순차적 시나리오에서 여러 인기 있는 모델을 비교했다.
다음 표의 결과를 기반으로 몇 가지 결론을 도출했다.
본 서베이 논문은 추천에 적용되는 Self-Supervised Learning을 정의하고 분류함으로써 체계적으로 접근할 수 있도록 도와주었다.
Self-Supervised Learning 방법론 중 Contrastive Learning 방식이 그래프에서 효과적인 성능 개선을 보인다는 실험 결과는 23년 진행한 여러 학회에서 관련된 논문들이 많이 출간된 이유를 뒷받침해주는 것 같아 이에 대한 모델을 공부하고싶다는 생각이 든다.