Normalise by “loudness”
Code to normalise your audio by “loudness”, I only used this for the train set
import soundfile as sf
import pyloudnorm as pyln

def get_loudness_normalised(sa, sr):
    # peak normalize audio to -1 dB
    peak_normalized_audio = pyln.normalize.peak(sa, -1.0)

    # measure the loudness first 
    meter = pyln.Meter(sr) # create BS.1770 meter
    loudness = meter.integrated_loudness(sa)

    # loudness normalize audio to -12 dB LUFS
    loudness_normalized_audio = pyln.normalize.loudness(sa, loudness, -12.0)

    return loudness_normalized_audio

def speech_file_to_array_loud_norm_fn(batch):
    speech_array, sampling_rate = torchaudio.load(batch["path"])
    
    # DO loudness normalisation
    sa = get_loudness_normalised(speech_array[0].numpy(), sampling_rate)
    
    batch["speech"] = sa
    batch["sampling_rate"] = sampling_rate
    batch["target_text"] = batch["sentence"]
    return batch

And apply via map:
common_voice_train = common_voice_train.map(speech_file_to_array_loud_norm_fn)