본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
공부 시작

강의 종료

강의장

학습 인증샷

학습후기
PinSAGE 핀터레스트에서 개발한 GrapgSAGE를 확장한 모델
단순 랜덤 샘플링이 아니라 random walk를 기반으로 유의미한 이웃을 선택한다.
유사한 이미지끼리 더 자주 연결되게 함으로써 더 관련도 높은 정보를 학습한다.
추론 과정에서는 효율성을 극대화하기 위해 전체 아이템 그래프 임베딩을 미리 계산해 저장해 둔다
이후 유저 임베딩만 실시간으로 계산하고, 저장된 아이템 임베딩과의 유사도만 비교하면 된다. 이로써 대규모에서도 빠른 실시간 추천이 가능해진다.
랜덤 샘플링 대신 random walk가 왜 더 좋은 효율을 보이는거지?
ramdom walk를 사용해서 그래프 구조 안의 '자주 함께 등장하는' 노드를 우선 선택하게 한다.
빈도수를 기반으로 이웃 순위를 측정한 후 다음 사위만 뽑는 방식이다.
따라서 진짜 관련있는 이웃만 서택적으로 학습에 반영하는 효과가 있다.
"추론 과정에서는 효율성을 극대화하기 위해 전체 아이템 그래프 임베딩을 미리 계산" 이게 좋은건 알겠는데 왜 다른 모델들에서는 이 방법을 사용하지 않았지?
GNN에서도 이 방법을 사용하면 쉽게 추론 속도를 높일 수 있는거 아닌가?
=>
GNN의 한계일 수도 있는 학습과 추론 모두 이웃 정보가 필요한 구조때문에
특정 노드의 임베딩을 얻으려면 항상 그 노드의 이웃 임베딩까지 동시에 계산해야 하기 때문에
이를 위해서는 그래프 전체를 캐시해야한다.
반면에 PinSAGE는 학습 시에만 이웃 정보를 통해 아이템 임베딩을 만들고 추론 시에는 미리 계산된 임베딩을 사용할 수 있다.
그렇다면 학습에만 이웃 노드를 사용하고 추론에 미리 계산된 임베딩을 사용한다면 추론은 빠르지만 성능을 얼마나 포기했지?
PinSAGE 논문 링크 : https://arxiv.org/abs/1806.01973
논문에 따르면 random walk덕에 성능이 올랐고
따라서 임베딩의 품질이 올랐다고 한다.
내 생각에는 실시간으로 추천 로직이 바뀌지 않는 서비스라면 성능이 향상되면서 추론속도도 비약적으로 향상 시킬 수 있다.
핀터레스트에서는 A/B test를 통해 사용자 참여율이 30%정도 향상되었다고 한다.
'패스트캠퍼스' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 20일차 : 30개 프로젝트로 끝내는 추천시스템 구현 초격차 패키지 강의 후기 (0) | 2025.04.20 |
|---|---|
| 패스트캠퍼스 환급챌린지 19일차 : 30개 프로젝트로 끝내는 추천시스템 구현 초격차 패키지 강의 후기 (0) | 2025.04.19 |
| 패스트캠퍼스 환급챌린지 17일차 : 30개 프로젝트로 끝내는 추천시스템 구현 초격차 패키지 강의 후기 (0) | 2025.04.17 |
| 패스트캠퍼스 환급챌린지 16일차 : 30개 프로젝트로 끝내는 추천시스템 구현 초격차 패키지 강의 후기 (0) | 2025.04.16 |
| 패스트캠퍼스 환급챌린지 15일차 : 30개 프로젝트로 끝내는 추천시스템 구현 초격차 패키지 강의 후기 (0) | 2025.04.15 |