Přesnost po redukci dimenzionality
Přeučení modelu teď snížíš pomocí redukce dimenzionality. V tomto případě použiješ poměrně radikální přístup – vybereme jen jeden sloupec, který dobře rozlišuje mezi pohlavími. Zopakuješ rozdělení dat, trénování modelu i predikci, abys mohl/a porovnat přesnost na trénovacích a testovacích datech.
Všechny potřebné balíčky i proměnná y jsou předem načteny.
Toto cvičení je součástí kurzu
Redukce dimenzionality v Pythonu
Pokyny k cvičení
- Z
ansur_dfvyber pouze sloupec obvodu krku ('neckcircumferencebase'). - Rozděl data, vytvoř klasifikátor a natrénuj model. Tento krok je již hotový.
- Znovu vypočítej skóre přesnosti na trénovací i testovací sadě.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Assign just the 'neckcircumferencebase' column from ansur_df to X
X = ansur_df[[____]]
# Split the data, instantiate a classifier and fit the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
svc = SVC()
svc.fit(X_train, y_train)
# Calculate accuracy scores on both train and test data
accuracy_train = accuracy_score(____, svc.predict(____))
accuracy_test = accuracy_score(____, svc.predict(____))
print(f"{accuracy_test:.1%} accuracy on test set vs. {accuracy_train:.1%} on training set")