Skip to main content

Welcome to the workshop!

Workshop
In Progress

Welcome to Fairness in Facial Emotion Recognition!

Today's icebreaker:

Share one algorithmic-bias headline that surprised you lately.

Put you answers in the chat.

Today's agenda:

ReviewRecap key concepts from async unit 3.15 minsDemoWe'll provide a guided walkthrough of how to:

  • Prepare & Explore: set up imports, seeds, and GPU determinism; load data and inspect class counts with sample images.

  • Derive Skin-Tone Proxy: extract cheek patches, convert to CIE-Lab, compute ITA, and visualise six-bin distribution.

  • Train & Evaluate CNN: fit with class-weighted loss, L2 decay, dropout, early stopping, and LR schedule; review classification report and confusion matrix.

  • Assess Fairness: calculate per-bin FNR (omit bins < 40), plot FNR bars, and note the max-gap.

  • Mitigate & Reflect: run a temperature-scaling grid search, gauge its effect on FNR gaps, and discuss data-coverage vs. calibration trade-offs. 10 minsPracticeYou'll get hands-on practice with the techniques shown in the demo.25 minsClosingKey takeaways and next steps.10 mins## Today's learning objectives:

  • Derive and bin a skin-tone proxyfrom face crops into six demographic groups for downstream fairness analysis.

  • Train and evaluatea CNN baseline using class-weighted loss and regularisation to establish raw performance benchmarks.

  • Compute and visualise fairness-aware metrics(e.g. per-bin FNR, max-gap) on disaggregated slices—skipping under-represented bins—and interpret disparate error patterns.

  • Apply lightweight mitigations(post-hoc temperature scaling; tone-aware instance re-weighting) and critically assess their impacts on the fairness–accuracy trade-off and business governance KPIs.