We are happy to announce the support of data normalization when generating features across supported processing blocks for time-series datasets in Edge Impulse Studio.
In your processing block’s Generate features tab, it is now possible to perform standardization, or z-score normalization, on your data using scikit-learn’s StandardScaler. This keeps features on comparable scales, may speed up training, and often boosts accuracy and reducing loss. See the data normalization section in our processing block documentation.
When to normalize: If any features differ in magnitude by ~10× or more, normalize.
Data Normalization
Data normalization ensures all features in your dataset are on a similar numeric scale, improving model performance. This is especially important when your data has features with very different ranges as it prevents one feature from dominating the model and helps the learning optimizer converge faster.
Project example
For this example, I trained a project based on our tabular data documentation example, which includes heart rate and heart rate variability derived features.
- HR range: 30 - 180
- HRV time-domain features range: 0 - 2,000+
Without normalization, HRV feature values will overwhelm HR values in scale, skewing the results of the model even if HR is equally important.

Before normalization we can see the model performs well at 94.6% accuracy with a loss of 0.36, which is reasonable but may not be acceptable for your use case.

By enabling normalization, the mean and standard deviation of each feature is calculated, and standardization is applied during the feature generation step in both training and inference. As shown above the model performance improves to 99.1% accuracy with a loss of 0.02.
Tips
- Some processing blocks built-into Edge Impulse Studio (like the image processing) already output normalized values, but for generic numeric or multi-sensor data, enabling normalization is recommended.
- The normalization process is based on scikit-learn's StandardScaler, which standardizes features by removing the mean and scaling to unit variance.
- You can find the normalization option in the processing block settings.
How to enable normalization
You can enable normalization in Edge Impulse by selecting the Normalize features option in the processing block's Generate features tab.
- Open your Impulse design.
- Select your Processing block.
- Go to the Generate features tab.
- Enable Normalize features > Normalize using scikit-learn’s StandardScaler.
- Click Generate features and retrain your model.

We invite you to try out this new data normalization feature and see the difference it makes in your model performance.
As always, we value your feedback and suggestions, which play a critical role in the ongoing improvement and development of our features. If you have any, please reach out on our forum. For more information, guidance, and examples, feel free to explore our documentation.