Creating a data set containing nouns and verbs of spoken Kinyarwanda that will serve as basis for modeling and experiments.
# Kinyarwanda ASR for storyboard recordings
The goal of work package 2-DataSet is to create a data set containing nouns and verbs of spoken Kinyarwanda that will serve as basis for our modeling and experiments.
## Pre-requisites
>
> This code is tested on Manjaro 6.5.13-7 with 16×MD Ryzen 7 7730U and 22,4 GiB RAM.
> With these specifications, all individual computations take max. 10 minutes.
This tutorial uses the Docker version of MFA. To use MFA without Docker, see the file in the docs folder: more_mfa.md.
1. Get a copy of the repository via git or the zip archive.
2. Install Docker
3. Pull the forced aligner image. In you terminal: `docker pull mmcauliffe/montreal-forced-aligner:v2.2.16`.
4. Install Python 3.11.6.
5. Make a virtual environment to install the Python requirements from the root of the repository:
```sh
python -m venv
source /bin/activate
pip install -r requirements.txt
```
If you want to specify the version of Python, you can do so with:
```sh
python3.11 -m venv
source /bin/activate
pip install -r requirements.txt
```
6. Download the textgrids and wav files from the PhilCloud, place them in `data/mfa_data/corpus` and rename them using `rename.py`.
## Generate alignments
The sections below describe how to generate alignments (+ the necessary preprocessing) for Kinyarwanda using different methods:
1. Train a **new model for Kinyarwanda** using the Fleurs corpus.
2. Use a **pre-trained Hausa model + a Hausa dictionary** (the model does not know Kinyarwanda orthography or phonology).
3. Use a **pre-trained Hausa model** + **g2p Hausa model** to generate a pronunciation dictionary for the Kinyarwanda data.
4. **Adapt the Hausa model** to Kinyarwanda.
Sections repeat steps like downloading the pre-trained models. You can skip these steps if you have already done them in the same docker instance. **Re-starting the docker instance will remove everything you do not have on your local machine**.
If you try multiple methods, make sure to use the …