A development tool for evaluation and interpretability of reinforcement learning agents.
Project description
A development tool for evaluation and interpretability of reinforcement learning agents.
Installation
pip install rld
Usage
Firstly, calculate attributations for your rollout using:
rld attribute [--rllib] [--out <ROLLOUT>] config.py <INPUT_ROLLOUT>
This will take INPUT_ROLLOUT
(possibly in the Ray RLlib format, if --rllib
is set)
and calculate attributations for each timestep in each trajectory,
using the configuration stored in config.py
.
The output file will be stored as ROLLOUT
.
See the Config
class for possible configuration.
Once the attributations are calculated, you can visualize them using:
rld start --viewer <VIEWER_ID> <ROLLOUT>
See the examples for reference.
Description
rld provides a set of tools to evaluate and understand behaviors of reinforcement learning agents. Under the hood, rld uses Captum to calculate attributations of observation components. rld is also integrated with Ray RLlib library and allows to load agents trained in RLlib.
Current limitations
rld is currently in its early development stage, thus the functionality is very limited.
RL algorithms
rld is algorithm-agnostic, but currently it is more suitable for policy-based methods.
This is due to the fact that the Model
is now expected to output logits for a given
observation. This, however, will change in the future, and rld will support more
algorithms.
Viewers
This is the list of viewers, which ship with rld:
none
cartpole
atari
You can easily create your own viewer, for your own environment, but to make it visible for rld, you have to rebuild the project. This will be improved in the future.
Observation and action spaces
The table below presents currently supported observation and action spaces.
Action space | |||
Discrete | MultiDiscrete | ||
Obs space | Box | :heavy_check_mark: | :heavy_check_mark: |
Dict | :heavy_check_mark: | :heavy_check_mark: |
Roadmap
See the issues page to see the list of features planned for the future releases. If you have your own ideas, you are encouraged to post them there.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file rld-0.1.1.tar.gz
.
File metadata
- Download URL: rld-0.1.1.tar.gz
- Upload date:
- Size: 1.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e43143bbdb77adcddfb9cd32b3f6d7ae74bc53861f248cd8a08d2060725292c |
|
MD5 | 8a75a88fa43209cd69665ae596c12496 |
|
BLAKE2b-256 | 7aeea0c85d86b0b544acce86d47f4c22bce0e6c46b4eee1278f013d1741b08cf |
File details
Details for the file rld-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: rld-0.1.1-py3-none-any.whl
- Upload date:
- Size: 1.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 276fee662325249697c134559556f17315753bd1d6329cd38afd1dcfa1d46ed8 |
|
MD5 | 56901803b40696c26c895495dacd8850 |
|
BLAKE2b-256 | 56012a4c3225392cffbf5da4d4341edfc7364dd9811af1efc89f665722cd366d |