
Foundation Model for Personalized Recommendation
수억 명의 시청 데이터가 만나는 AI 추천 시스템: 2024년 3억 명 사용자의 수천억 데이터 활용
넷플릭스가 대형언어모델(LLM)에서 영감을 얻은 추천 기반 모델을 개발해 맞춤형 콘텐츠 추천 시스템을 고도화하고 있다. 코젠 샤오(Ko-Jen Hsiao), 예수 펭(Yesu Feng), 수다르샨 람케데(Sudarshan Lamkhede)가 공동 발표한 이 연구에 따르면, 넷플릭스는 기존의 다양한 전문화된 모델들을 유지하는 대신 대규모 데이터를 활용하는 통합된 기반 모델을 구축하는 방향으로 전환하고 있다.
넷플릭스의 추천 시스템은 '계속 보기'나 '오늘의 추천 콘텐츠' 등 다양한 기능을 위한 여러 전문화된 기계학습 모델로 구성되어 있었다. 그러나 비즈니스 요구가 증가함에 따라 개별적으로 훈련된 모델들의 유지보수 비용이 증가하고, 혁신 기술을 모델 간에 전파하기 어려운 문제가 있었다. 이에 넷플릭스는 사용자 선호도 학습을 중앙화하고, 여러 모델 간에 접근성과 활용도를 높이는 새로운 추천 시스템 아키텍처의 필요성을 인식했다.
2024년 말 기준 3억 명이 넘는 넷플릭스 사용자들의 상호작용 데이터는 대형언어모델(LLM)의 토큰 규모와 맞먹는 수천억 건의 데이터셋을 형성하고 있다. 넷플릭스는 이러한 방대한 데이터를 효과적으로 활용하기 위해 사용자 상호작용 토큰화 과정을 도입했다.
영화 시청도 '토큰화'한다: 5분 예고편과 2시간 영화는 다른 가치로 계산
넷플릭스는 대형언어모델(LLM)의 토큰화 방식에서 영감을 받아 사용자 상호작용 데이터를 토큰화하는 방식을 개발했다. 모든 사용자 행동이 동일한 가치를 갖는 것은 아니기 때문에, 의미 있는 '토큰'을 정의하고 중복을 최소화하는 과정이 중요하다.
언어 토큰화에서 바이트 페어 인코딩(Byte Pair Encoding, BPE)와 유사하게, 넷플릭스는 인접한 사용자 행동을 병합하여 새롭고 더 높은 수준의 토큰을 형성하는 방식을 채택했다. 예를 들어, 같은 영화에 대한 여러 행동을 하나의 토큰으로 병합하면서 시청 시간이나 참여 유형과 같은 중요 정보를 보존한다.
그러나 활발한 사용자의 상호작용 기록은 수천 개의 이벤트에 달할 수 있어, 표준 셀프 어텐션 레이어를 사용하는 트랜스포머 모델의 처리 용량을 초과한다. 이에 넷플릭스는 낮은 랭크 압축과 같은 희소 어텐션 메커니즘을 활용해 모델이 수백 개의 이벤트에 이르는 컨텍스트 윈도우를 확장하면서도 계산 효율성을 유지할 수 있도록 했다. 또한 훈련 중에는 전체 시퀀스에서 겹치는 상호작용 윈도우를 샘플링하는 슬라이딩 윈도우 기법을 적용했다.

오늘 공개된 신작도 추천받는 비결: AI가 메타데이터로 영화 성격 파악하는 '콜드 스타트' 기술
넷플릭스와 같은 스트리밍 서비스의 주요 도전 과제 중 하나는 신규 콘텐츠에 대한 추천, 즉 '콜드 스타트' 문제다. 새로운 콘텐츠가 출시되면 사용자 상호작용 데이터가 없는 상태에서도 추천이 이루어져야 한다.
이 문제를 해결하기 위해 넷플릭스의 기반 모델은 점진적 훈련 능력과 보지 못한 개체에 대한 추론 능력을 갖추고 있다. 점진적 훈련을 통해 모델은 이전 모델의 매개변수를 재사용하고 새 콘텐츠에 대한 새 매개변수를 초기화한다. 예를 들어, 새 콘텐츠 임베딩은 기존 평균 임베딩에 약간의 무작위 노이즈를 추가하거나 메타데이터를 기반으로 유사한 콘텐츠의 임베딩을 가중 조합하여 초기화할 수 있다.
또한 넷플릭스의 기반 모델은 사용자 상호작용 데이터뿐만 아니라 콘텐츠의 메타데이터 정보도 활용한다. 각 콘텐츠는 장르, 스토리라인, 분위기 등 다양한 메타데이터와 연결되어 있으며, 각 메타데이터 유형은 해당 임베딩을 평균화하여 표현될 수 있다. 이러한 메타데이터 기반 임베딩과 ID 기반 임베딩을 결합하여 최종 콘텐츠 임베딩을 생성한다.
하나의 AI로 다양한 추천 서비스 구현: '계속 보기'부터 '오늘의 추천'까지 모두 활용
넷플릭스의 추천 기반 모델은 장기적인 회원 선호도를 이해하고 여러 방식으로 하위 응용 프로그램에서 활용될 수 있다. 첫째, 예측 모델로 직접 사용될 수 있으며, 사용자가 다음에 상호작용할 항목을 예측하도록 훈련되었다. 여러 예측 헤드를 포함하여 다양한 장르에 대한 회원 선호도 예측과 같은 여러 작업을 수행할 수 있다.
둘째, 모델은 회원과 영화, 게임, 장르 등의 엔티티에 대한 가치 있는 임베딩을 생성한다. 이러한 임베딩은 배치 작업에서 계산되어 오프라인 및 온라인 애플리케이션에서 사용하기 위해 저장된다. 임베딩은 다른 모델의 특징으로 사용되거나 사용자에게 매력적인 콘텐츠를 검색하는 후보 생성에 활용될 수 있다.
셋째, 모델의 적응성을 통해 응용 프로그램별 데이터로 미세 조정할 수 있다. 사용자는 전체 모델이나 서브그래프를 자신의 모델에 통합하여 적은 데이터와 계산 능력으로 미세 조정할 수 있다. 이 접근법은 초기 기반 모델이 상당한 자원을 필요로 함에도 불구하고 이전 모델에 비교할 만한 성능을 달성한다.
AI도 규모가 클수록 정확해진다: 데이터와 모델 크기 늘릴수록 추천 정확도 로그 스케일로 향상
넷플릭스는 대형언어모델(LLM)의 성공에서 영감을 받아 추천 기반 모델의 확장을 진행했다. LLM과 마찬가지로, 확장이 성능 향상에 중요하다는 것을 발견했다. 성공적인 확장은 강력한 평가, 효율적인 훈련 알고리즘, 그리고 상당한 컴퓨팅 자원을 요구한다.
넷플릭스의 실험 결과, 확장 법칙이 추천 기반 모델에도 적용되어 데이터와 모델 크기를 증가시킬수록 일관된 성능 향상이 관찰되었다. 매개변수의 크기와 상대적 성능 향상 간의 관계를 로그 스케일로 나타낸 그래프에서도 이러한 경향이 명확하게 나타났다.
넷플릭스의 개인화된 추천을 위한 기반 모델은 통합되고 데이터 중심적인 시스템을 만들어 대규모 데이터를 활용하여 회원들에게 더 나은 추천을 제공하는 중요한 진전을 이루었다. 이 접근법은 대형언어모델(LLM)에서 반교사 학습과 엔드투엔드 훈련 원칙을 차용하여 방대한 규모의 레이블이 없는 사용자 상호작용 데이터를 활용하는 것을 목표로 한다.
FAQ
Q: 넷플릭스가 개발한 추천 기반 모델은 기존 추천 시스템과 어떻게 다른가요?
A: 기존 넷플릭스 추천 시스템은 각기 다른 목적을 위한 여러 개의 전문화된 모델로 구성되어 있었습니다. 새로운 추천 기반 모델은 대형언어모델(LLM)의 접근 방식을 차용하여 사용자 선호도 학습을 중앙화하고, 수억 명의 사용자 데이터를 통합적으로 활용합니다. 이를 통해 다양한 추천 서비스에 동일한 기반 모델을 활용할 수 있어 효율성과 일관성이 향상됩니다.
Q: '토큰화'란 무엇이며 넷플릭스는 이를 어떻게 활용하나요?
A: 토큰화는 대형언어모델에서 텍스트를 의미 있는 단위로 나누는 방식인데, 넷플릭스는 이 개념을 사용자 행동 데이터에 적용했습니다. 예를 들어, 같은 영화에 대한 여러 상호작용을 하나의 '토큰'으로 병합하면서 시청 시간이나 참여 유형 같은 중요 정보를 보존합니다. 이를 통해 방대한 사용자 행동 데이터를 효율적으로 처리하고 의미 있는 패턴을 포착할 수 있습니다.
Q: 넷플릭스의 '콜드 스타트' 문제 해결 방법은 무엇인가요?
A: 콜드 스타트는 신규 콘텐츠가 출시되었을 때 사용자 상호작용 데이터 없이 어떻게 추천할 것인가에 관한 문제입니다. 넷플릭스는 이를 해결하기 위해 점진적 훈련과 메타데이터 활용이라는 두 가지 접근법을 사용합니다. 점진적 훈련으로 기존 모델 매개변수를 재사용하고, 장르나 스토리라인 같은 메타데이터를 활용해 신규 콘텐츠의 임베딩을 생성합니다. 이를 통해 사용자 데이터가 없는 상태에서도 합리적인 추천이 가능해집니다.
해당 기사에서 인용한 리포트 원문은 링크에서 확인할 수 있다.
이미지 출처: 넷플릭스
기사는 클로드와 챗GPT를 활용해 작성되었습니다.
AI Matters 뉴스레터 구독하기