End-to-end spoken language identification for 7 languages: dataset pipeline, MFCC/Mel-spectrogram modelling, error analysis, and a Dockerised Flask deployment
M.Eng. graduation project: a complete audio ML system that identifies which of seven languages (Arabic, English, French, German, Italian, Portuguese, Spanish) is being spoken in an audio clip, delivered as both a mobile and a web application.
This is the full lifecycle, not just a notebook. Dataset construction pulls from Mozilla Common Voice and VoxForge; feature engineering compares MFCC, Mel-spectrogram, and raw-signal (Conv1D) representations; modelling benchmarks classical ML against deep architectures including a VGG-based CNN; and a dedicated error-analysis stage examines where and why the model fails per language.
The Deployment/ folder contains the Flask web application and Dockerfile used to serve inference.
code/ source code, notebooks and datasets
docs/ reports, papers, slide decks and recordings
Language_Identification_System/-- 64 files, 45.4 MBCompare_Lan/CreateDataSet/DataSetCSV/Deployment/Error_Anaylsis/Inferance/MVP/SampleDataSet/.gitignoreREADME.mdSLI.png
Language_Identification_System.docx-- 4.5 MBLanguage_Identification_System.pptx-- 8.9 MB
speech-recognition · audio-classification · deep-learning · mfcc · mel-spectrogram · flask · docker · cnn
Part of my AI and Data Science portfolio. Work produced during my M.Eng. in AI and Data Science at the University of Ottawa and my B.Sc. in Computer Science.