Modelare fără normalizare
Hai să vedem ce se poate întâmpla cu acuratețea modelului tău dacă încerci să modelezi date fără a aplica în prealabil o formă de standardizare.
Aici avem un subset al setului de date wine. Una dintre coloane, Proline, are o varianță extrem de mare față de celelalte coloane. Acesta este un exemplu în care o tehnică precum normalizarea logaritmică ar fi utilă – despre care vei învăța în secțiunea următoare.
Procesul de antrenare a unui model în scikit-learn ar trebui să îți fie deja familiar, așa că nu vom intra în prea multe detalii. Ai deja la dispoziție un model k-nearest neighbors (knn), precum și seturile X și y necesare pentru antrenare și evaluare.
Acest exercițiu face parte din cursul
Preprocesare pentru Machine Learning în Python
Instrucțiuni pentru exercițiu
- Împarte seturile
Xșiyîn seturi de antrenament și de testare, asigurându-te că etichetele de clasă sunt distribuite uniform în ambele seturi. - Antrenează modelul
knnpe caracteristicile și etichetele din setul de antrenament. - Afișează acuratețea modelului
knnpe setul de testare, folosind metoda.score().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Split the dataset into training and test sets
X_train, X_test, y_train, y_test = ____(____, ____, stratify=____, random_state=42)
knn = KNeighborsClassifier()
# Fit the knn model to the training data
knn.____(____, ____)
# Score the model on the test data
print(knn.____(____))