วิธีใช้ regsubsets() ใน r สำหรับการเลือกรุ่น


คุณสามารถใช้ฟังก์ชัน regsubsets() จากแพ็คเกจ leaps ใน R เพื่อค้นหาเซตย่อยของตัวแปรทำนายที่สร้างแบบจำลองการถดถอยที่ดีที่สุด

ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ

ตัวอย่าง: การใช้ regsubsets() สำหรับการเลือกรุ่นใน R

สำหรับตัวอย่างนี้ เราจะใช้ชุดข้อมูล mtcars ที่สร้างไว้ใน R ซึ่งมีการวัดคุณลักษณะที่แตกต่างกัน 11 รายการสำหรับรถยนต์ 32 คัน

 #view first six rows of mtcars dataset
head(mtcars)

                   mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1

สมมติว่าเราต้องการปรับโมเดลการถดถอยโดยใช้ hp เป็นตัวแปรตอบสนองและตัวแปรทำนายที่เป็นไปได้ต่อไปนี้:

  • mpg
  • น้ำหนัก
  • อึ
  • คิววินาที

เราสามารถใช้ฟังก์ชัน regsubsets() จากแพ็คเกจ leaps เพื่อค้นหาแบบจำลองการถดถอยที่ดีที่สุด:

 library (leaps)

#find best regression model
bestSubsets <- regsubsets(hp ~ mpg + wt + drat + qsec, data=mtcars)

#view results
summary(bestSubsets)

Subset selection object
Call: regsubsets.formula(hp ~ mpg + wt + drat + qsec, data = mtcars)
4 Variables (and intercept)
     Forced in Forced out
mpg FALSE FALSE
wt FALSE FALSE
drat FALSE FALSE
qsec FALSE FALSE
1 subsets of each size up to 4
Selection Algorithm: exhaustive
         mpg wt drat qsec
1 ( 1 ) "*" " " " " " " 
2 (1) " " "*" " " "*" 
3 ( 1 ) “*” “*” “ “ “*” 
4 ( 1 ) “*” “*” “*” “*”

ดาว ( * ) ที่ด้านล่างของผลลัพธ์จะระบุว่าตัวแปรตัวทำนายใดอยู่ในแบบจำลองการถดถอยที่ดีที่สุดสำหรับแบบจำลองที่เป็นไปได้แต่ละแบบโดยมีจำนวนตัวแปรตัวทำนายที่แตกต่างกัน

ต่อไปนี้เป็นวิธีการตีความผลลัพธ์:

สำหรับโมเดลที่มีตัวแปรทำนายเดี่ยว โมเดลการถดถอยที่ดีที่สุดจะถูกสร้างขึ้นโดยใช้ mpg เป็นตัวแปรทำนาย

สำหรับแบบจำลองที่มีตัวแปรทำนายสองตัว แบบจำลองการถดถอยที่ดีที่สุดจะถูกสร้างขึ้นโดยใช้ wt และ qsec เป็นตัวแปรทำนาย

สำหรับโมเดลที่มีตัวแปรทำนายสามตัว โมเดลการถดถอยที่ดีที่สุดจะถูกสร้างขึ้นโดยใช้ mpg , wt และ qsec เป็นตัวแปรทำนาย

สำหรับโมเดลที่มีตัวแปรทำนายสี่ตัว โมเดลการถดถอยที่ดีที่สุดจะถูกสร้างขึ้นโดยใช้ mpg , wt , drat และ qsec เป็นตัวแปรทำนาย

โปรดทราบว่าคุณยังสามารถแยกเมตริกต่อไปนี้สำหรับแต่ละรุ่นได้:

ตัวอย่างเช่น เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแยกค่า R-squared ที่พอดีสำหรับโมเดลที่ดีที่สุดสี่รุ่น:

 #view adjusted R-squared value of each model
summary(bestSubsets)$adjr2

[1] 0.5891853 0.7828169 0.7858829 0.7787005

จากผลลัพธ์เราจะเห็นได้ว่า:

  • ค่า R-squared ที่ปรับแล้วสำหรับโมเดลที่มี mpg เป็นตัวแปรทำนายคือ 0.589
  • ค่า R-squared ที่ปรับแล้วสำหรับโมเดลที่มี wt และ qsec เป็นตัวแปรทำนายคือ 0.783
  • ค่า R-squared ที่ปรับแล้วสำหรับโมเดลที่มี mp g , wt และ qsec เป็นตัวแปรทำนายคือ 0.786
  • ค่า R-squared ที่ปรับแล้วสำหรับโมเดลที่มี mpg , wt , drat และ qsec เป็นตัวแปรทำนายคือ 0.779

ค่าเหล่านี้ทำให้เราเข้าใจได้ว่าชุดตัวแปรทำนายทำนายค่าของตัวแปรตอบสนองได้ดีเพียงใด โดยปรับตามจำนวนตัวแปรทำนายในแบบจำลอง

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:

วิธีดำเนินการถดถอยเชิงเส้นพหุคูณใน R
วิธีการถดถอยทีละชิ้นใน R
วิธีดำเนินการถดถอยเส้นโค้งใน R

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *