recsim-v2


Namerecsim-v2 JSON
Version 0.2.7 PyPI version JSON
download
home_pagehttps://github.com/google-research/recsim
SummaryRecSim: A Configurable Recommender Systems Simulation Platform
upload_time2024-11-01 19:42:45
maintainerNone
docs_urlNone
authorThe RecSim Team
requires_pythonNone
licenseApache 2.0
keywords recsim reinforcement-learning recommender-system simulation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # RecSim: A Configurable Recommender Systems Simulation Platform

RecSim is a configurable platform for authoring simulation environments for
recommender systems (RSs) that naturally supports **sequential interaction**
with users. RecSim allows the creation of new environments that reflect
particular aspects of user behavior and item structure at a level of abstraction
well-suited to pushing the limits of current reinforcement learning (RL) and RS
techniques in sequential interactive recommendation problems. Environments can
be easily configured that vary assumptions about: user preferences and item
familiarity; user latent state and its dynamics; and choice models and other
user response behavior. We outline how RecSim offers value to RL and RS
researchers and practitioners, and how it can serve as a vehicle for
academic-industrial collaboration. For a detailed description of the RecSim
architecture please read [Ie et al](https://arxiv.org/abs/1909.04847). Please
cite the paper if you use the code from this repository in your work.

### Bibtex

```
@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}
}
```

<a id='Disclaimer'></a>

## Disclaimer

This is not an officially supported Google product.

## What's new

*   **12/13/2019:** Added (abstract) classes for both multi-user environments
    and agents. Added bandit algorithms for generalized linear models.

## Installation and Sample Usage

It is recommended to install RecSim using (https://pypi.org/project/recsim/):

```shell
pip install recsim
```

However, the latest version of Dopamine is not in PyPI as of December, 2019. We
want to install the latest version from Dopamine's repository like the following
before we install RecSim. Note that Dopamine requires Tensorflow 1.15.0 which is
the final 1.x release including GPU support for Ubuntu and Windows.

```
pip install git+https://github.com/google/dopamine.git
```

Here are some sample commands you could use for testing the installation:

```
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
```

You could then start a tensorboard and view the output

```
tensorboard --logdir=/tmp/recsim/interest_exploration_full_slate_q/ --port=2222
```

You could also find the simulated logs in /tmp/recsim/episode_logs.tfrecord

## Tutorials

To get started, please check out our Colab tutorials. In
[**RecSim: Overview**](recsim/colab/RecSim_Overview.ipynb),
we give a brief overview about RecSim. We then talk about each configurable
component:
[**environment**](recsim/colab/RecSim_Developing_an_Environment.ipynb)
and
[**recommender agent**](recsim/colab/RecSim_Developing_an_Agent.ipynb).

## Documentation


Please refer to the [white paper](http://arxiv.org/abs/1909.04847) for the
high-level design.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/google-research/recsim",
    "name": "recsim-v2",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "recsim reinforcement-learning recommender-system simulation",
    "author": "The RecSim Team",
    "author_email": "no-reply@google.com",
    "download_url": "https://files.pythonhosted.org/packages/45/3e/697a3f0f8ac86413bac59eb018243448e17a0e2eb6d88c690b3a2e5c805e/recsim_v2-0.2.7.tar.gz",
    "platform": null,
    "description": "# RecSim: A Configurable Recommender Systems Simulation Platform\r\n\r\nRecSim is a configurable platform for authoring simulation environments for\r\nrecommender systems (RSs) that naturally supports **sequential interaction**\r\nwith users. RecSim allows the creation of new environments that reflect\r\nparticular aspects of user behavior and item structure at a level of abstraction\r\nwell-suited to pushing the limits of current reinforcement learning (RL) and RS\r\ntechniques in sequential interactive recommendation problems. Environments can\r\nbe easily configured that vary assumptions about: user preferences and item\r\nfamiliarity; user latent state and its dynamics; and choice models and other\r\nuser response behavior. We outline how RecSim offers value to RL and RS\r\nresearchers and practitioners, and how it can serve as a vehicle for\r\nacademic-industrial collaboration. For a detailed description of the RecSim\r\narchitecture please read [Ie et al](https://arxiv.org/abs/1909.04847). Please\r\ncite the paper if you use the code from this repository in your work.\r\n\r\n### Bibtex\r\n\r\n```\r\n@article{ie2019recsim,\r\n    title={RecSim: A Configurable Simulation Platform for Recommender Systems},\r\n    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},\r\n    year={2019},\r\n    eprint={1909.04847},\r\n    archivePrefix={arXiv},\r\n    primaryClass={cs.LG}\r\n}\r\n```\r\n\r\n<a id='Disclaimer'></a>\r\n\r\n## Disclaimer\r\n\r\nThis is not an officially supported Google product.\r\n\r\n## What's new\r\n\r\n*   **12/13/2019:** Added (abstract) classes for both multi-user environments\r\n    and agents. Added bandit algorithms for generalized linear models.\r\n\r\n## Installation and Sample Usage\r\n\r\nIt is recommended to install RecSim using (https://pypi.org/project/recsim/):\r\n\r\n```shell\r\npip install recsim\r\n```\r\n\r\nHowever, the latest version of Dopamine is not in PyPI as of December, 2019. We\r\nwant to install the latest version from Dopamine's repository like the following\r\nbefore we install RecSim. Note that Dopamine requires Tensorflow 1.15.0 which is\r\nthe final 1.x release including GPU support for Ubuntu and Windows.\r\n\r\n```\r\npip install git+https://github.com/google/dopamine.git\r\n```\r\n\r\nHere are some sample commands you could use for testing the installation:\r\n\r\n```\r\ngit clone https://github.com/google-research/recsim\r\ncd recsim/recsim\r\npython main.py --logtostderr \\\r\n  --base_dir=\"/tmp/recsim/interest_exploration_full_slate_q\" \\\r\n  --agent_name=full_slate_q \\\r\n  --environment_name=interest_exploration \\\r\n  --episode_log_file='episode_logs.tfrecord' \\\r\n  --gin_bindings=simulator.runner_lib.Runner.max_steps_per_episode=100 \\\r\n  --gin_bindings=simulator.runner_lib.TrainRunner.num_iterations=10 \\\r\n  --gin_bindings=simulator.runner_lib.TrainRunner.max_training_steps=100 \\\r\n  --gin_bindings=simulator.runner_lib.EvalRunner.max_eval_episodes=5\r\n```\r\n\r\nYou could then start a tensorboard and view the output\r\n\r\n```\r\ntensorboard --logdir=/tmp/recsim/interest_exploration_full_slate_q/ --port=2222\r\n```\r\n\r\nYou could also find the simulated logs in /tmp/recsim/episode_logs.tfrecord\r\n\r\n## Tutorials\r\n\r\nTo get started, please check out our Colab tutorials. In\r\n[**RecSim: Overview**](recsim/colab/RecSim_Overview.ipynb),\r\nwe give a brief overview about RecSim. We then talk about each configurable\r\ncomponent:\r\n[**environment**](recsim/colab/RecSim_Developing_an_Environment.ipynb)\r\nand\r\n[**recommender agent**](recsim/colab/RecSim_Developing_an_Agent.ipynb).\r\n\r\n## Documentation\r\n\r\n\r\nPlease refer to the [white paper](http://arxiv.org/abs/1909.04847) for the\r\nhigh-level design.\r\n",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "RecSim: A Configurable Recommender Systems Simulation Platform",
    "version": "0.2.7",
    "project_urls": {
        "Bug Reports": "https://github.com/google-research/recsim/issues",
        "Documentation": "https://github.com/google-research/recsim",
        "Homepage": "https://github.com/google-research/recsim",
        "Source": "https://github.com/google-research/recsim"
    },
    "split_keywords": [
        "recsim",
        "reinforcement-learning",
        "recommender-system",
        "simulation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "453e697a3f0f8ac86413bac59eb018243448e17a0e2eb6d88c690b3a2e5c805e",
                "md5": "b1741c1763c8805f1718a8274fcc8381",
                "sha256": "9ff8c5c23b5d865e70e7eb1537605ad3fdd6056a52ff4d6a076be72e261b07db"
            },
            "downloads": -1,
            "filename": "recsim_v2-0.2.7.tar.gz",
            "has_sig": false,
            "md5_digest": "b1741c1763c8805f1718a8274fcc8381",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 71762,
            "upload_time": "2024-11-01T19:42:45",
            "upload_time_iso_8601": "2024-11-01T19:42:45.138548Z",
            "url": "https://files.pythonhosted.org/packages/45/3e/697a3f0f8ac86413bac59eb018243448e17a0e2eb6d88c690b3a2e5c805e/recsim_v2-0.2.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-01 19:42:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "google-research",
    "github_project": "recsim",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "recsim-v2"
}
        
Elapsed time: 0.32919s