maurocarlu/pronuncIAtion

0

stars

141

commits

Python

primary language

Jan 27, 2026

updated

README

πŸŽ™οΈ DeepLearning-Phoneme

Riconoscimento fonetico IPA da audio con architettura Ensemble (WavLM + XLS-R)

Sistema di Automatic Phoneme Recognition (APR) e Pronunciation Scoring per speaker non-nativi, basato su ensemble di modelli WavLM e XLS-R con Late Fusion.


πŸ“š Documentazione

La documentazione completa del progetto Γ¨ disponibile nella cartella docs/:


✨ Features

  • Riconoscimento fonemi IPA da audio inglese
  • Ensemble SOTA con WavLM + XLS-R e Late Fusion
  • Weighted Layer Sum per combinazione ottimale dei layer
  • Benchmark scientifico su SpeechOcean762 (speaker non-nativi)
  • Supporto multi-ambiente: Locale, Google Colab, Kaggle

πŸ€– Modelli Implementati

ModelloParamsModeVRAMStatusScript
HuBERT Large317MFine-tuning~12GBπŸ† Best PER: 8.84%train_hubert.py
WavLM Weighted317MFine-tuning~12GBπŸ† Best AUC: 0.8523train_weighted.py
Late Fusion634MInference~16GBπŸ†• NEWevaluate_hubert_fusion.py
Early Fusion634MFrozen+CTC~20GBπŸ†• NEWtrain_early_fusion.py
WavLM Large317MFine-tuning~12GBβœ…train_wavlm.py
XLS-R 300M300MFine-tuning~10GBβœ…train_xlsr.py
Whisper (Encoder)244MLast 4 layers~8GB❌train_whisper_encoder.py
Baseline MLP2MLinear Probe~4GBβœ…train_baseline_mlp.py

Dettagli completi: docs/MODEL_ZOO.md

Quick Start

Installazione

git clone https://github.com/maurocarlu/DeepLearning-Phoneme.git
cd DeepLearning-Phoneme
pip install -r requirements.txt

Valutazione Modelli

# Valutazione modelli standard (WavLM, HuBERT, XLS-R)
python scripts/evaluation/evaluate_speechocean.py --model-path outputs/final_model

# Valutazione SpeechTokenizer (Discrete)
python scripts/evaluation/evaluate_speechtokenizer.py --model-path outputs/speechtokenizer

Training

Vedi il notebook unificato per addestrare qualsiasi modello: notebooks/unified_trainer.ipynb

Struttura Progetto

DeepLearning-Phoneme/
β”œβ”€β”€ docs/                       # πŸ“˜ DOCUMENTAZIONE COMPLETA
β”‚   β”œβ”€β”€ MODEL_ZOO.md            # Dettagli modelli
β”‚   β”œβ”€β”€ ARCHITECTURE_DETAILS.md # Dettagli tecnici
β”‚   └── BENCHMARK_GUIDE.md      # Guida valutazione
β”œβ”€β”€ notebooks/                  # Jupyter notebooks
β”œβ”€β”€ scripts/                    # Script Python
β”‚   β”œβ”€β”€ training/               # Script di training
β”‚   β”œβ”€β”€ evaluation/             # Script di valutazione
β”‚   └── data/                   # Processing dati
β”œβ”€β”€ src/                        # Moduli sorgente
└── EXPERIMENTS.md              # Log risultati

Autori

Progetto universitario - Deep Learning, Magistrale Anno 2

Contributors

maurocarlu

141 commits

maurocarlu/pronuncIAtion

0

stars

141

commits

Python

primary language

Jan 27, 2026

updated

README

πŸŽ™οΈ DeepLearning-Phoneme

Riconoscimento fonetico IPA da audio con architettura Ensemble (WavLM + XLS-R)

Sistema di Automatic Phoneme Recognition (APR) e Pronunciation Scoring per speaker non-nativi, basato su ensemble di modelli WavLM e XLS-R con Late Fusion.


πŸ“š Documentazione

La documentazione completa del progetto Γ¨ disponibile nella cartella docs/:


✨ Features

  • Riconoscimento fonemi IPA da audio inglese
  • Ensemble SOTA con WavLM + XLS-R e Late Fusion
  • Weighted Layer Sum per combinazione ottimale dei layer
  • Benchmark scientifico su SpeechOcean762 (speaker non-nativi)
  • Supporto multi-ambiente: Locale, Google Colab, Kaggle

πŸ€– Modelli Implementati

ModelloParamsModeVRAMStatusScript
HuBERT Large317MFine-tuning~12GBπŸ† Best PER: 8.84%train_hubert.py
WavLM Weighted317MFine-tuning~12GBπŸ† Best AUC: 0.8523train_weighted.py
Late Fusion634MInference~16GBπŸ†• NEWevaluate_hubert_fusion.py
Early Fusion634MFrozen+CTC~20GBπŸ†• NEWtrain_early_fusion.py
WavLM Large317MFine-tuning~12GBβœ…train_wavlm.py
XLS-R 300M300MFine-tuning~10GBβœ…train_xlsr.py
Whisper (Encoder)244MLast 4 layers~8GB❌train_whisper_encoder.py
Baseline MLP2MLinear Probe~4GBβœ…train_baseline_mlp.py

Dettagli completi: docs/MODEL_ZOO.md

Quick Start

Installazione

git clone https://github.com/maurocarlu/DeepLearning-Phoneme.git
cd DeepLearning-Phoneme
pip install -r requirements.txt

Valutazione Modelli

# Valutazione modelli standard (WavLM, HuBERT, XLS-R)
python scripts/evaluation/evaluate_speechocean.py --model-path outputs/final_model

# Valutazione SpeechTokenizer (Discrete)
python scripts/evaluation/evaluate_speechtokenizer.py --model-path outputs/speechtokenizer

Training

Vedi il notebook unificato per addestrare qualsiasi modello: notebooks/unified_trainer.ipynb

Struttura Progetto

DeepLearning-Phoneme/
β”œβ”€β”€ docs/                       # πŸ“˜ DOCUMENTAZIONE COMPLETA
β”‚   β”œβ”€β”€ MODEL_ZOO.md            # Dettagli modelli
β”‚   β”œβ”€β”€ ARCHITECTURE_DETAILS.md # Dettagli tecnici
β”‚   └── BENCHMARK_GUIDE.md      # Guida valutazione
β”œβ”€β”€ notebooks/                  # Jupyter notebooks
β”œβ”€β”€ scripts/                    # Script Python
β”‚   β”œβ”€β”€ training/               # Script di training
β”‚   β”œβ”€β”€ evaluation/             # Script di valutazione
β”‚   └── data/                   # Processing dati
β”œβ”€β”€ src/                        # Moduli sorgente
└── EXPERIMENTS.md              # Log risultati

Autori

Progetto universitario - Deep Learning, Magistrale Anno 2

Contributors

maurocarlu

141 commits

Languages

Python

77.6%

Jupyter Notebook

21.8%