Middle — Senior
Jak použít křížovou validaci k hodnocení modelu?
sobes.tech AI
Odpověď od AI
Křížová validace je metoda hodnocení kvality modelu strojového učení, která pomáhá ověřit, jak dobře bude model fungovat na nových datech. Hlavní myšlenkou je rozdělit původní datovou sadu na několik částí (folds), trénovat model na některých částech a testovat jej na zbývajících.
Nejčastější variantou je křížová validace k-fold:
- Rozdělte data na k stejných částí.
- Pro každou z těchto částí:
- Trénujte model na ostatních k-1 částech.
- Otestujte model na aktuální části (validace).
- Průměr metrik ze všech k iterací poskytne spolehlivější odhad kvality modelu.
Toto pomáhá zabránit přeučení a získat objektivnější hodnocení než jednoduché rozdělení na tréninkové a testovací sady.
Příklad v Pythonu s použitím scikit-learn:
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
iris = load_iris()
X, y = iris.data, iris.target
model = RandomForestClassifier()
scores = cross_val_score(model, X, y, cv=5) # 5-násobná křížová validace
print(f"Průměrná přesnost: {scores.mean():.2f}")