I am watching a tutorial on using mel spectrograms to classify the audio's genre via CNN. My question is why apply local min-max normalization to each individual mel spectrogram? What I mean by local is that the min and max value is calculated from the individual mel spectrogram and then min-max normalization is applied; thus, you have to get min and max for each mel spectrogram and then apply the min-max normalization based on its own min and max.

Why apply this local min-max normalization and not take into consideration of the whole training sets min and max first, then apply the normalization. Also, why not do Standardization (Z-score Normalization)?


1 Answer 1


Local normalization is commonly done in time series classification (TSC) tasks - not just for audio classification. But it may not be appropriate for every TSC task. The purpose is to remove discrepancies in the data that are due to the way the data are collected, which are not important to the classification task but a classifier may confuse with the signal. To give an example from the audio domain, if you are building an app that mobile phone users can use to find out the genre of a song they are listening to from another source, your app has to deal with differences in the input due to how close the phone is to the source. Local normalization will help with this problem.

Your quesiton about using z-normalization is a good one. Min/max normalisation is susceptible to outliers, so I'm not sure it's a good choice. If you have access to ACM journal articles, the paper Addressing Big Data Time Series: Mining Trillions of Time Series Subsequences Under Dynamic Time Warping by Rakthanmanon et al. has a section discussing the importance of local z-normalization.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.