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.
Рекомендуется установить RecSim, используя (https://pypi.org/project/recsim/):
pip install recsim
Однако по состоянию на декабрь 2019 года последней версии Dopamine нет в PyPI. Перед установкой RecSim мы хотим установить последнюю версию из репозитория Dopamine, как показано ниже. Обратите внимание, что для Dopamine требуется Tensorflow 1.15.0, который является последней версией 1.x, включая поддержку графического процессора для Ubuntu и Windows.
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. Затем мы поговорим о каждом настраиваемом компоненте: среде и рекомендательном агенте .
Пожалуйста, обратитесь к официальному документу для ознакомления с проектом высокого уровня.