250103 TIL #580 AI Tech #112 Graph-based Recommendation

김춘복·2025년 1월 3일
0

TIL : Today I Learned

목록 보기
582/604

Today I Learned

오늘부터 일주일 간은 최종 프로젝트 직전, recsys의 최신 트렌드에 대해 배운다.
오늘 배운 내용은 그래프 기반 추천!


Graph-based Recommendation

GCN in RecSys

추천 시스템에서의 Graph Convolutional Network(GCN)은 사용자-아이템 간의 상호작용을 그래프 구조로 모델링하여 더 효과적인 추천을 수행하는 방법이다.

이미지 출처 : IA-GCN: Interactive Graph Convolutional Network for Recommendation

  • 이분 그래프(bipartite graph)
    사용자와 아이템을 노드로, 상호작용을 엣지로 표현해 사용자-아이템 간의 엣지만 존재한다.

  • edge(간선)에는 weight가 있을수도 없을수도 있다.

  • 작동 방식
    이웃 노드들의 정보를 집계해 각 노드의 임베딩을 업데이트 (message-passing)
    여러 계층의 그래프 합성곱을 통해 고차원적인 상호작용 패턴을 학습
    최종적으로 사용자-아이템 간의 선호도를 예측

  • NGCF와 LightGCN에 대한 설명은 TIL #531 참고.


Advanced GCN

DGCF

이미지 출처 : 논문

  • 그래프기반 CF의 발전된 모델로 사용자의 다양한 의도(intent)를 파악하여 더 정교한 추천을 제공하는 시스템이다.

  • Intent (의도) : 유저가 아이템을 선택하는 이유
    ex) 선물용, 킬링타임, 장르선호, 배우선호, 클릭실수 등

  • Disentangled Representations
    K개 intent에 대해 각각 그래프를 만들어 서로 다른 user representations을 생성
    원본 그래프를 여러 개의 의도 채널로 분리하는데, 각 채널은 서로 다른 관점의 사용자-아이템 관계를 표현한다.

  • 각 intent 채널에서 독립적으로 메시지를 전파해 이웃 노드의 정보를 수집해서 임베딩을 업데이트한다. 최종적으로는 모든 intent 채널의 정보를 종합해 최종 추천 점수를 계산한다.

  • 학습과정에서 dCor(distance correlation) loss를 적용해서 각각의 intent가 서로 달라지도록 한다. 이걸 하지 않으면 intent 하나만 dominant 해지기 때문에 적용한다.

  • 논문 상에선 intent의 수 k가 4일때 성능이 가장 좋았다.

  • 장점
    복잡한 유저의 선호도를 더 잘 표현할 수 있고 설명력이 높다.
    같은 아이템이라도 다른 이유로 추천할 수 있다.
    유저별로 중요한 intent가 다르게 학습되어 좀 더 개인화된 추천이 가능하다.


SGL

이미지 출처 : 논문

  • LightGCN 기반의 기존 지도학습에 자기 지도 학습을 추가한 모델

  • 등장 배경
    추천 data는 log 기반이므로 sparse하며, 충분하지 못하다.
    특히 GCN은 메시지 전달로 훈련되기 때문에 history(소비 이력)이 적으면 성능이 떨어진다.
    그리고 misclick같은 noise에 매우 취약하다.

  • Data Augmentation
    각 노드에대한 여러 view를 생성해 부족한 데이터 보충
    Node Dropout(ND, 일정 확률로 노드 제거), Edge Dropout(ED, 일정 확률로 간선 제거), Random Walk(RW, 매 레이어마다 다르게 ED)

  • Contrastive Learning : 대조학습.
    동일한 노드에서 파생된 다른 뷰 간의 일치(alignment)를 최대화하여 다른 노드와 비교
    같은 노드의 다른 view는 pos, 다른노드의 view는 neg하게 optimize

  • 학습과정
    증강된 두 개의 그래프 뷰를 생성
    동일한 노드에서 나온 두 뷰의 표현 간 유사성을 최대화
    다른 노드에서 나온 표현들과의 차이는 최대화

  • 데이터 희소성 문제를 해결하고, longtail 아이템에서도 성능적으로 우수하며, noise에 robust한 모델이지만, 최근 연구에서는 그래프 증강 없이 단순한 노이즈 추가만으로 비슷한 성능이 나온다는 것이 밝혀져 효율적인 모델 구조가 나오고 있다.


HCCF

  • Hypergraph Contrastive Collaborative Filtering (2022)

  • 하이퍼그래프와 대조 학습을 결합한 새로운 자기 지도 학습 기반의 추천 시스템 모델

  • over-smoothing 문제
    기존 그래프 기반모델에서 나타나는 문제로 layer가 깊어질수록 item과 user representation 구분이 어려워 성능이 저하된다. 층을 깊게 쌓으니 노드들이 다 연결되어 임베딩이 다 비슷비슷해짐. layer 4단만 넘어가도 성능저하.

  • Local Collaborative Relation Encoding
    LightGCN과 거의 비슷. 다만 nonlinear activation으로 LeakyRelu 사용하고 self-connection만 사용. layer가 가까운(1~2, local) 부분에 적용

  • Hypergraph Floval Dependency Learning
    Hypergraph는 한 edge에 여러 노드가 동시에 연결될 수 있는 그래프
    파라미터화된 하이퍼그래프 구조를 통해 GNN 기반 협업 필터링의 식별 능력을 향상

profile
Backend Dev / Data Engineer

0개의 댓글