Skip to content

tone-me/tone-me

Repository files navigation

Tone.me

Tone.me is a platform built at MIT aimed at improving Mandarin pronunciation.
Developed by Chris Ge, Daria Kryvosheieva, Anshul Gupta, Riddhi Bhagwat, & Katherine Guo


Logo

A Chinese Mandarin Pronunciation Corrector

Table of Contents
  1. About The Project
  2. Installation and Setup
  3. License
  4. Contact
  5. Acknowledgments

About The Project

Video Demo

Tone-Me Demo

Our three-step process accepts a Chinese voice recording,determines the tones in the recording, and returns feedback on the correctness of the tones.

  1. Audio Input. Record an audio of yourself pronouncing a character, word, phrase or sentence. Specify what you want to say.
  2. Analysis. Our software predicts tones from the audio and compares to the intended ones.
  3. Feedback. The software returns whether or not your pronunciation was right, and displays the audio of your pronunciation of each syllable compared to an authentic pronunciation

We used the Data-AISHELL3 Mandarin Speech Corpus as raw data split it into audio segments of individual syllables using Whisper and stable-ts, filtered the syllables using Pydub, and fine-tuned the wave2vec2 transformer model on the resulting audio segments. Here's a diagram of our model pipeline:

Tone-Me pipeline architecture

The code used to train the model is included in the model folder, but it wasn't written for public distribution and is only included for reference. Our model is publicly available on Hugging Face.

Built With

Some of the main frameworks and libraries that we used in our project

  • Next
  • React
  • Flask
  • Hugging Face

Installation and Setup

Our service is no longer hosted on https://tone-me.onrender.com because of cost reasons. However, here is how you can set up Tone-Me for use on your local computer.

We recommend that you install the following packages within a virtual environment.

  • npm
    npm install
  • pip
    pip install -r requirements.txt

Then, you can run python3 app.py in one shell, and npm run dev in another shell, and access your website at localhost:3000.

License

Distributed under the MIT License. See License.txt for more information.

Contact

Chris Ge - cge7@mit.edu | Riddhi Bhagwat - riddhib@mit.edu | Anshul Gupta – anshulg@mit.edu

Acknowledgments

This project would not have been possible without the support from AIM Labs. We're especially grateful to Sagnik Anupam for all of his advice and the opportunity we had to present during Demo Day.