Progressive Refinement: An Iterative Pseudo-Labeling Approach for Mandarin-English Code-Switching ASR

Peter Bubenik · Apple ML · · Source
Image for Progressive Refinement: An Iterative Pseudo-Labeling Approach for Mandarin-English Code-Switching ASR

Step-by-Step Teaching

Step 1: Understanding the Core Problem

What is Code-Switching (CS)?

Code-switching is when a speaker alternates between two or more languages within the same conversation or even sentence.

Real Example:

"我今天 went to the market 买了 some vegetables" (Mixing Mandarin and English)

Why is this Hard for ASR?

ChallengeExplanation
Limited training dataFew recordings exist with natural CS speech
Unpredictable switchingThe model cannot anticipate when language changes
Acoustic confusionPhonetic systems differ between languages

💡 Key Insight: Traditional ASR models are trained on one language. CS breaks that assumption entirely.


Step 2: Understanding Pseudo-Labeling

What is Pseudo-Labeling?

Pseudo-labeling is a semi-supervised learning technique where:

  1. You have a small labeled dataset (expensive, rare)
  2. You have a large unlabeled dataset (cheap, abundant)
  3. You use your existing model to automatically generate labels for unlabeled data
  4. You train on both real labels + generated (pseudo) labels

Simple Analogy:

Imagine a student (model) who has read 10 textbooks (labeled data). You then give them 1,000 articles (unlabeled data) and ask them to annotate the articles themselves, then study from their own annotations.

Unlabeled Audio → Existing Model → Pseudo-Labels
                                        ↓
              Real Labels + Pseudo-Labels → Better Model

Why Does This Work?

  • More data generally = better model
  • Even imperfect labels carry useful patterns
  • The model learns from its own predictions iteratively

Step 3: The Three-Phase Framework

Phase 1: Pseudo-Label Generation

Large Unlabeled CS Corpus
         ↓
   Baseline ASR Model
         ↓
   Pseudo-Labels Generated
         ↓
   Semi-Supervised Dataset Created
  • The baseline model transcribes thousands of unlabeled CS audio files
  • These transcriptions become pseudo-labels
  • Result: A much larger (though imperfect) training dataset

⚠️ Important Note: Pseudo-labels contain errors. The next phases handle this.


Phase 2: Two-Stage Bilingual Model Training

This phase has two sub-stages:

Sub-Stage A: Pre-Training

Large Semi-Supervised Dataset (Pseudo-labeled)
              ↓
        Model Pre-Training
        (Learns general bilingual patterns)
  • Model learns broad Mandarin AND English acoustic/linguistic patterns
  • Think of this as building a strong foundation

Sub-Stage B: Fine-Tuning

Small Supervised CS Dataset (Real Labels)
              ↓
        Fine-Tuning Pre-trained Model
        (Specializes in CS scenarios)
  • Model is refined using high-quality, human-labeled CS data
  • Corrects errors introduced by pseudo-labels
  • Specializes the model for CS-specific patterns

💡 Why Two Stages? Pre-training on large noisy data + fine-tuning on small clean data is more effective than either approach alone.


Phase 3: Iterative Refinement

This is the "Progressive" part of the approach:

Round 1: Basic Model → Generate Better Pseudo-Labels
                              ↓
Round 2: Improved Model → Generate Even Better Pseudo-Labels
                              ↓
Round 3: Further Improved Model → ...
                              ↓
         Final High-Accuracy CS-ASR Model

Each iteration:

  • Uses the improved model to re-label unlabeled data
  • New pseudo-labels are more accurate than previous round
  • Model trains again on higher-quality data
  • Accuracy improves progressively

Analogy:

Like a student who writes practice essays, gets feedback, rewrites them better, gets more feedback — each cycle producing higher quality work.


Step 4: Measuring Success — Mix Error Rate (MER)

What is MER?

Mix Error Rate is a metric specifically designed for code-switching ASR evaluation.

  • It measures errors across both languages simultaneously
  • Lower MER = Better performance

Results Achieved:

Test SubsetMER Reduction
devman (Mandarin-dominant)6.35% reduction
devsge (Singapore English-dominant)8.29% reduction

💡 These reductions are significant in ASR research, where even 1-2% improvements are noteworthy.


Step 5: Connecting to Broader Concepts

How This Relates to Other Work

Self-Training / Pseudo-Labeling
         ├── Computer Vision (image labeling)
         ├── NLP (text classification)
         ├── Speech Recognition ← This paper
         │        ├── Monolingual (single language)
         │        ├── Low-resource languages
         │        └── Code-Switching ← Novel application here
         └── Speech Translation

Key Contribution of This Paper:

First application of iterative pseudo-labeling specifically to Code-Switching ASR — previously this technique was used for monolingual or low-resource settings.


Summary: The Complete Picture

PROBLEM: Limited CS labeled data
         ↓
SOLUTION: Iterative Pseudo-Labeling
         ↓
PHASE 1: Generate pseudo-labels from unlabeled data
         ↓
PHASE 2: Pre-train (large noisy data) → Fine-tune (small clean data)
         ↓
PHASE 3: Repeat — each cycle improves label quality
         ↓
RESULT: 6-8% MER reduction on CS benchmarks

Quick Self-Check Questions

  1. What is code-switching and why does it challenge ASR?
  2. What is the difference between labeled and pseudo-labeled data?
  3. Why is two-stage training (pre-train + fine-tune) better than single-stage?
  4. What makes the approach "iterative" and why does iteration help?
  5. What does a lower MER score indicate?

✅ If you can answer all five questions confidently, you have mastered the core concepts of this paper.

More to study