Dimensionality reduction के बाद accuracy
आप dimensionality reduction की मदद से overfit को कम करेंगे. इस बार, आप एक काफ़ी सख्त तरीका अपनाएँगे: केवल एक ऐसा कॉलम चुनकर जो जेंडर में फर्क बताने के लिए अच्छा संकेत देता है. आप train-test split, मॉडल fit और prediction वाले स्टेप्स दोहराएँगे ताकि training और test डेटा पर accuracy की तुलना कर सकें.
सभी ज़रूरी पैकेज और y पहले से लोड हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Dimensionality Reduction
अभ्यास निर्देश
ansur_dfसे सिर्फ़ neck circumference ('neckcircumferencebase') वाला कॉलम चुनें.- डेटा को split करें, एक classifier बनाएँ और डेटा पर fit करें. यह आपके लिए कर दिया गया है.
- एक बार फिर training और test सेट दोनों पर accuracy स्कोर निकालें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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")