Η διασταυρούμενη επικύρωση είναι μια τεχνική που χρησιμοποιείται για την αξιολόγηση της απόδοσης των εποπτευόμενων μοντέλων μάθησης. Βοηθά να διασφαλιστεί ότι το μοντέλο γενικεύει καλά στα αόρατα δεδομένα χωρίζοντας το σύνολο δεδομένων σε πολλαπλά υποσύνολα για την εκπαίδευση και τις δοκιμές.

Κατανόηση της Διασταύρωσης

Η διασταυρούμενη επικύρωση περιλαμβάνει διαίρεση του συνόλου δεδομένων σε διάφορα μέρη, ή πτυχώσεις. Το μοντέλο εκπαιδεύεται σε ένα υποσύνολο αυτών των πτυχώσεων και δοκιμάζεται στην υπόλοιπη πτυχωμάτωση. Αυτή η διαδικασία επαναλαμβάνεται πολλές φορές, με διαφορετικές πτυχώσεις που χρησιμοποιούνται για δοκιμές κάθε φορά. Τα αποτελέσματα στη συνέχεια είναι κατά μέσο όρο για να παρέχουν μια συνολική μετρική απόδοση.

Τύποι διασταυρώσεων

Οι πιο συνηθισμένοι τύποι περιλαμβάνουν:

  • k-Fold Cross-Validation:[[LFT:1]] Διαιρεί τα δεδομένα σε k ίσα μέρη, εκπαίδευση σε k-1 μέρη και δοκιμές στο υπόλοιπο μέρος.
  • Εδραιωμένο k-Fold: Εξασφαλίζει ότι κάθε πτυχή διατηρεί την ταξική κατανομή ολόκληρου του συνόλου δεδομένων.
  • Φύγε-One-Out (LOO): Χρησιμοποιεί ένα μόνο σημείο δεδομένων για δοκιμές και τα υπόλοιπα για εκπαίδευση, επαναλαμβανόμενα για κάθε σημείο δεδομένων.

Εφαρμογή της Διασταύρωσης στην πράξη

Οι περισσότερες βιβλιοθήκες μηχανικής μάθησης παρέχουν ενσωματωμένες λειτουργίες για διασταυρούμενη επικύρωση. Για παράδειγμα, στο scikit-learn της Python, η λειτουργία απλοποιεί τη διαδικασία. Πρέπει να καθορίσετε το μοντέλο, το σύνολο δεδομένων και τον αριθμό των πτυχώσεων.

Παράδειγμα ψαλιδίσματος κώδικα:

από το sklearn.model select import cross val score

σκορ = cross val score(μοντέλο, X, y, cv=5)

Αυτός ο κωδικός εκτελεί 5-πλάσια διασταυρούμενη επικύρωση και επιστρέφει τα σκορ για κάθε πτυχή.