Cas de mise à l'échelle dans le monde réel
1. Analyse de données financières
Normalisation des prix des actions
import numpy as np
import pandas as pd
def normalize_stock_prices(prices):
return (prices - prices.min()) / (prices.max() - prices.min())
stock_prices = np.array([50, 55, 60, 52, 58])
normalized_prices = normalize_stock_prices(stock_prices)
2. Préparation des caractéristiques (features) pour l'apprentissage automatique
Préparation des caractéristiques pour les réseaux de neurones
from sklearn.preprocessing import MinMaxScaler
from sklearn.model_selection import train_test_split
def prepare_ml_features(X):
scaler = MinMaxScaler()
X_scaled = scaler.fit_transform(X)
return X_scaled, scaler
## Example dataset preparation
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
X_train_scaled, scaler = prepare_ml_features(X_train)
X_test_scaled = scaler.transform(X_test)
3. Traitement d'images
Normalisation des canaux de couleur
import numpy as np
def normalize_image_channels(image):
return (image - image.min()) / (image.max() - image.min())
## RGB image normalization
rgb_image = np.random.randint(0, 256, (100, 100, 3))
normalized_image = np.apply_along_axis(normalize_image_channels, 2, rgb_image)
4. Traitement des données de capteurs
Calibration des lectures de capteurs IoT
def calibrate_sensor_readings(readings, min_val, max_val):
return [(reading - min_val) / (max_val - min_val) * 100
for reading in readings]
temperature_readings = [18.5, 20.3, 22.1, 19.7]
calibrated_readings = calibrate_sensor_readings(
temperature_readings,
min(temperature_readings),
max(temperature_readings)
)
Comparaison des méthodes de mise à l'échelle
Cas d'utilisation |
Méthode de mise à l'échelle |
Avantage clé |
Réseaux de neurones (Neural Networks) |
Mise à l'échelle MinMax |
Entrée bornée |
Régression linéaire |
Mise à l'échelle standard |
Moyenne nulle |
Détection d'anomalies |
Mise à l'échelle robuste |
Résistance aux valeurs aberrantes |
5. Normalisation des séries temporelles
Préparation des séries temporelles pour la prévision
import pandas as pd
from sklearn.preprocessing import MinMaxScaler
def prepare_time_series(series):
scaler = MinMaxScaler()
scaled_series = scaler.fit_transform(series.values.reshape(-1, 1))
return scaled_series, scaler
## Example time series scaling
time_series_data = pd.Series([100, 120, 110, 130, 125])
scaled_series, scaler = prepare_time_series(time_series_data)
Visualisation du flux de travail de mise à l'échelle
graph TD
A[Données brutes] --> B[Identifier les besoins de mise à l'échelle]
B --> C{Choisir la méthode de mise à l'échelle}
C -->|Réseau de neurones| D[Mise à l'échelle MinMax]
C -->|Analyse statistique| E[Mise à l'échelle standard]
C -->|Données riches en valeurs aberrantes| F[Mise à l'échelle robuste]
D --> G[Données mises à l'échelle prêtes pour le traitement]
E --> G
F --> G
Bonnes pratiques pour la mise à l'échelle dans le monde réel
- Comprendre toujours les caractéristiques de vos données.
- Choisir la méthode de mise à l'échelle en fonction du cas d'utilisation spécifique.
- Maintenir une mise à l'échelle cohérente entre les ensembles de données d'entraînement et de test.
- Préserver les relations des données d'origine.
- Gérer les cas limites potentiels et les valeurs aberrantes.
En maîtrisant ces techniques de mise à l'échelle dans le monde réel avec LabEx, vous serez équipé pour relever divers défis de prétraitement de données dans de multiples domaines.