모든 RecSys 문제들이 동등하게 만들어진 것은 아니다
Source: Towards Data Science
위에 제공된 소스 링크 아래에 번역하고자 하는 텍스트를 알려주시면, 해당 내용을 한국어로 번역해 드리겠습니다.
Source: …
후보 생성
대부분의 추천 시스템은 후보‑생성 단계로 시작하여 수백만 개의 가능한 아이템을 나중에 재‑정렬하기 위한 관리 가능한 집합으로 축소합니다.
핵심 인사이트: 후보 생성은 흔히 생각하는 것처럼 항상 어려운 과제는 아니며, 반드시 머신러닝을 필요로 하는 것도 아닙니다.
-
하드‑필터 기반 상황 – 범위가 명확히 정의된 경우, 간단한 필터만으로도 카탈로그를 크게 줄일 수 있습니다.
- 예시: Booking.com – “바르셀로나, 9월 12‑15일, 4성급 호텔”과 같은 쿼리는 지리적 위치와 가용성을 기준으로 수백만 개의 숙소를 몇 백 개로 좁혀줍니다. 실제 ML 과제는 그 호텔들을 정밀하게 순위 매기기 하는 것입니다.
-
소프트‑필터 또는 개방형 상황 – 강력한 제약 조건이 없으므로, 시스템은 의미적 의도나 과거 행동에 의존해 재‑정렬이 이루어지기 전에 방대한 카탈로그에서 관련 후보를 찾아야 합니다.
- 예시: Amazon 제품 검색, YouTube 메인 페이지.
Source:
재정렬 복잡도
재정렬은 아래 이미지와 같이 두 개의 직교 차원으로 이해할 수 있습니다:
- 관찰 가능한 결과 및 카탈로그 안정성 – 기준선을 얼마나 강하게 설정할 수 있는지를 결정합니다.
- 선호도의 주관성 및 학습 가능성 – 개인화 솔루션이 얼마나 복잡해야 하는지를 결정합니다.
| 차원 | 모델에 의미하는 바 |
|---|---|
| 관찰 가능한 결과 | 클릭, 구매와 같이 명확하고 빈번한 신호가 있으면, 더 간단한 모델로도 견고한 기준선을 구축할 수 있습니다. |
| 카탈로그 안정성 | 호텔, 영화와 같이 안정적인 카탈로그는 많은 특징을 사전 계산할 수 있게 해 줍니다; 뉴스 기사처럼 빠르게 변하는 카탈로그는 동적 방법이 필요합니다. |
| 주관성 | 음악 취향처럼 매우 주관적인 영역은 풍부한 사용자 표현과 딥러닝 아키텍처가 필요할 수 있습니다. |
| 학습 가능성 | 과거 행동으로 선호도를 쉽게 추론할 수 있으면 얕은 모델로 충분할 수 있지만, 그렇지 않다면 보다 표현력이 강한 모델이 필요합니다. |
시각적 요약

주요 내용
- 대부분의 RecSys 작업은 표형 데이터, gradient‑boosted trees를 사용하며, 후보 생성(대부분 규칙 기반)과 재정렬 사이에 명확한 구분이 있습니다.
- 산업 대기업은 하이브리드 딥러닝 파이프라인으로 한계를 넓히지만, 하드 필터가 거의 없고 카탈로그가 방대하고 유동적인 영역에서 활동합니다.
- 두 차원 프레임워크를 사용해 문제의 위치를 스펙트럼 상에서 평가하고, 적절한 모델 복잡도 수준을 선택하세요.
모델링 즐겁게!
관찰 가능한 결과와 카탈로그 안정성
직접 관찰 가능한 결과
가장 중요한 결과를 직접 관찰할 수 있는 기업은 강력하고 신뢰할 수 있는 기준선을 가지고 있습니다.
- 예시: IKEA는 각 구매가 명확한 신호이기 때문에 어떤 소파가 더 잘 팔리는지 정확히 알고 있습니다 (예: ESKILSTUNA와 KIVIK).
- 사용자가 “지갑으로 투표”하면, 회사는 이러한 신호들을 집계하여 제품을 자신 있게 순위 매길 수 있습니다.
“사용자가 지갑으로 투표하는 것을 직접 관찰할 수 있다면, 이길 수 없는 강력한 기준선을 갖게 됩니다.”
간접 또는 상위 퍼널 신호
최종 전환을 볼 수 없는 플랫폼은 더 약한 상위 퍼널 신호에 의존하게 되며, 이는 포지션 바이어스를 초래합니다:
| 플랫폼 | 관찰 가능한 신호 | 제한 사항 |
|---|---|---|
| Tinder / Bumble | 매치 | 쌍이 실제로 “잘 맞는지”에 대한 통찰이 없음. |
| Yelp / Google Maps | 클릭 | 사용자가 실제로 식당을 방문했는지 보장할 수 없으며, 클릭은 위치에 의해 좌우됩니다. |
| Other engines | 노출 / 클릭 | 가시성이 높은 아이템은 실제 품질과 관계없이 더 많은 상호작용을 얻습니다. |
- 사용자는 Yelp에서 가장 위에 표시된 첫 번째 식당을 단순히 상단에 나타나기 때문에 클릭할 수 있으며, 최선의 선택이라서가 아닙니다.
- 명확한 전환 이벤트가 없으면 신뢰할 수 있는 리더보드를 잃게 되고, 시끄럽고 약한 데이터에서 신호를 추출해야 합니다.
전형적인 우회 방법(예: 리뷰)은 주된 신호로 사용하기엔 너무 드물어, 팀이 순위 휴리스틱에 대한 무한 실험을 진행하고 품질에 대한 프록시를 지속적으로 조정하도록 강요합니다.
고이탈 카탈로그
결과를 관찰할 수 있더라도, 고이탈 카탈로그는 견고한 리더보드를 만들기에 충분한 데이터를 축적하는 것을 방해할 수 있습니다.
- Zillow(부동산)와 Vinted(중고) 목록은 종종 재고가 1개이며 판매되는 순간 사라집니다.
- 빠른 회전율은 이러한 플랫폼을 “최신순” 또는 “제곱미터당 최저가”와 같은 단순 정렬로 몰아넣으며, 이는 전환 기반 순위보다 훨씬 약합니다.
필요한 것
- 전환 확률을 즉시 추정하는 예측 ML 모델.
- 내재된 아이템 속성(크기, 위치, 가격 등)과 편향을 제거한 단기 성과 지표를 결합합니다.
- 가장 높은 잠재력을 가진 인벤토리를 사라지기 전에 노출시켜, 변동성이 큰 카탈로그를 예측 가능한 수익 원천으로 전환합니다.
Source: …
기능 기반 모델의 보편성
카탈로그 안정성이나 신호 강도와 관계없이 핵심 과제는 동일합니다: 사용 가능한 어떤 베이스라인보다 개선하는 것. 이는 일반적으로 특정 상황에서 참여 또는 전환 확률을 예측하도록 머신러닝(ML) 모델을 학습시켜 달성합니다.
Gradient‑boosted trees (GBDTs)는 실용적인 선택입니다—딥러닝 대안보다 학습 및 튜닝 속도가 훨씬 빠릅니다.
GBDT 작동 방식
GBDT는 엔지니어링된 아이템 특징(제품을 설명하는 범주형 및 수치형 속성)으로 결과를 예측합니다. 개별 사용자의 선호도가 알려지기 전에도, GBDT는 다음과 같은 기본 사용자 특징을 활용해 추천을 조정할 수 있습니다:
- Country (국가)
- Device type (디바이스 유형)
이러한 아이템 및 사용자 특징만으로도 ML 모델은 베이스라인을 능가할 수 있습니다—예를 들어 인기 순위 보정이나 높은 이탈률 피드 순위 매김 등.
예시: 패션 이커머스에서는 모델이 위치와 계절을 사용해 계절에 맞는 아이템을 노출하고, 동시에 국가와 디바이스를 활용해 가격대를 보정합니다.
포지션 바이어스 극복
이러한 특징을 통해 모델은 진정한 품질과 단순 가시성을 구분할 수 있습니다. 내재된 속성이 전환을 이끄는지를 학습함으로써, 인기 베이스라인에 내재된 포지션 바이어스를 보정합니다. 모델은 단순히 상위에 배치된 아이템이 아니라, 실질적인 성과를 보이는 아이템을 추천하도록 학습합니다.
주의: 과도한 보정은 검증된 승자를 지나치게 낮출 수 있어 사용자 경험을 저하시킬 위험이 있습니다.
기능 기반 모델을 활용한 개인화
일반적인 인식과 달리, 기능 기반 모델도 충분한 의미 정보를 담고 있다면 개인화를 구현할 수 있습니다. Booking.com과 Yelp 같은 플랫폼은 풍부한 설명, 다수의 사진, 사용자 리뷰를 축적합니다. 이러한 데이터는 시맨틱 임베딩으로 인코딩되어 특징으로 활용될 수 있습니다:
- 각 아이템에 대한 임베딩을 계산합니다.
- 사용자의 최근 상호작용과 후보 아이템 간 유사도 점수를 도출합니다.
- 해당 유사도 점수를 추가 특징으로 GBDT에 입력합니다.
한계
- 기능 기반 모델은 최근 상호작용과의 유사성을 기반으로 추천할 수 있지만, 협업 필터링이 하는 것처럼 유사한 사용자가 선호하는 아이템을 직접 학습하지는 못합니다.
- 협업 신호를 포착하려면 아이템 유사도 점수를 입력 특징으로 제공해야 합니다.
이 한계가 중요한지는 보다 근본적인 질문에 달려 있습니다: 사용자 간 의견 차이가 얼마나 큰가? 선호도가 크게 다르면 명시적인 협업 신호가 없을 경우 병목이 될 수 있지만, 그렇지 않다면 잘 설계된 기능 기반 GBDT는 빠르고 효과적일 수 있습니다.
Source: …
주관성
모든 분야가 똑같이 개인적이거나 논란이 되는 것은 아닙니다. 일부 분야에서는 기본적인 제약 조건만 만족하면 좋은 제품이 무엇인지에 대해 사용자들의 의견이 대체로 일치합니다. 우리는 이를 수렴된 선호(convergent preferences) 라고 부르며, 차트의 하반부에 해당합니다.
수렴된 선호
-
Booking.com – 여행자는 예산과 위치 선호도가 다를 수 있지만, 필터와 지도 상호작용을 통해 이러한 조건이 드러나면 평가 기준은 수렴합니다:
- 높은 가격 → 나쁨
- 더 많은 편의시설 → 좋음
- 더 좋은 리뷰 → 더 좋음
-
Staples – 사용자가 프린터 용지나 AA 배터리를 필요로 할 때는 브랜드와 가격이 주를 이루어, 선호도가 매우 일관됩니다.
파편화된(주관적인) 선호
차트의 반대 극단, 즉 상반부에 해당하는 분야는 취향이 매우 파편화된 영역입니다.
- Spotify – 한 사용자의 최애 트랙이 다른 사용자에게는 바로 건너뛰게 만드는 곡일 수 있습니다.
- 데이터 어딘가에 당신과 정확히 같은 파장을 타는 사용자가 존재합니다.
- 머신러닝이 그 차이를 메워 어제 그들의 발견을 오늘 당신에게 추천합니다.
이러한 경우 개인화의 가치가 막대하며, 필요한 기술적 투자 역시 크게 증가합니다.
올바른 데이터
주관적인 취향은 관찰할 충분한 데이터가 있을 때만 실행 가능하다.
많은 분야에서 서로 다른 선호도가 존재하지만 이를 포착할 피드백 루프가 부족합니다. 예시:
| 도메인 | 도전 과제 | 일반적인 대체 지표 |
|---|---|---|
| 틈새 콘텐츠 플랫폼 / 신규 마켓플레이스 / B2B | 다양한 취향이 존재하지만 상호작용 데이터가 희박함 | 제한적이거나 노이즈가 많은 신호 |
| Yelp (restaurant recommendations) | 선호도는 주관적이지만 클릭만 확인됩니다 | 클릭률(CTR) – 오해를 불러일으킬 수 있음 |
| YouTube (dense behavioral data) | 매일 수십억 건의 상호작용이 풍부한 신호를 제공합니다 | 시청 시간, 좋아요, 공유 – 딥러닝 기반 개인화 가능 |
밀집된 행동 데이터가 존재할 때, 개인화를 하지 않으면 기회를 놓치게 됩니다. 대규모 팀이 Jira를 통해 협업하고, 클라우드 비용이 VP 승인을 필요로 하며, 딥러닝 파이프라인이 불가피해지는 모습을 보게 될 것입니다. 그 복잡성이 정당한지는 전적으로 보유한 데이터의 품질과 양에 달려 있습니다.
현재 위치 파악
문제가 이 스펙트럼에서 어디에 놓이는지를 이해하는 것이 최신 아키텍처를 맹목적으로 쫓는 것보다 훨씬 더 가치 있습니다. 업계의 “최첨단(state‑of‑the‑art)”은 주로 이상치에 의해 정의됩니다—방대한 주관적 인벤토리와 밀집된 사용자 데이터를 다루는 대형 기술 기업들 말이죠. 그들의 솔루션이 유명한 이유는 문제 자체가 극단적이기 때문이지, 보편적으로 옳기 때문은 아닙니다.
하지만 여러분이 실제 작업에서 마주하게 될 제약은 다를 가능성이 높습니다. 여러분의 도메인이 안정적인 카탈로그와 관측 가능한 결과로 정의된다면, IKEA와 Booking.com 같은 기업들과 함께 좌하단 사분면에 위치하게 됩니다. 여기서는 인기 기준이 너무 강력해서, 측정 가능한 A/B‑test 승리를 이끌어낼 수 있는 machine‑learning 모델을 구축하는 것이 바로 과제입니다.
반대로 Vinted와 같이 이탈률이 높거나 Yelp처럼 신호가 약한 경우, machine learning은 따라잡기 위해서라도 필수가 됩니다.
하지만 그렇다고 해서 deep learning이 필요하다는 뜻은 아닙니다. 그 추가 복잡성은 선호도가 매우 주관적이고 이를 모델링할 충분한 데이터가 있는 영역에서만 진정한 가치를 발휘합니다. 우리는 종종 Netflix나 Spotify와 같은 시스템을 금본위제로 여기지만, 이들은 드문 조건에 특화된 솔루션일 뿐입니다.
우리 대부분에게 탁월함은 가장 복잡한 아키텍처를 도입하는 것이 아니라, 환경의 제약을 정확히 인식하고 문제를 해결할 수 있는 솔루션을 자신 있게 선택하는 데 있습니다.
Images by the author.