RecSim은 사용자와의 순차적 상호 작용을 자연스럽게 지원하는 추천 시스템(RS)용 시뮬레이션 환경을 작성하기 위한 구성 가능한 플랫폼입니다. RecSim을 사용하면 순차적 대화형 추천 문제에서 현재 강화 학습(RL) 및 RS 기술의 한계를 뛰어넘는 데 적합한 추상화 수준에서 사용자 행동 및 항목 구조의 특정 측면을 반영하는 새로운 환경을 생성할 수 있습니다. 사용자 선호도 및 항목 친숙도에 대한 가정을 다양하게 하는 환경을 쉽게 구성할 수 있습니다. 사용자 잠재 상태 및 그 역학 선택 모델 및 기타 사용자 반응 행동. 우리는 RecSim이 RL 및 RS 연구원과 실무자에게 어떻게 가치를 제공하는지, 그리고 이것이 산학 협력을 위한 수단으로 사용될 수 있는 방법을 간략하게 설명합니다. RecSim 아키텍처에 대한 자세한 설명은 Ie et al. 작업에 이 저장소의 코드를 사용하는 경우 해당 논문을 인용해 주세요.
@article{ie2019recsim,
title={RecSim: A Configurable Simulation Platform for Recommender Systems},
author={Eugene Ie and Chih-wei Hsu and Martin Mladenov and Vihan Jain and Sanmit Narvekar and Jing Wang and Rui Wu and Craig Boutilier},
year={2019},
eprint={1909.04847},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
공식적으로 지원되는 Google 제품이 아닙니다.
(https://pypi.org/project/recsim/)을 사용하여 RecSim을 설치하는 것이 좋습니다:
pip install recsim
하지만 2019년 12월 현재 PyPI에는 최신 버전의 Dopamine이 없습니다. RecSim을 설치하기 전에 다음과 같이 Dopamine 저장소에서 최신 버전을 설치하려고 합니다. Dopamine에는 Ubuntu 및 Windows에 대한 GPU 지원을 포함하는 최종 1.x 릴리스인 Tensorflow 1.15.0이 필요합니다.
pip install git+https://github.com/google/dopamine.git
다음은 설치 테스트에 사용할 수 있는 몇 가지 샘플 명령입니다.
git clone https://github.com/google-research/recsim
cd recsim/recsim
python main.py --logtostderr
--base_dir="/tmp/recsim/interest_exploration_full_slate_q"
--agent_name=full_slate_q
--environment_name=interest_exploration
--episode_log_file='episode_logs.tfrecord'
--gin_bindings=simulator.runner_lib.Runner.max_steps_per_episode=100
--gin_bindings=simulator.runner_lib.TrainRunner.num_iterations=10
--gin_bindings=simulator.runner_lib.TrainRunner.max_training_steps=100
--gin_bindings=simulator.runner_lib.EvalRunner.max_eval_episodes=5
그런 다음 텐서보드를 시작하고 출력을 볼 수 있습니다.
tensorboard --logdir=/tmp/recsim/interest_exploration_full_slate_q/ --port=2222
/tmp/recsim/episode_logs.tfrecord에서 시뮬레이션된 로그를 찾을 수도 있습니다.
시작하려면 Colab 튜토리얼을 확인하세요. RecSim: 개요 에서는 RecSim에 대한 간략한 개요를 제공합니다. 그런 다음 구성 가능한 각 구성 요소인 환경 및 추천 에이전트 에 대해 설명합니다.
상위 수준 설계에 대해서는 백서를 참조하시기 바랍니다.