เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

กำหนด aggregated measures

ตอนนี้จะมากำหนด performance measures กัน ชุดข้อมูล knowledge_train_data ถูกโหลดไว้ให้แล้ว รวมถึงแพ็กเกจ mlr และ tidyverse และโค้ดต่อไปนี้ก็ถูกรันไปแล้วเช่นกัน:

task <- makeClassifTask(data = knowledge_train_data, 
                        target = "UNS")

lrn <- makeLearner(cl = "classif.nnet", fix.factors.prediction = TRUE)

param_set <- makeParamSet(
  makeIntegerParam("size", lower = 1, upper = 5),
  makeIntegerParam("maxit", lower = 1, upper = 300),
  makeNumericParam("decay", lower = 0.0001, upper = 1)
)

ctrl_random <- makeTuneControlRandom(maxit = 10)

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การปรับ Hyperparameter ใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ฟังก์ชัน setAggregation ซึ่งทำหน้าที่รวม (aggregate) ค่าเบี่ยงเบนมาตรฐานของ performance metrics
  • นำ setAggregation ไปใช้กับค่าเฉลี่ยความผิดพลาดในการจำแนกประเภท (mean misclassification error) และความแม่นยำหลังการ resampling (accuracy after resampling)
  • ปรับแต่ง (Optimize) โมเดลโดยใช้ค่าเฉลี่ยความผิดพลาดในการจำแนกประเภท โดยจำไว้ว่าอาร์กิวเมนต์แรกจะถูกใช้สำหรับการ optimization

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Create holdout sampling
holdout <- makeResampleDesc("Holdout", predict = "both")

# Perform tuning
lrn_tune <- tuneParams(learner = lrn, 
                       task = task, 
                       resampling = holdout, 
                       control = ctrl_random, 
                       par.set = param_set,
                       measures = list(___, ___(___, train.mean), ___, ___(___, train.mean)))
แก้ไขและรันโค้ด