AI Sparkup

복잡한 AI 세상을 읽는 힘

넷플릭스의 혁신: 기초 모델 기반 개인화 추천 시스템의 미래

300백만 명이 넘는 사용자, 수십억 개의 상호작용 데이터, 그리고 끊임없이 진화하는 콘텐츠 카탈로그. 넷플릭스는 어떻게 이 방대한 데이터를 활용해 더 정확하고 개인화된 추천 시스템을 구축했을까요? 최근 넷플릭스 기술 블로그에서 공개한 기초 모델(Foundation Model) 기반 추천 시스템의 비밀을 살펴보겠습니다.

추천 시스템의 새로운 패러다임

넷플릭스의 기존 추천 시스템은 ‘계속 보기’, ‘오늘의 추천’ 등 다양한 목적에 특화된 여러 개의 기계 학습 모델로 구성되어 있었습니다. 이런 시스템은 각각의 요구사항에 맞게 최적화되어 있지만, 다음과 같은 한계점이 있었습니다:

  1. 유지 관리 비용 증가: 비즈니스 요구사항이 늘어날수록 더 많은 모델이 필요했고, 시스템 유지 관리가 복잡해졌습니다.
  2. 혁신의 어려움: 각 모델이 독립적으로 학습되어 한 모델의 혁신을 다른 모델로 쉽게 전달할 수 없었습니다.
  3. 제한된 시간 범위: 대부분의 모델은 서비스 지연 시간이나 학습 비용 때문에 최근 상호작용 기록만을 활용했습니다.

 그림 1: 사용자 상호작용 기록의 토큰화 과정. 동일한 콘텐츠에 대한 행동을 병합하면서 중요한 정보는 보존합니다.

이러한 문제를 해결하기 위해 넷플릭스는 자연어 처리 분야에서 큰 성공을 거둔 대규모 언어 모델(LLM)에서 영감을 받아 추천 시스템을 위한 기초 모델을 개발했습니다. 이 접근 방식은 다음과 같은 두 가지 핵심 통찰을 바탕으로 합니다:

  1. 데이터 중심 접근법: 특성 공학에 의존하는 모델 중심 전략에서, 대규모의 고품질 데이터 활용과 가능한 경우 end-to-end 학습을 우선시하는 데이터 중심 접근법으로 전환했습니다.
  2. 준지도 학습 활용: LLM에서 효과적으로 입증된 ‘다음 토큰 예측’이라는 학습 목표를 도입했습니다. 이 방식은 레이블이 없는 대규모 데이터에서도 준지도 학습을 가능하게 합니다.

사용자 상호작용 데이터를 ‘토큰화’하는 방법

넷플릭스의 3억 명 이상의 사용자가 만들어내는 수천억 개의 상호작용 데이터는 LLM이 사용하는 토큰 볼륨과 비슷한 규모입니다. 그러나 단순한 데이터의 양보다 질이 더 중요합니다. 넷플릭스는 이 데이터를 효과적으로 활용하기 위해 ‘상호작용 토큰화’라는 프로세스를 도입했습니다.

사용자 상호작용 토큰화: 모든 사용자 행동이 동일한 가치를 갖지는 않습니다. 토큰화 과정은 의미 있는 ‘토큰’이 무엇인지 정의하는 데 도움을 줍니다. 자연어 처리의 바이트 페어 인코딩(BPE)과 유사하게, 인접한 행동을 병합하여 새로운 상위 수준의 토큰을 형성할 수 있습니다. 그러나 언어 토큰화와 달리, 이러한 새 토큰을 만들 때는 어떤 정보를 유지할지 신중하게 고려해야 합니다. 예를 들어, 시청 총 시간을 합산하거나 참여 유형을 집계하여 중요한 세부 정보를 보존해야 합니다.

하지만 활발한 사용자의 상호작용 기록은 수천 개의 이벤트에 달할 수 있으며, 이는 표준 셀프 어텐션 레이어를 가진 트랜스포머 모델의 처리 능력을 초과합니다. 추천 시스템에서는 일반적으로 추론 시 수백 개의 이벤트로 컨텍스트 창이 제한됩니다. 이는 모델 능력의 한계가 아니라, 이러한 서비스가 일반적으로 밀리초 수준의 지연 시간을 요구하기 때문입니다.

이 문제를 해결하기 위해 넷플릭스는 두 가지 핵심 솔루션을 구현했습니다:

  1. 희소 어텐션 메커니즘: 저랭크 압축과 같은 희소 어텐션 기술을 활용하여 컨텍스트 창을 수백 개의 이벤트로 확장하면서도 계산 효율성을 유지했습니다.
  2. 슬라이딩 윈도우 샘플링: 학습 중에는 전체 시퀀스에서 중복되는 상호작용 윈도우를 샘플링합니다. 이를 통해 모델은 여러 에포크에 걸쳐 사용자 기록의 다른 세그먼트에 노출되어 비현실적으로 큰 컨텍스트 창 없이도 전체 시퀀스에서 학습할 수 있습니다.

추론 시에는 다단계 디코딩이 필요할 때 KV 캐싱을 활용하여 과거 계산을 효율적으로 재사용하고 낮은 지연 시간을 유지합니다.

각 ‘토큰’에 담긴 정보

토큰화 과정의 첫 번째 부분이 상호작용 시퀀스를 구성하는 데 중점을 둔다면, 다음 중요한 단계는 각 토큰 내에 포함된 풍부한 정보를 정의하는 것입니다. LLM과 달리, 넷플릭스의 상호작용 이벤트는 다양한 정보를 포함하고 있습니다. 여기에는 행동 자체의 속성(지역, 시간, 지속 시간, 기기 유형 등)과 콘텐츠에 대한 정보(항목 ID, 장르, 출시 국가 등의 메타데이터)가 포함됩니다.

이러한 특성들의 대부분, 특히 범주형 특성들은 end-to-end 학습 접근법을 채택하여 모델 내에 직접 임베딩됩니다. 그러나 일부 특성들은 특별한 주의가 필요합니다. 예를 들어, 타임스탬프는 절대적 및 상대적 시간 개념을 모두 캡처하기 위해 추가 처리가 필요하며, 특히 절대 시간은 시간에 민감한 행동을 이해하는 데 중요합니다.

메타데이터 기반 임베딩 그림 2: 콘텐츠는 장르, 스토리라인, 톤 등 다양한 메타데이터와 연결됩니다. 각 유형의 메타데이터는 해당 임베딩을 평균화하여 표현될 수 있으며, 이를 연결하여 콘텐츠의 전체 메타데이터 기반 임베딩을 형성합니다.

순차적 추천 시스템의 예측 정확도를 향상시키기 위해, 넷플릭스는 토큰 특성을 두 가지 범주로 구성합니다:

  1. 요청 시점 특성: 예측 시점에 사용 가능한 특성(로그인 시간, 기기, 위치 등)
  2. 행동 후 특성: 상호작용이 발생한 후 사용 가능한 세부 정보(상호작용한 특정 콘텐츠, 상호작용 지속 시간 등)

다음 상호작용을 예측하기 위해, 현재 단계의 요청 시점 특성과 이전 단계의 행동 후 특성을 결합합니다. 이렇게 상황적 정보와 역사적 정보를 혼합함으로써 시퀀스의 각 토큰이 즉각적인 상황과 시간에 따른 사용자 행동 패턴을 모두 캡처하는 포괄적인 표현을 갖도록 합니다.

모델 목표와 아키텍처를 위한 고려사항

넷플릭스의 기본 접근 방식은 GPT와 유사한 자기회귀(autoregressive) 다음 토큰 예측 목표를 사용합니다. 이 전략은 레이블이 없는 방대한 사용자 상호작용 데이터를 효과적으로 활용합니다. 그러나 언어 작업과 추천 작업 간의 뚜렷한 차이를 고려하여, 이 목표에 몇 가지 중요한 수정을 가했습니다:

  1. 일반적인 LLM의 사전 학습 단계에서는 모든 대상 토큰이 동일한 가중치로 처리되는 반면, 넷플릭스 모델에서는 모든 사용자 상호작용이 동일한 중요도를 갖지 않습니다. 예를 들어, 5분짜리 예고편 시청과 2시간짜리 영화 전체 시청은 동일한 가중치를 가져서는 안 됩니다. 더 큰 도전은 장기적인 사용자 만족도를 특정 상호작용 및 추천과 일치시키는 것입니다. 이를 해결하기 위해, 학습 중에 다중 토큰 예측 목표를 채택할 수 있습니다. 이 접근법은 모델이 장기적인 의존성을 캡처하고 즉각적인 다음 이벤트에만 초점을 맞춘 근시안적 예측을 피하도록 장려합니다.
  2. 다음 항목 ID 예측이 주요 목표로 남아있지만, 입력 데이터의 여러 필드를 보조 예측 목표로 사용할 수 있습니다. 예를 들어, 원래 시퀀스의 항목에서 장르를 추출하고 이 장르 시퀀스를 보조 목표로 사용할 수 있습니다. 이 접근법은 여러 목적을 제공합니다: 노이즈가 많은 항목 ID 예측에 대한 과적합을 줄이는 정규화 역할을 하고, 사용자 의도나 장기 장르 선호도에 대한 추가 통찰력을 제공하며, 계층적으로 구성했을 때 대상 항목 ID 예측의 정확도를 향상시킬 수 있습니다. 장르나 원어와 같은 보조 목표를 먼저 예측함으로써, 모델은 효과적으로 후보 목록을 좁혀 후속 항목 ID 예측을 단순화합니다.

추천 기초 모델의 고유한 도전 과제

기초 모델을 구축할 때 일반적으로 겪는 인프라 도전 과제 외에도, 추천 시스템에는 몇 가지 고유한 장애물이 있습니다. 그 중 하나는 ‘엔티티 콜드 스타트’ 문제입니다.

넷플릭스의 사명은 전 세계를 즐겁게 하는 것입니다. 새로운 콘텐츠가 카탈로그에 자주 추가되므로, 추천 기초 모델은 콜드 스타트 기능이 필요합니다. 이는 모델이 새로 출시된 콘텐츠에 대한 사용자 선호도를 누구도 그것에 참여하기 전에 추정할 수 있어야 함을 의미합니다. 이를 가능하게 하기 위해, 넷플릭스의 기초 모델 학습 프레임워크는 다음과 같은 두 가지 기능을 갖추고 있습니다:

  1. 점진적 학습: 기초 모델은 모든 사용자의 시청 및 행동 기록을 포함한 방대한 데이터셋에서 학습됩니다. 이러한 모델을 자주 재학습하는 것은 비현실적입니다. 그러나 넷플릭스의 카탈로그와 사용자 선호도는 지속적으로 진화합니다. 안정적인 토큰 어휘를 가진 대규모 언어 모델과 달리, 추천 모델은 새로운 콘텐츠에 대한 새로운 임베딩이 필요하며, 이는 확장된 임베딩 레이어와 출력 구성 요소를 필요로 합니다. 이를 해결하기 위해, 이전 모델의 매개변수를 재사용하고 새로운 콘텐츠에 대한 새 매개변수를 초기화하여 새 모델을 웜 스타트합니다. 예를 들어, 새 콘텐츠 임베딩은 기존 평균 임베딩에 약간의 랜덤 노이즈를 추가하거나 메타데이터를 기반으로 유사한 콘텐츠의 임베딩을 가중 조합하여 초기화할 수 있습니다. 이 접근법은 새 콘텐츠가 관련 임베딩으로 시작하여 더 빠른 미세 조정을 가능하게 합니다. 실제로, 더 많은 사용자 상호작용 데이터가 미세 조정에 사용될 때 초기화 방법의 중요성은 줄어듭니다.
  2. 보이지 않는 엔티티 처리: 점진적 학습을 통해서도 새로운 엔티티(예: 새로 출시된 콘텐츠)에 대해 효율적으로 학습하는 것이 항상 보장되지는 않습니다. 또한 기초 모델을 자주 미세 조정하더라도 학습 데이터에 포함/보이지 않는 새로운 엔티티가 있을 수 있습니다. 따라서 기초 모델이 사용자 상호작용 데이터뿐만 아니라 엔티티와 입력의 메타데이터 정보도 사용하도록 하는 것이 중요합니다. 따라서 넷플릭스의 기초 모델은 학습 가능한 항목 ID 임베딩과 메타데이터에서 학습 가능한 임베딩을 모두 결합합니다.

최종 콘텐츠 임베딩을 만들기 위해, 이 메타데이터 기반 임베딩과 완전히 학습 가능한 ID 기반 임베딩을 믹싱 레이어를 사용하여 결합합니다. 이러한 임베딩을 단순히 합산하는 대신, 엔티티의 “나이”를 기반으로 한 어텐션 메커니즘을 사용합니다. 이 접근법은 상호작용 데이터가 제한된 새 콘텐츠가 메타데이터에 더 많이 의존하도록 하고, 확립된 콘텐츠는 ID 기반 임베딩에 더 많이 의존할 수 있게 합니다. 유사한 메타데이터를 가진 콘텐츠도 사용자 참여가 다를 수 있으므로, 그들의 임베딩은 이러한 차이를 반영해야 합니다. 학습 중 약간의 무작위성을 도입하면 모델이 ID 임베딩에만 의존하지 않고 메타데이터에서 학습하도록 장려합니다. 이 방법은 새로 출시되거나 출시 전 콘텐츠가 사용자 상호작용 데이터가 없더라도 합리적인 임베딩을 갖도록 보장합니다.

확장 법칙의 증명

넷플릭스의 추천 기초 모델 확장에서, 대규모 언어 모델(LLM)의 성공에서 영감을 얻었습니다. LLM이 성능 향상에 있어 확장의 힘을 입증한 것처럼, 생성형 추천 작업의 향상에도 확장이 매우 중요함을 발견했습니다. 성공적인 확장은 강력한 평가, 효율적인 학습 알고리즘, 그리고 상당한 컴퓨팅 자원을 요구합니다.

모델 파라미터 크기와 성능 향상 그림 3: 모델 파라미터 크기와 상대적 성능 향상 관계. 이 그래프는 추천 모델링에서의 확장 법칙을 보여주며, 더 큰 모델 크기에서 성능이 증가하는 추세를 나타냅니다. x축은 서로 다른 크기에 걸친 성장을 강조하기 위해 로그 스케일로 표시되었습니다.

평가는 모델 성능을 효과적으로 구별하고 개선 영역을 식별해야 합니다. 확장에는 데이터, 모델, 컨텍스트 확장이 포함되며, 사용자 참여, 외부 리뷰, 멀티미디어 자산, 고품질 임베딩이 통합됩니다. 실험 결과, 확장 법칙이 넷플릭스의 기초 모델에도 적용되어, 데이터와 모델 크기를 증가시킴에 따라 일관된 개선이 관찰되었습니다.

결론: 넷플릭스 추천 시스템의 미래

넷플릭스의 개인화 추천을 위한 기초 모델은 대규모 데이터를 활용하여 사용자에게 더 질 높은 추천을 제공하는 통합된, 데이터 중심 시스템을 만드는 중요한 진전을 나타냅니다. 이 접근법은 준지도 학습과 end-to-end 학습의 원칙을 중심으로 대규모 언어 모델(LLM)에서 통찰력을 차용하여, 레이블이 없는 방대한 사용자 상호작용 데이터를 활용하는 것을 목표로 합니다.

콜드 스타트와 같은 고유한 도전 과제를 해결하며, 이 모델은 언어 작업과 추천 작업 간의 뚜렷한 차이도 인정합니다. 기초 모델은 직접적인 예측 모델로서의 사용부터 다른 애플리케이션을 위한 사용자 및 엔티티 임베딩 생성, 그리고 특정 화면에 맞게 미세 조정될 수 있는 다양한 다운스트림 애플리케이션을 가능하게 합니다.

다운스트림 통합에서 유망한 결과를 보여주고 있으며, 이 여러 특화된 모델에서 보다 포괄적인 시스템으로의 전환은 개인화된 추천 시스템 분야에서 흥미로운 발전을 의미합니다. 넷플릭스 뿐만 아니라 다양한 분야에서 적용 가능한 이 접근법은 개인화된 경험을 향상시키는 데 중요한 역할을 할 것입니다.


참고자료


Awsom GPT에서 더 알아보기

구독을 신청하면 최신 게시물을 이메일로 받아볼 수 있습니다.

Comments

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다