Sobes.tech
Middle

Czym jest walidacja krzyżowa i do czego służy?

sobes.tech AI

Odpowiedź od AI

Walidacja krzyżowa to metoda oceny jakości modelu uczenia maszynowego, która pomaga sprawdzić, jak dobrze model będzie działał na nowych, niewidzialnych danych. Główny pomysł polega na podzieleniu oryginalnego zbioru danych na kilka części (foldów), na przykład 5 lub 10. Następnie model jest trenowany na wszystkich częściach z wyjątkiem jednej, a testowany na pozostałej. Proces ten powtarza się, aż każda część zostanie użyta jako test.

Pozwala to uzyskać bardziej wiarygodną ocenę wydajności modelu, zmniejszyć nadmierne dopasowanie i wybrać najlepsze parametry. Na przykład, w 5-krotnej walidacji krzyżowej dane dzieli się na 5 części, a model trenuje się 5 razy, za każdym razem na 4 częściach, testując na 1.

Przykład w Pythonie z użyciem sklearn:

from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris

X, y = load_iris(return_X_y=True)
model = RandomForestClassifier()
scores = cross_val_score(model, X, y, cv=5)
print(f"Średnia dokładność: {scores.mean():.2f}")