pile·
AI / ML·마켓컬리마켓컬리 Hello World·

개인화 추천 시스템 1편 - 유저의 행동은 “언어”일까? : Collaborative Embedding 구축기 (feat. Knowledge Distillation)

커머스의 정보 과부하를 풀기 위해 상품의 언어(Content)와 유저의 취향(Collaborative)을 분리해 표현하고, 정확한 Generative Head의 지식을 빠른 Retrieval Head에 증류해 정확도-속도 트레이드오프를 해결한 추천 모델 구축기다.

핵심 포인트
  • 상품은 RQ-VAE로 텍스트를 여러 코드북으로 압축한 Semantic ID로 표현해 신규 상품도 텍스트만 있으면 즉시 추천 후보로 포함한다(Cold Start 완화).
  • 유저 행동은 공유 Encoder + Dual-Head(Generative·Retrieval) Transformer로 번역하며, Generative는 Semantic ID를 auto-regressive 생성, Retrieval은 내적 기반 ANN 고속 검색을 한다.
  • 내적(선형 초평면) 구조가 치킨+맥주→콜라 비추천 같은 비선형(XOR) 취향을 못 담아 Retrieval 성능이 낮았다(표현력 병목).
  • Knowledge Distillation으로 Generative의 log-likelihood를 KL Divergence + Listwise Loss로 증류해 Retrieval을 Teacher의 약 80% 수준까지 끌어올렸다.
  • 결과는 오프라인 HR@10 +66%, 온라인 A/B에서 ATC +32~139%·ARPU +45~140%, CRM CTR +55.6%다.
상세 정리
  • 두 공간: Content Space는 상품 속성(시리얼·우유가 멂), Collaborative Space는 함께 구매 패턴(시리얼·우유가 가까움)으로, 상품 언어의 정의 수준이 유저 행동 해석 정확도를 좌우한다.
  • Semantic ID(RQ-VAE): 텍스트를 계층적 코드북으로 압축(예: [27,12,3,8])하고, 인코더에 카테고리 예측 Auxiliary Head를 붙여 임베딩 공간을 안정화, Content Embedding으로 저장한다.
  • 기존 한계: 협업 필터링은 고정 ID·Cold Start 문제, 순차 추천은 정밀하나 추론 시 전체 Vocabulary 확률 계산으로 latency·비용이 크다.
  • Generative Head: Transformer 디코더가 Semantic ID를 순차 생성하며 auto-regressive로 치킨→콜라 추천, 치킨+맥주→콜라 비추천 같은 조건부 논리를 처리하고 세그먼트 마케팅·구매주기 예측에 쓴다.
  • Retrieval Head: 유저 임베딩과 상품 Content 임베딩을 MLP Mapping Network로 같은 Collaborative Space에 투영해 내적으로 유사도를 재고, Multi-Positive InfoNCE(대조 학습)를 쓰며 신규 상품은 Content 임베딩→Mapping으로 즉시 활용한다.
  • 표현력 병목: 내적은 선형 초평면이라 비선형 매니폴드 형태의 취향(XOR)을 담으려면 차원이 기하급수 확장돼 사실상 불가하다.
  • Knowledge Distillation: Generative의 코드별 logits를 softmax·log-likelihood로 확률화해 KL Divergence(전역 분포) + Listwise(순위)로 Retrieval에 이식하고, 반응 안 한 상품을 무조건 Negative로 보던 False Negative를 soft 정보로 완화한다.
  • 데이터 엔지니어링: 같은 주문의 상품에 동일 시점을 주는 Order Positional Encoding(동시 구매 vs 순차 구분), 빈도 역수 가중치(1/√freq)로 Popularity Bias 보정, 같은 카테고리·과거 구매 상품을 Hard Negative로 섞어 미세 속성을 학습시킨다.
  • 오프라인: 최근 1개월 데이터, HR@10·Recall@10·NDCG@10로 평가하며 Ablation에서 Retrieval 단독 대비 +Generative +Distillation으로 HR@10 +66%·Teacher의 약 80% 근접이었다.
  • 온라인 A/B(GrowthBook, 50:50, 약 1주): 세일 지면 ATC +32.2%·ARPU +44.9%, 가격 지면 ATC +138.7%·ARPU +140.1%.
  • CRM(Braze, 약 1주): App Push·In-App으로 Generative가 구매 확률 높은 상품을 생성해 룰베이스 대비 CTR +55.6%.
  • 트레이드오프: Generative는 정확·느림, Retrieval은 빠름·정확도 낮음이며 Distillation으로 빠름을 유지하면서 80% 정확도에 근접했다.
왜 읽나대규모 커머스 개인화 추천을 설계하는 ML 엔지니어에게 Semantic ID·Dual-Head·Knowledge Distillation의 모델 구조와 검증 수치 레퍼런스.
마켓컬리
마켓컬리 Hello World 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. AI / ML·LY CorporationLY Corporation·

    Grafana에서 자연어로 장애 원인을 분석하기: LLM 에이전트 기반 SRELens 개발기

    LY Corporation Home SRE 팀이 장애 분석 시 메트릭·로그·트레이스가 각각 다른 화면에 흩어져 있는 문제를 해결하기 위해 Grafana 플러그인 SRELens를 개발했다. SRELens는 LLM 에이전트가 자연어 질의를 받아 실제 관측성 데이터를 조회하고, 근거와 함께 장애 원인 후보를 정리해 주는 도구다. LGTM-P 스택(Loki·Grafana·Tempo·Mimir·Pyroscope)과 FlavaMCP 게이트웨이를 통합해 단일 채팅 인터페이스에서 멀티시그널 분석이 가능하다.

    #llm-app#mcp#observability+2