Feature scaling is a crucial step in many machine learning algorithms. It involves transforming numerical features to have a similar range of values. This prevents features with larger magnitudes from dominating the learning process and improves the convergence of algorithms like gradient descent.
# Python Example
from sklearn.preprocessing import MinMaxScaler
data = [[1, 2], [3, 4], [5, 6]]
scaler = MinMaxScaler()
scaled_data = scaler.fit_transform(data)
print(scaled_data)
This method scales features to a range between 0 and 1.
# Python Example
from sklearn.preprocessing import StandardScaler
data = [[1, 2], [3, 4], [5, 6]]
scaler = StandardScaler()
scaled_data = scaler.fit_transform(data)
print(scaled_data)
This method centers the data around a mean of 0 and scales it to have a standard deviation of 1.
- Use Min-Max scaling when your data is bounded between a specific range (e.g., 0 and 1) and you don't want to introduce any arbitrary scaling factor. - Use Standardization when your data is not bounded, and you want to preserve the data's distribution.
For more information, see our guides on Data Normalization and Data Transformation.