Giter Site home page Giter Site logo

timotheemathieu / adastop Goto Github PK

View Code? Open in Web Editor NEW
4.0 4.0 0.0 1.76 MB

Sequential testing for efficient and reliable comparison of stochastic algorithms.

Home Page: https://timotheemathieu.github.io/adastop/

License: MIT License

Python 100.00%
empirical-research sequential-testing statistical-reproducibility

adastop's Introduction

AdaStop

This package contains the AdaStop algorithm. AdaStop implements a statistical test to adaptively choose the number of runs of stochastic algorithms necessary to compare these algorithms and be able to rank them with a theoretically controlled family-wise error rate. One particular application for which AdaStop was created is to compare Reinforcement Learning algorithms. Please note, that what we call here algorithm is really a certain implementation of an algorithm.

The test proceeds in stages (or interims). First we collect $n$ performance measures for all $L$ algorithms computed on $n\times L$ different random seeds. Then, Adastop examines these $n\times L$ numbers and decides that some of the algorithms are different, some of them are equal, and some of them needs more data to be distinguished. The process then repeats itself until a decision has been reached on all the algorithms.

The parameters of Adastop are described below, most important are $n$ the number of evaluations at each interim and $K$ the maximum number of interims.

Installation

To install adastop, use pip:

pip install adastop

This will automatically install the command line interface as well as the python library.

WARNING: this Readme is for the dev version of adastop, to see the README associated to the released version, see https://pypi.org/project/adastop/

Usage

There are two ways to use this package:

  • Command line interface: AdaStop can be used as a command line interface that takes csv files as input. The cli interface can either be called interactively or the process can be automated using bash script.
  • Python API: AdaStop is coded in python and can directly be imported as a module to be used in a python script.

Refer to the documentation and in particular our tutorial for detailed instructions on using adastop.

Citation

AdaStop was originally developped for the article AdaStop: adaptive statistical testing for sound comparisons of Deep RL agents by Timothée Mathieu, Riccardo Della Vecchia, Alena Shilova, Matheus Medeiros Centa, Hector Kohler, Odalric-Ambrym Maillard, Philippe Preux.

adastop's People

Contributors

timotheemathieu avatar ph-preux avatar

Stargazers

Mathieu Acher  avatar Govind avatar Waris Radji avatar Hector Kohler avatar

Watchers

Odalric-Ambrym Maillard avatar Riccardo Della Vecchia avatar  avatar  avatar

adastop's Issues

readme.md

something weird in this sentence (1st sentence in the CLI usage section): "The command line interface takes as input csv files containing data a pandas dataframe with". I don't know what we want to say, so can not fix it by myself.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.