Fit glmnet ด้วย trainControl แบบกำหนดเอง
เมื่อมี trainControl แบบกำหนดเองแล้ว ให้ fit โมเดล glmnet กับชุดข้อมูล "don't overfit" จากวิดีโอ glmnet คือส่วนขยายของโมเดล generalized linear regression (หรือ glm) ที่เพิ่มข้อจำกัดบนขนาดของสัมประสิทธิ์เพื่อป้องกัน overfitting ซึ่งรู้จักกันทั่วไปในชื่อ "penalized" regression และเป็นเทคนิคที่มีประโยชน์มากสำหรับชุดข้อมูลที่มีตัวทำนายจำนวนมากแต่มีค่าน้อย
glmnet สามารถ fit โมเดลแบบ penalized ได้ 2 รูปแบบ ควบคุมด้วยพารามิเตอร์ alpha:
- Ridge regression (หรือ
alpha = 0) - Lasso regression (หรือ
alpha = 1)
ตอนนี้จะ fit โมเดล glmnet กับชุดข้อมูล "don't overfit" โดยใช้ค่าเริ่มต้นที่แพ็กเกจ caret กำหนดไว้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning ด้วย caret ใน R
คำแนะนำการฝึกหัด
- Train โมเดล
glmnetชื่อmodelบนข้อมูลoverfitโดยใช้trainControlแบบกำหนดเองจากแบบฝึกหัดก่อนหน้า (myControl) โดยให้ตัวแปรyเป็นตัวแปรตอบสนอง และตัวแปรอื่น ๆ ทั้งหมดเป็นตัวแปรอธิบาย - แสดงผลโมเดลที่ console
- ใช้ฟังก์ชัน
max()เพื่อหาค่าสูงสุดของสถิติ ROC ที่อยู่ในmodel[["results"]]
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Fit glmnet model: model
model <- train(
___,
___,
method = "glmnet",
trControl = ___
)
# Print model to console
# Print maximum ROC statistic