/actor-critic-public

The source code for "An Actor Critic Algorithm for Structured Prediction"

Primary LanguageJupyter NotebookMIT LicenseMIT

Actor-Critic for Sequence Prediction

The reference implementation for the paper

An Actor-Critic Algorithm for Sequence Prediction (openreview, submitted to ICLR 2017)
by Dzmitry Bahdanau, Philemon Brakel, Kelvin Xu, Anirudh Goyal, Ryan Lowe, Joelle Pineau, Aaron Courville, Yoshua Bengio

Note, that in fact it is a heavily modified speech recognizer, so please do not be surprised by the presense of speech related terms in the code. The code is provided only for replication purposes, further development is not planned. If you have questions, please contact Dzmitry Bahdanau or just create an issue here.

How to use

  • install all the dependencies (see the list below)
  • set your environment variables by calling source env.sh
  • for training use $LVSR/bin/run.py train <save-to> <config>
  • for testing use $LVSR/bin/run.py search <model-path> <config>

Please proceed to exp/ted for the instructions how to replicate our machine translation results on TED data, or to exp/billion_words in order to run our spelling correction experiments.

Dependencies

  • Python packages: pykwalify, toposort, pyyaml, numpy, pandas, picklable-itertools
  • Theano 0.9, the "old" gpu Backend (a.k.a. device=gpu)
  • blocks, commit d8b7ffbdda68b4e2ca3c1a2984964285cb1cb709
  • blocks-extras, commit 0cefaa3a8a372c551fc3b0df02d5d4f105767d9f
  • fuel, commit 42e21a25ed248739e5fe75b9e4193c749979ba57

License

MIT