Βίντεο: Savings and Loan Crisis: Explained, Summary, Timeline, Bailout, Finance, Cost, History 2024
Για να μπορέσετε να τροφοδοτήσετε τον ταξινομητή SVM (SVM) με τα δεδομένα που φορτώθηκαν για προγνωστική ανάλυση, πρέπει να διαιρέσετε το πλήρες σύνολο δεδομένων σε ένα σετ εκπαίδευσης και δοκιμή.
Ευτυχώς, το scikit-learn έχει υλοποιήσει μια λειτουργία που θα σας βοηθήσει να διαιρέσετε εύκολα το πλήρες σύνολο δεδομένων. Η συνάρτηση train_test_split λαμβάνει ως είσοδο ένα ενιαίο σύνολο δεδομένων και μια ποσοστιαία τιμή. Η ποσοστιαία τιμή χρησιμοποιείται για τον προσδιορισμό του μεγέθους του σετ δοκιμών. Η συνάρτηση επιστρέφει δύο σύνολα δεδομένων: το σύνολο δεδομένων δοκιμής (με το καθορισμένο μέγεθος) και το σύνολο δεδομένων κατάρτισης (το οποίο χρησιμοποιεί τα υπόλοιπα δεδομένα).
Συνήθως, μπορεί κανείς να πάρει περίπου το 70-80 τοις εκατό των δεδομένων για να χρησιμοποιήσει ως σύνολο εκπαίδευσης και να χρησιμοποιήσει τα υπόλοιπα δεδομένα ως σύνολο δοκιμών. Αλλά το σύνολο δεδομένων Iris είναι πολύ μικρό (μόνο 150 περιπτώσεις), έτσι μπορείτε να πάρετε το 90 τοις εκατό από αυτό για να εκπαιδεύσετε το μοντέλο και να χρησιμοποιήσετε τα άλλα 10 τοις εκατό ως δεδομένα δοκιμών για να δείτε πώς το πρότυπο πρότυπο σας θα εκτελέσει.
Πληκτρολογήστε τον παρακάτω κώδικα για να διαιρέσετε το σύνολο δεδομένων σας: >>>> από την εισαγωγή sklearn cross_validation >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (iris data, iris target, test_size = 0.10, random_state = 111)
Η πρώτη γραμμή εισάγει βιβλιοθήκη διασταυρωμένης επικύρωσης στην συνεδρία σας. Η δεύτερη γραμμή δημιουργεί το σύνολο δοκιμών από το 10% του δείγματος.
Το y_train θα περιέχει 135 ετικέτες στην ίδια σειρά με τις 135 παρατηρήσεις.
Το x_test θα περιέχει 15 (ή 10 τοις εκατό) παρατηρήσεις και τα χαρακτηριστικά του.
Το y_test θα περιέχει 15 ετικέτες στην ίδια σειρά με τις 15 παρατηρήσεις.
Ο παρακάτω κώδικας επαληθεύει ότι η διάσπαση είναι αυτό που περιμένατε:
Πολλοί αρχάριοι στον τομέα των προγνωστικών αναλύσεων ξεχνούν να χωρίσουν τα σύνολα δεδομένων - κάτι που εισάγει ένα σοβαρό σχεδιαστικό ελάττωμα στο έργο. Εάν οι πλήρεις 150 περιπτώσεις φορτώθηκαν στο μηχάνημα ως δεδομένα εκπαίδευσης, αυτό δεν θα άφηνε κανένα αόρατο δεδομένο για τη δοκιμή του μοντέλου. Στη συνέχεια, θα πρέπει να καταφύγετε σε επαναχρησιμοποίηση ορισμένων περιπτώσεων εκπαίδευσης για να δοκιμάσετε το μοντέλο πρόβλεψης.
Θα δείτε ότι σε μια τέτοια κατάσταση, το μοντέλο πάντα προβλέπει τη σωστή κατηγορία - επειδή χρησιμοποιείτε τα ίδια ακριβή δεδομένα που χρησιμοποιήσατε για την εκπαίδευση του μοντέλου.Το μοντέλο έχει ήδη δει αυτό το πρότυπο πριν? δεν θα έχει κανένα πρόβλημα απλώς να επαναλαμβάνει αυτό που βλέπει. Ένα πρότυπο πρότυπο εργασίας πρέπει να κάνει προβλέψεις για δεδομένα που δεν έχει δει ακόμη.
Όταν έχετε μια παρουσία ενός ταξινομητή SVM, ενός συνόλου δεδομένων εκπαίδευσης και ενός συνόλου δεδομένων δοκιμής, είστε έτοιμοι να εκπαιδεύσετε το μοντέλο με τα δεδομένα εκπαίδευσης. Η πληκτρολόγηση του ακόλουθου κώδικα στον διερμηνέα θα κάνει ακριβώς αυτό: >>>> svmClassifier. fit (X_train, y_train)
Αυτή η γραμμή κώδικα δημιουργεί ένα μοντέλο εργασίας για την πραγματοποίηση προβλέψεων. Συγκεκριμένα, ένα μοντέλο πρόβλεψης που θα προβλέψει ποια κλάση του Iris ανήκει σε ένα νέο μη ετικετοποιημένο σύνολο δεδομένων. Η εντολή svmClassifier θα έχει πολλές μεθόδους που μπορείτε να καλέσετε για να κάνετε διάφορα πράγματα.
Για παράδειγμα, μετά την κλήση της μεθόδου προσαρμογής, η πιο χρήσιμη μέθοδος κλήσης είναι η μέθοδος πρόβλεψης. Αυτή είναι η μέθοδος στην οποία θα τροφοδοτήσετε νέα δεδομένα. σε αντάλλαγμα, προβλέπει το αποτέλεσμα.