[Paper Review] S2GR : Stepwise Semantic-Guided Reasoning in Latent Space for Generative Recommendation (KDD 2026)

Problem Statement

image

Generative Recommendation은 아이템을 의미를 가진 Semantic ID로 변환하여 다음 상호작용할 아이템의 Semantic ID를 생성하는 태스크입니다. 추천 과정에서 순차적으로 토큰을 하나씩 생성하는 방법입니다. 예를 들어 설명하면, S1 -> S2 -> S3 식으로 순차적으로 생성하는데, S2를 생성할 때, S1까지의 정보를 반영하고, S3를 생성할 때, S2까지의 정보를 반영합니다. 해당 태스크의 Input, Output은

  • Input : 이전 상호작용 기록 아이템들의 Semantic ID
  • Output : 다음 추천할 아이템의 Semantic ID

로 설명할 수 있습니다.

다만, Generative Recommendation이 LLM의 추론 능력을 끌어내지 못해 성능 향상이 제한된다는 한계가 있는데, 이를 해결하기 위해, 최근 Generative Recommendation 논문에서는 Latent Reasoning을 결합하는 방법을 적용하고 있습니다. 여기서 Latent Reasoning은 토큰을 생성하기 이전 별도로 추론하는 과정을 거치는데 어떻게 생성하는 것이 좋은지 고민하고, 더 나은 추천 표현으로 만드는 과정입니다.

Input, Output은 이전의 Generative Recommendation과 동일하지만, 추천 과정에 있어, Think 1 -> .. -> Think n -> S1 -> S2 …과 같이 생성을 진행합니다.

Previous Limitations

기존 연구의 한계점은 다음과 같습니다. 이 논문에서는 2가지 관점에서 한계를 지적합니다.

  • Semantic ID (RQ-VAE)의 한계
    • 사용자 행동 정보를 반영하지 않아, 추천 목표와 불일치하다는 문제가 있습니다.
      • 기존 방법의 경우, 의미 임베딩에 의존하는데, 이로 인해 암묵적인 상호작용 패턴이 반영되지 않아, Semantic ID와 추천이라는 두 태스크의 목표 간 불일치가 발생합니다.
    • Semantic Collapse : 특정 코드워드들끼리 공간 상에서 너무 뭉쳐서 고유한 의미를 잃는 현상이 발생합니다.
      • 전혀 다른 의미를 가지는 토큰이 같은 Semantic ID를 가지는 현상이 발생할 수 있고, 일부 코드는 전혀 사용되지 않는 경향이 있어, 계층적 표현력이 감소하는 문제가 있습니다.
  • Latent Reasoning의 한계
    • 초기에 추론 과정을 끝내버리는 구조는, 추론이 앞 단계에 몰려 있어, 연산이 고르게 분배되지 못하는 문제가 있습니다 - Reasoning이 초기에 몰려있어 뒤로 갈수록 충분한 생각을 하지 못하고 일반적인 생성형 추천처럼 다음 토큰을 생성하는 문제가 발생하게 됩니다.
      • 물리적 의미 및 검증 가능한 신호 부족 : 추론 과정에서 각 단계마다 올바르게 가고 있는지 확인할 수 없는 문제가 있습니다.
        • 각 단계별 supervised signal이 없어 reasoning 과정이 올바른 semantic path를 따르는지 확인할 수 없게 됩니다.

Method : S2GR

image

위 문제를 해결하기 위해, 본 논문에서는 S2GR 프레임워크를 제안합니다. 해당 모델은 Semantic ID를 직접 생성하는 대신, 각 SID 생성 단계마다 Semantic-Guided Thinking Token을 통해 다음 아이템을 추천할 때, 올바른 Semantic Path를 따라가도록 유도하는 Stepwise Reasoning 기반의 Generative Recommendation 모델입니다.

Input과 Output은

  • Input : 사용자의 이전 상호작용 기록
  • Output : 다음 상호작용할 아이템의 Semantic ID

다음과 같이 구성되어 있습니다.

Step 1 : CoBa RQ-VAE

image

CoBa RQ-VAE는 Semantic 정보와 Collaborative 정보를 함께 반영하여 추천 태스크에 적합한 Semantic ID를 생성하고, Uniformity 및 Load Balancing을 통해 Codebook 품질을 향상시키는 RQ-VAE 기반 토큰화 방법

이 과정에서

  • Input : 사용자의 이전 상호작용 기록 + 아이템의 의미 임베딩
  • Output : 아이템 별 Semantic ID Token (숫자형, numeric)

으로 구성되어 있습니다.

이 과정에서 핵심은, Uniformity와 Load balancing을 적용해 Semantic Collapse와 토큰 ID 활용의 불균형을 예방하는 것에 있습니다.

여기에는 크게 2가지 과정으로 나뉘어져 있습니다.

Semantic-Behavior Alignment

아이템 자체가 가진 고유한 의미 정보에 사용자들이 실제로 여러 아이템을 함께 소비한 행동 패턴을 섞어서 하나의 임베딩을 만드는 과정입니다. 해당 과정에서는 아이템의 의미 임베딩과 이전 상호작용 기록을 바탕으로 두 정보를 결합한 하나의 새로운 임베딩을 만들게 됩니다. 과정은 다음과 같습니다.

  • 아이템 co-occurrence graph(상호작용 (동시사용) 그래프) 구축
    • 특정 아이템을 사용한 사용자가 함께 사용한 다른 아이템들과 연결
    • Edge Weight는 두 아이템이 함께 소비된 빈도(Co-occurrence Frequency)
  • Iterative Propagation : 반복 전파를 통한 정보 혼합
    • 그래프 정보를 활용하여 아이템 의미 정보와 행동 정보를 반복적으로 결합
    • 원본 의미 정보를 유지하면서, 인접 행렬(엣지 가중치 행렬)을 통해 연결된 이웃 아이템의 Collaborative 정보를 반영
  • 지수 가중 결합 (exponentially weighted combination)
    • 여러 hop에서 수집된 이웃 정보를 하나로 통합
    • 멀리 있는 이웃일수록 작은 가중치를 부여하여 최종적으로 Semantic + Collaborative를 반영한 하나의 임베딩을 만듦

이 방법의 장점으로는,

Codebook Uniform and Load Balance

RQ-VAE의 Codebook이 특정 코드에 집중되지 않도록 하여 Semantic Collapse와 Code Utilization Imbalance를 완화하는 과정

  • RQ-VAE 과정에서 Encoder -> Decoder을 거치면서, 의미를 가진 Semantic ID 생성 + Uniformity, Load balance 적용

  • Codebook Uniformity : 하나의 코드북 내의 코드벡터 사이의 pairwise distance 계산 -> 지나치게 가까운 Code Vector 쌍에 패널티 부여하여 각 코드북 내 벡터들이 충분히 떨어지도록
    • input : Codebook Vector들
    • output : uniformity loss
    • 이로 인해서, 모든 코드가 겹치지 않고, 서로 과도하게 가까워지는 것을 방지 -> codebook의 유사구분성을 넓힘.
  • Load balancing : MoE에서 영감, 각 코드가 과거에 얼마나 활성화되었는지 빈도를 추적하여 평균보다 더 많이 쓰인 코드는 선택될 확률을 낮추고, 반대 케이스는 선택 확률을 높이도록 동적으로 조정
    • input : 이전 단계의 codebook 잔차, 현재 단계 코드북 벡터들
    • output : 빈도수에 따른 panelty 정보가 곱해져 나온 조정된 거리 값
    • 각 코드워드 사용 빈도 추적 -> 전체 코드워드들이 평균 사용 횟수를 계산하여 기준점 설정
    • 과도하게 사용되는 Code는 선택 가능성을 낮추고, 적게 사용되는 Code는 선택 가능성을 높이도록 Quantization Score 조정
    • Codebook 전체를 균형 있게 활용

Step 2. Stepwise Semantic-Guided Reasoning

image

Stepwise Semantic-Guided Reasoning은 S2GR의 Main 테크닉으로서, 각 SID 코드 생성 전에 Thinking Token을 먼저 생성하고, 이 Thinking Token이 다음 SID 코드가 속해야 할 Coarse-grained Semantic Cluster를 가리키도록 지도하여, Semantic ID 생성 과정이 올바른 Semantic Path를 따라가도록 유도하는 단계입니다.

  • Input : 과거 상호작용 기록에 대한 Semantic ID
  • Output : 다음 상호작용할 아이템의 Semantic ID

Stepwise Semantic-Guided Reasoning의 테크닉은 크게 2가지가 있습니다.

Stepwise Reasoning Paradigm

해당 과정은, Stepwise Semantic-Guided Reasoning의 모델이 각 단계의 Semantic ID token을 출력하기 전, thinking token을 먼저 생성하도록 하는 패러다임입니다. 여기에서 사용되는 주요 특징은 다음과 같습니다.

  • Hierarchy-specific Position Embedding : Thinking 단계와 SID 생성 단계를 구분하기 위한 Position Embedding 추가
    • 현재 생성 중인 토큰이 Thinking Token인지 SID Token인지 명시
  • Thinking token도 다음 토큰 생성을 위한 입력을 집어넣어서, 현재 단계의 SID를 도출하는데 사용되도록 합니다.
    • 즉, 현재 단계에서 다음 SID code가 어떤 Semantic Cluster 또는 Semantic Region으로 이동해야 하는지 계획하는 역할을 수행

Semantic-Guided Alignment Supervision

Thinking Token이 의미 없는 Latent State가 되지 않도록, Semantic 정보를 이용해 명시적인 Supervision Signal을 제공하는 과정입니다.

여기에서 사용되는 주요 테크닉과 과정은 다음과 같습니다.

  • Coarse-grained Semantic-guided loss
    • CoBa RQ-VAE의 codebook 벡터들을 K-means로 클러스터링 해서, 각 클러스터의 centroid vector 추출
    • Thinking Token이 target item의 해당 단계 SID code가 속한 cluster centroid와 가까워지도록 Contrastive Learning 수행
  • Global item semantic Grounding
    • 별도의 lightweight auxiliary decoder를 추가
    • Target item의 전체 hierarchical SID 정보를 이용해 Global Semantic Vector를 생성
    • In-batch negative를 활용하여 첫 번째 Thinking Token이 Global Semantic Vector와 유사해지도록 학습
    • 이를 통해 reasoning 시작점이 target item의 전체적인 semantic direction과 정렬되도록 함

※ Lightweight Decoder는 학습 단계에서만 사용되며, 추론 단계에서는 사용하지 않습니다.

Experiments

image

  • industrial data : 롱플레이 비디오 시청 기록 데이터 -> 활성 사용자들이 연속 2일동안 남긴 상호작용 로그
  • Beauty에서 상호작용 기록 10개 미만인 것 제외
  • 임베딩 모델
    • Beauty : Qwen3-Embedding-4B
    • Industrial : 자체 모델로
  • 인코더, 디코더 4개

Performance Comparison

image

  • 소규모 공공 데이터셋(Amazon Beauty)과 대규모 산업용 데이터셋 모두 모델이 가장 좋습니다.
  • 소규모 데이터셋보다 대규모 산업용 데이터셋에서 훨씬 더 성능 차이가 크게 도출되었습니다.

Ablation Study

image

  • w/o CoBa RQ-VAE
    • CoBa RQ-VAE를 Vanilla RQ-VAE로 대체
    • CUR, ICR 감소 → Semantic ID 품질 및 추천 성능 저하
  • w/o Reason
    • Thinking Token 및 Stepwise Reasoning 제거
    • Semantic Planning 없이 Target SID를 직접 생성
  • w/o L_think
    • Thinking Token은 유지, Semantic-Guided Supervision 제거
    • Thinking Token이 올바른 Semantic Path를 학습하지 못해 성능 하락

CUR : codebook 활용률 ICR : 독립 코딩률 -> 코드북 내 코드들이 서로 뭉개지지 않고, 얼마나 독립적이고 뚜렷한 의미를 가지는지

Online Testing (APD)

image

TIGER를 대조군(Control group)으로 삼았으며, 각 그룹에 전체 유저의 5.25%를 할당하여 7일 동안 실험을 진행

  • 총 앱 사용 시간 (Total App Usage Time): 0.092% 상승
  • 유저당 앱 사용 시간 (App Usage Time per User): 0.088% 상승
  • 총 비디오 시청 횟수 (Total Video View): 0.091% 상승

Further Analysis

image

  • Hyperparameter sensitivity
    • step-wise semantic guidance 단계에서 사용되는 클러스터 개수
    • 64개가 가장 좋고, 이상 가면 떨어짐. -> 과도하게 분할된다면, overthink하게 되어서, 성능에 오히려 악영향을 미침

image

  • Analysis of user interaction sequence of different lengths
    • user interaction 수에 따라 성능 비교
    • interaction history 수 변화에 관계없이 골고루 좋은 모습

image

  • Analysis of Different model size
    • 인코더, 디코더 수 조정
    • 모델의 크기가 커질수록 추론 능력도 그에 비례해 성장

Conclusion

  • Contribution
    • CoBa RQ-VAE를 통해 Semantic 정보와 Collaborative 정보를 함께 반영하여 codebook을 학습함
      • 단순 semantic similarity가 아닌 사용자 행동 정보를 반영한 recommendation-aware semantic token을 생성 (추천 태스크에 적합)
    • Semantic-Guided Reasoning을 통해 각 Semantic ID 생성 단계에서 올바른 semantic path를 따라가도록 유도하여 semantic transition을 명시적으로 모델링. (기존 RQ-VAE가 hierarchical하지 못한 것 아니냐는 단점 극복)
  • Limitation
    • Interaction history가 충분한 사용자 위주로 평가가 수행되어, sparse-user 환경에서의 일반화 성능은 확인하기 어려움
      • 특히 Beauty같은 아마존 리뷰 데이터셋은 interaction history가 적은 유저가 대부분
    • 메인은 2번째 Reasoning 단계인데, 생각외로 CoBa RQ-VAE의 영향이 강함
      • codebook 품질에 의존하는 경향이 강함. -> codebook이 잘못 구성되면 reasoning supervision도 같이 흔들릴 수 있음

Categories:

Updated:

Leave a comment