Middle
Come dividere i dati in strati per la validazione?
sobes.tech AI
Risposta dell'AI
La stratificazione dei dati durante la validazione è necessaria per mantenere le proporzioni delle classi o di altre caratteristiche importanti nei set di addestramento e test. Questo è particolarmente importante in presenza di dati sbilanciati.
Come dividere i dati in strati:
- Identificare la caratteristica chiave per la stratificazione (ad esempio, la classe target).
- Utilizzare metodi di suddivisione stratificata, come StratifiedKFold o train_test_split con il parametro stratify in scikit-learn.
Esempio con scikit-learn:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, stratify=y, random_state=42
)
In questo modo si garantisce che la distribuzione delle classi nei set di addestramento e test sia identica, migliorando la qualità della valutazione del modello.