開始使用免費開始

降維後的準確率

你將透過降維來降低過度擬合。在這個例子中,你會採用相當激進的降維作法:只選擇單一欄位,該欄位能有效區分性別。你會重新進行訓練/測試集切分、模型擬合與預測,並比較測試資料與訓練資料的準確率。

所有相關套件與 y 都已預先載入。

本練習屬於課程

Python 的降維

檢視課程

練習說明

  • ansur_df 中只選取頸圍欄位('neckcircumferencebase')。
  • 進行資料切分、建立分類器實例並擬合資料。這部分已為你完成。
  • 再次分別計算訓練集與測試集的準確率。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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")
編輯並執行程式碼