YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
Speech Enhancement Weights via Deep Denoising Autoencoder (DDAE)
This repository contains pre-trained weights for a Deep Denoising Autoencoder (DDAE) architecture, specifically designed for real-time speech enhancement and noise reduction.
Model Overview
The models provided here are based on a Fully Connected (FC) neural network architecture optimized for spectral domain denoising.
- Architecture: 5 Hidden Layers with 500 neurons each.
- Activation Function: ReLU (Rectified Linear Unit) for non-linear feature extraction.
- Regularization: Batch Normalization and Dropout (10%) to ensure robustness against unseen noise profiles.
- Loss Function: Huber Loss, utilized for its resilience to outliers in spectral data.
Training Specifications
The weights were trained on a composite dataset including the DNS-Challenge (Microsoft) and various environmental noise libraries to cover:
- Household Appliances: Vacuum cleaners, washing machines, etc.
- Vehicles: Traffic noise, engines, and sirens
- Verbal Human Noise: Background chatter and babble noise
- TV & Radio Backgrounds: Designed to suppress secondary audio sources, including background music, news broadcasts, and television chatter.
Deployment Requirements (Inference)
To successfully implement these weights in your application, ensure your digital signal processing (DSP) pipeline matches the following parameters:
| Parameter | Value |
|---|---|
| Sample Rate | 16,000 Hz |
| FFT Size (N_FFT) | 256 |
| Hop Length | 128 (50% Overlap) |
| Input Shape | (129, 126) Spectrogram Magnitude |
Pre-processing Requirements
Loudness Normalization: All input signals must be normalized to -30 dBFS before being fed into the model. This step is critical to prevent signal clipping and ensure the DDAE architecture processes the audio at the optimal energy level. Audio Format: Mono-channel, 16-bit PCM WAV. Spectral Representation: The model interprets audio through Magnitude Spectrograms. By converting 1D audio waves into 2D spectral images (via STFT), the DDAE can leverage spatial patterns to distinguish between speech harmonics and stochastic noise.
π Mathematical Normalization (Feature Scaling)
To ensure the input spectral data matches the distribution the model was trained on, the system applies a specialized linear scaling process. These constants are derived from the global statistics of the DNS-Challenge dataset.
1. Input Transformation (scaled_in)
Before being fed into the DDAE model, the magnitude spectrogram (in dB) is normalized to a range of approximately [-1, 1]:
2. Output Re-scaling (inv_scaled_ou)
The model's prediction (mask/denoised output) is mapped back to the original Decibel scale to restore the dynamic range before audio reconstruction:
Purpose of Scaling:
- Gradient Flow: Keeps input values within the non-saturated region of the ReLU activation functions, preventing the "vanishing gradient" problem during inference.
- Energy Consistency: Ensures that the energy levels of speech and noise are centered, allowing the 500-neuron hidden layers to effectively distinguish between signal and interference.
Usage
These weights are intended for Inference purposes. You can load them into a Keras/TensorFlow model using:
model.load_weights('path_to_file.h5')