วิธีการคำนวณ aic ใน r (รวมถึงตัวอย่าง)


Akaike Information Criterion (AIC) เป็นตัวชี้วัดที่ใช้ในการเปรียบเทียบความพอดีของแบบจำลองการถดถอยหลายตัว

มีการคำนวณดังนี้:

AIC = 2K – 2 ลิตร (L)

ทอง:

  • K: จำนวนพารามิเตอร์โมเดล ค่าเริ่มต้นของ K คือ 2 ดังนั้นแบบจำลองที่มีตัวแปรทำนายเพียงตัวเดียวจะมีค่า K เป็น 2+1 = 3
  • ln (L) : ความน่าจะเป็นของบันทึกของแบบจำลอง ซอฟต์แวร์ทางสถิติส่วนใหญ่สามารถคำนวณค่านี้ให้คุณโดยอัตโนมัติ

AIC ได้รับการออกแบบมาเพื่อค้นหาแบบจำลองที่อธิบายความแปรผันของข้อมูลได้มากที่สุด ขณะเดียวกันก็ลงโทษแบบจำลองที่ใช้พารามิเตอร์จำนวนมากเกินไป

เมื่อคุณติดตั้งแบบจำลองการถดถอยหลายตัวแล้ว คุณสามารถเปรียบเทียบ ค่า AIC ของแต่ละรุ่นได้ ยิ่ง AIC ต่ำ ก็ยิ่งเหมาะกับรุ่นมากขึ้น

ในการคำนวณ AIC ของแบบจำลองการถดถอยหลายตัวใน R เราสามารถใช้ฟังก์ชัน aictab() จากแพ็คเกจ AICcmodavg

ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้เพื่อคำนวณและตีความ AIC สำหรับแบบจำลองการถดถอยต่างๆ ใน R

ตัวอย่าง: คำนวณและตีความ AIC ใน R

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

ต่อไปนี้เป็นตัวแปรทำนายที่เราจะใช้ในแต่ละรุ่น:

  • ตัวแปรทำนายในโมเดล 1: disp, hp, wt, qsec
  • ตัวแปรทำนายในโมเดล 2: disp, qsec
  • ตัวแปรทำนายในโมเดล 3: disp, wt

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

 #fit three models
model1 <- lm(mpg ~ disp + hp + wt + qsec, data = mtcars)
model2 <- lm(mpg ~ disp + qsec, data = mtcars)
model3 <- lm(mpg ~ disp + wt, data = mtcars)

ต่อไป เราจะใส่โมเดลลงในรายการและใช้ฟังก์ชัน aictab() เพื่อคำนวณ AIC ของแต่ละโมเดล:

 library (AICcmodavg)

#define list of models
models <- list(model1, model2, model3)

#specify model names
mod.names <- c('disp.hp.wt.qsec', 'disp.qsec', 'disp.wt')

#calculate AIC of each model
aictab(cand.set = models, modnames = mod.names)

Model selection based on AICc:

                K AICc Delta_AICc AICcWt Cum.Wt LL
disp.hp.wt.qsec 6 162.43 0.00 0.83 0.83 -73.53
available wt 4 165.65 3.22 0.17 1.00 -78.08
disp.qsec 4 173.32 10.89 0.00 1.00 -81.92

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

  • K: จำนวนพารามิเตอร์ในโมเดล
  • AICc: ค่า AIC ของโมเดล ตัวพิมพ์เล็ก “c” บ่งชี้ว่า AIC คำนวณจาก AIC ที่ถูกแก้ไขสำหรับตัวอย่างขนาดเล็ก
  • Delta_AICc: ความแตกต่างระหว่าง AIC ของรุ่นที่ดีที่สุดกับรุ่นปัจจุบันเมื่อเปรียบเทียบ
  • AICcWt: สัดส่วนของพลังการทำนายทั้งหมดที่พบในแบบจำลอง
  • Cum.Wt : ผลรวมสะสมของน้ำหนัก AIC
  • LL: ความน่าจะเป็นของบันทึกของโมเดล ข้อมูลนี้บอกเราว่าแบบจำลองนี้น่าจะเป็นไปได้เพียงใดเมื่อพิจารณาจากข้อมูลที่เราใช้

โมเดลที่มีค่า AIC ต่ำที่สุดจะแสดงรายการก่อนเสมอ จากผลลัพธ์เราจะเห็นว่าโมเดลต่อไปนี้มีค่า AIC ต่ำที่สุด จึงเป็นโมเดลที่เหมาะสมที่สุด:

mpg = β 0 + β 1 (disp) + β 2 (hp) + β 3 (น้ำหนัก) + β 4 (qsec)

เมื่อเราระบุแบบจำลองนี้ดีที่สุดแล้ว เราสามารถดำเนินการปรับแบบจำลองให้เหมาะสมและวิเคราะห์ผลลัพธ์ รวมถึงค่า R-squared และค่าสัมประสิทธิ์เบต้า เพื่อกำหนดความสัมพันธ์ที่แน่นอนระหว่างชุดของตัวแปรทำนายและ ตัวแปรตอบสนอง

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

วิธีดำเนินการถดถอยเชิงเส้นอย่างง่ายใน R
วิธีดำเนินการถดถอยเชิงเส้นพหุคูณใน R
วิธีการคำนวณ R-squared ที่ปรับแล้วใน R
วิธีการคำนวณ Mallows Cp ใน R

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

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