Neural Monkey: An Open-source Tool for Sequence Learning

Jindřich Helcl, Jindřich Libovický

Research output: Contribution to journalArticlepeer-review


Neural machine translation (NMT) recently became a new successful paradigm in machine translation (Sutskever et al., 2014; Bahdanau et al., 2014). Besides NMT, sequence-to-sequence (S2S) learning in general proved its usefulness in various other tasks including building a chatbot (Vinyals and Le, 2015), image captioning (Vinyals et al., 2015; Xu et al., 2015), or text segmentation and entity recognition (Gillick et al., 2016).

Neural Monkey is an open-source toolkit written using the TensorFlow machine learning library (Abadi et al., 2016). It provides a higher level API, such that it should be enough for the users to be familiar with the models on the equation level, without delving into implementation details. For that reason, we try to use as big abstract building blocks as possible. Unliket fLearn or Lasagne our building blocks are not individual network layers, but more abstract objects like encoders or classifiers. These objects are parametrized so that their properties (e.g. number and sizes of hidden layers or dropout probability) can be set from a farther perspective. This design decision allows us to place the configuration of the experiments away from the actual code into a separate comprehensive configuration file. This way, users are prevented from interleaving the configuration with other program logic.

Neural Monkey is still under development and has an ambition to become an evergrowing collection of recent innovations in NMT and S2S learning in general, which would allow its users to easily try out the model for their specific tasks and datasets. With its simple experiment management, we hope that it will be used as a ready-made easily-extensible toolkit for experiments with machine translation, image captioning, text classification tasks or scene text recognition. It has already been used for the submission for the WMT16 automatic post-editing and multimodal translation tasks (Libovický et al., 2016), linguistic analysis of MT systems (Avramidis et al., 2016).The current version of the software is available at the BSD license.
Original languageEnglish
Pages (from-to)5-17
Number of pages13
JournalPrague Bulletin of Mathematical Linguistics
Publication statusPublished - 1 Apr 2017


Dive into the research topics of 'Neural Monkey: An Open-source Tool for Sequence Learning'. Together they form a unique fingerprint.

Cite this