리코시뮬: 차세대 추천 시스템을 위한 맞춤형 시뮬레이션 플랫폼
RecSim은 사용자와 아이템 사이의 순차적 상호작용을 모델링할 수 있는 구성 가능한 시뮬레이션 프레임워크이다. 사용자 선호, 잠재 상태 전이, 아이템 특성, 선택 모델 등을 자유롭게 정의함으로써 강화학습(RL) 및 전통적 추천 알고리즘을 안전하고 재현 가능한 가상 환경에서 평가·비교할 수 있다.
저자: Eugene Ie, Chih-wei Hsu, Martin Mladenov
본 논문은 추천 시스템(RS) 분야에서 강화학습(RL) 및 전통적인 협업 필터링 기법을 평가·개선하기 위한 시뮬레이션 플랫폼인 RecSim을 제안한다. RecSim은 사용자와 아이템 사이의 순차적 상호작용을 모델링하는데 필요한 핵심 요소를 세 가지 모듈—사용자 모델, 문서(아이템) 모델, 선택 모델—로 추상화하고, 각 모듈을 파라미터화하여 다양한 가설을 손쉽게 실험할 수 있게 설계되었다.
사용자 모델은 잠재 선호, 만족도, 시간 예산 등 관측 가능·비관측 변수를 포함하며, 사전 분포에서 샘플링해 다수의 가상 사용자를 생성한다. 전이 모델은 사용자가 아이템을 소비한 뒤 상태가 어떻게 변하는지를 정의한다. 예를 들어, 특정 주제에 대한 관심이 증가하거나 시간 예산이 감소하는 식이다. 이러한 전이 함수는 마코프 결정 과정(MDP) 혹은 부분관측 MDP(POMDP) 형태로 구현될 수 있어, RL 에이전트가 장기 보상을 최적화하도록 학습한다.
문서 모델은 아이템의 품질, 토픽, 인기 등 메타 정보를 제공하고, 관측 가능 수준을 조절함으로써 콜드 스타트 상황이나 풍부한 피드백을 가정한 실험을 모두 지원한다. 선택 모델은 사용자가 슬레이트(다수 아이템) 중 어떤 아이템을 클릭·소비할지를 확률적으로 결정한다. 여기서는 점별 선택 모델, 다중 선택 모델, 순위 기반 모델 등 다양한 가정을 구현할 수 있다. 특히, 선택 확률에 잠재 품질이나 사용자의 현재 관심을 반영함으로써 실제 서비스에서 관측되는 복합적인 행동을 재현한다.
RecSim은 OpenAI Gym과 유사한 API를 제공해 기존 RL 알고리즘이 최소한의 수정만으로 적용 가능하도록 한다. 따라서 정책 학습, 오프라인 정책 평가, 샘플 효율성 테스트 등 다양한 실험을 동일한 코드베이스에서 수행할 수 있다.
논문은 실제 산업 현장에서 직면하는 네 가지 주요 RL 도전 과제—(1) 사용자 간 일반화, (2) 조합적 액션 공간, (3) 동적·대규모 아이템 풀, (4) 장기 보상 최적화—를 RecSim을 통해 어떻게 재현하고 연구할 수 있는지를 구체적으로 제시한다. 사례 연구에서는 세 가지 시나리오를 구현한다. 첫 번째는 사용자 선호가 시간에 따라 서서히 변하는 ‘관심 전이’ 모델로, 사용자의 잠재 상태가 슬로우하게 변화하면서 장기 보상에 미치는 영향을 분석한다. 두 번째는 아이템 품질에 따라 소비 시간이 달라지는 ‘시간 예산’ 모델로, 사용자가 제한된 시간 내에 얼마나 많은 아이템을 소비할 수 있는지를 시뮬레이션한다. 세 번째는 슬레이트 내 아이템 간 상호작용을 고려한 ‘다중 선택’ 모델로, 사용자가 한 번에 여러 아이템을 선택하거나 순차적으로 소비하는 행동을 모델링한다. 각 시나리오에서 기존 밴치마크(예: MovieLens)와는 달리, 정책의 미세한 차이와 학습 안정성 문제를 시뮬레이션을 통해 포착할 수 있음을 보여준다.
RecSim은 ‘완벽한 시뮬레이터’를 목표로 하지 않는다. 대신, 연구자가 관심 있는 현상을 충분히 표현할 수 있는 ‘스타일리시한’ 사용자 모델을 제공함으로써, 학계와 산업계가 동일한 가상 환경을 공유하고, 실제 사용자 데이터의 민감성을 침해하지 않으면서도 유의미한 피드백을 교환할 수 있는 협업 기반을 마련한다는 점이 가장 큰 강점이다. 플랫폼은 오픈소스로 공개되어 재현성 및 모델 공유를 촉진하고, 새로운 환경을 손쉽게 정의할 수 있는 템플릿을 제공한다. 향후에는 멀티-에이전트 상호작용, 더 복잡한 외생 이벤트, 그리고 실제 로그 데이터를 기반으로 한 하이브리드 시뮬레이션 등으로 확장될 가능성이 제시된다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기