Why normalization kills my accuracy I have a binary car sound classifier. I have a feature set that is extracted from audio with size of 48. I have a model(multi layer neural network) that has around %90 accuracy on test and validation sets. (without normalization or Standardization)

I see that the feature values are mostly around [-10, +10] But there are certain features with a mean of 4000. Seeing unproportional values within features I though some feature scaling might improve things. So using scikit-learn tools I tried: 

   - Simply removing the means from features
   - Normalizer
   - Min max scaler
   - Robust Scaler


And all these above ended up dropping my accuracy to ~ %50!  (%100 recall, %50 precision) 

So how is this possible? And what is the correct way to normalize my data?
There could a skewed power envelope or non-stationary data. As a result, off-the-shelf feature scaling could attenuate the signal.

There are feature scaling techniques that tend to work better for audio signals, examples include: RMS level (Root Mean Square Level), Cepstral Mean Subtraction (CMS), RelAtive SpecTrAl (RASTA), kernel filtering, short time gaussianization, stochastic matching, and feature warping. 

You should make sure you understand your raw data and the assumptions of each feature scaling technique before application. Accuracy-driven machine learning might lead to the wrong conclusions.