Skip to content
This is the code for the paper 'Quaternion Convolutional Neural Networks for End-to-End Automatic Speech Recognition'. It provides all the Keras classes to run a Quaternion Convolutional NN.
Branch: master
Clone or download
TParcollet Merge pull request #2 from vsatyakumar/patch-1
Fix for 'no kernel_initializer found'
Latest commit e06eb80 Jan 24, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
complexnn Fix for 'Unhashable Type : dict' on line 174 Jan 9, 2019
decoda V1 Jun 30, 2018
models Update Jul 6, 2018 Update Aug 17, 2018 V1 Jun 30, 2018 Update installer Jun 30, 2018 Fixing issue #1 Aug 29, 2018

Quaternion-Valued Convolutional Neural Networks for End-to-End Automatic Speech Recognition

This repository contains the code for a simple implementation of the QCNN presented in the paper Quaternion Convolutional Neural Networks for End-to-End Automatic Speech Recognition

Requirements & Installation

Install all the needed dependencies with:

python install

Or manually:

pip install numpy tensorflow-gpu keras scikit-learn 

Depending on your Python installation you might want to use anaconda or other tools. Note that this code works on python 2.7.13. However it has not been tested on 3.x.


Since the TIMIT dataset is not free, the script does not run an experiment on this corpus. However, models used for the experiments of our paper can be found in models/


  1. Run the working example:

    python --model {QDNN, QCNN, DNN, CNN}

The experiment is conduced on a spoken dialogues corpus which is a set of automatically transcribed human-human telephone conversations from the customer care service (CCS) of the RATP Paris transportation system. The DECODA corpus is composed of 1,242 telephone conversations, which corresponds to about 74 hours of signal. Each conversation has to be mapped to the right theme (8).

You can’t perform that action at this time.