Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

A tool for developing automatic phoneme transcription models

Project description

Persephone v0.3.2 (beta version)

Persephone (/pərˈsɛfəni/) is an automatic phoneme transcription tool. Traditional speech recognition tools require a large pronunciation lexicon (describing how words are pronounced) and much training data so that the system can learn to output orthographic transcriptions. In contrast, Persephone is designed for situations where training data is limited, perhaps as little as an hour of transcribed speech. Such limitations on data are common in the documentation of low-resource languages. It is possible to use such small amounts of data to train a transcription model that can help aid transcription, yet such technology has not been widely adopted.

The speech recognition tool presented here is named after the goddess who was abducted by Hades and must spend one half of each year in the Underworld. Which of linguistics or computer science is Hell, and which the joyful world of spring and light? For each it’s the other, of course. — Alexis Michaud

The goal of Persephone is to make state-of-the-art phonemic transcription accessible to people involved in language documentation. Creating an easy-to-use user interface is central to this. The user interface and APIs are a work in progress and currently Persephone must be run via a command line.

The tool is implemented in Python/Tensorflow with extensibility in mind. Currently just one model is implemented, which uses bidirectional long short-term memory (LSTMs) and the connectionist temporal classification (CTC) loss function.

We are happy to offer direct help to anyone who wants to use it. If you’re having trouble, contact Oliver Adams at We are also very welcome to thoughts, constructive criticism, help with design, development and documentation, along with any bug reports or pull requests you may have.


Documentation can be found here.


Persephone has been built based on the code contributions of:


If you use this code in a publication, please cite Evaluating Phonemic Transcription of Low-Resource Tonal Languages for Language Documentation:

title = {Evaluating phonemic transcription of low-resource tonal languages for language documentation},
author = {Adams, Oliver and Cohn, Trevor and Neubig, Graham and Cruz, Hilaria and Bird, Steven and Michaud, Alexis},
booktitle = {Proceedings of LREC 2018},
year = {2018}

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
persephone-0.3.2-py3-none-any.whl (51.6 kB) Copy SHA256 hash SHA256 Wheel py3 Aug 5, 2018
persephone-0.3.2.tar.gz (46.3 kB) Copy SHA256 hash SHA256 Source None Aug 5, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page