การ Centering และ Scaling สำหรับการจำแนกประเภท
ในแบบฝึกหัดนี้ จะนำการ scaling และการสร้างโมเดลมารวมกันไว้ใน pipeline เพื่อใช้กับ cross-validation
โจทย์คือสร้าง pipeline สำหรับ scale ฟีเจอร์ในชุดข้อมูล music_df และทำ grid search cross-validation โดยใช้โมเดล logistic regression กับค่าต่าง ๆ ของไฮเปอร์พารามิเตอร์ C ตัวแปรเป้าหมายคือ "genre" ซึ่งเก็บค่าไบนารีโดย rock มีค่าเป็น 1 และแนวเพลงอื่น ๆ มีค่าเป็น 0
ได้ import StandardScaler, LogisticRegression และ GridSearchCV ไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Supervised Learning ด้วย scikit-learn
คำแนะนำการฝึกหัด
- สร้างขั้นตอนสำหรับ pipeline ได้แก่ ออบเจกต์
StandardScaler()ที่ตั้งชื่อว่า"scaler"และโมเดล logistic regression ที่ตั้งชื่อว่า"logreg" - สร้าง
parametersโดยค้นหาค่า float จำนวน 20 ค่าที่มีระยะห่างเท่ากันในช่วง0.001ถึง1.0สำหรับไฮเปอร์พารามิเตอร์Cของโมเดล logistic regression ภายใน pipeline - สร้างออบเจกต์ grid search
- Fit ออบเจกต์ grid search กับข้อมูล training
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Build the steps
steps = [("____", ____()),
("____", ____())]
pipeline = Pipeline(steps)
# Create the parameter space
parameters = {"____": np.____(____, ____, 20)}
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2,
random_state=21)
# Instantiate the grid search object
cv = ____(____, param_grid=____)
# Fit to the training data
cv.____(____, ____)
print(cv.best_score_, "\n", cv.best_params_)