การตีความพล็อต (glm.model)


30

ใครช่วยบอกฉันได้ว่าจะตีความ 'ส่วนที่เหลือเทียบพอดี', 'ปกติ q-q', 'มาตราส่วนที่ตั้ง' และ 'ส่วนที่เหลือเทียบกับความสามารถในการแปลง'? ฉันกำลังจัดวาง GLM แบบทวินามให้เหมาะสมแล้วบันทึกและวางแผนใหม่


4
คุณรู้วิธีตีความแปลงเหล่านั้นเมื่อจัดการกับการถดถอยเชิงเส้นปกติหรือไม่? เพราะนั่นควรเป็นจุดเริ่มต้นของคุณ
Steve S

คำตอบ:


55

Rไม่มีplot.glm()วิธีที่แตกต่าง เมื่อคุณเหมาะสมกับรูปแบบด้วยglm()และเรียกplot()มันเรียก? plot.lmซึ่งเป็นที่เหมาะสมสำหรับการเชิงเส้นแบบจำลอง (กล่าวคือมีระยะเวลาของข้อผิดพลาดการกระจายตามปกติ)

โดยทั่วไปความหมายของพล็อตเหล่านี้ (อย่างน้อยสำหรับโมเดลเชิงเส้น) สามารถเรียนรู้ได้ในเธรดที่มีอยู่หลายรายการใน CV (เช่น: Residuals vs. Fitted ; qq-plots ในหลายแห่ง: 1 , 2 , 3 ; Scale-Location ; Residuals vs Leverage ) อย่างไรก็ตามการตีความเหล่านั้นโดยทั่วไปจะไม่ถูกต้องเมื่อแบบจำลองในคำถามเป็นการถดถอยโลจิสติก

โดยเฉพาะอย่างยิ่งแผนการมักจะ 'ดูตลก' และทำให้ผู้คนเชื่อว่ามีบางอย่างผิดปกติกับตัวแบบเมื่อมันสมบูรณ์แบบ เราสามารถเห็นสิ่งนี้ได้โดยการดูแปลงเหล่านั้นด้วยการจำลองง่ายๆสองแบบที่เรารู้ว่าแบบจำลองนั้นถูกต้อง:

  # we'll need this function to generate the Y data:
lo2p = function(lo){ exp(lo)/(1+exp(lo)) }

set.seed(10)                    # this makes the simulation exactly reproducible
x  = runif(20, min=0, max=10)   # the X data are uniformly distributed from 0 to 10
lo = -3 + .7*x                  # this is the true data generating process
p  = lo2p(lo)                   # here I convert the log odds to probabilities
y  = rbinom(20, size=1, prob=p) # this generates the Y data

mod = glm(y~x, family=binomial) # here I fit the model
summary(mod)                    # the model captures the DGP very well & has no
# ...                           #  obvious problems:
# Deviance Residuals: 
#      Min        1Q    Median        3Q       Max  
# -1.76225  -0.85236  -0.05011   0.83786   1.59393  
# 
# Coefficients:
#             Estimate Std. Error z value Pr(>|z|)  
# (Intercept)  -2.7370     1.4062  -1.946   0.0516 .
# x             0.6799     0.3261   2.085   0.0371 *
# ...
# 
# Null deviance: 27.726  on 19  degrees of freedom
# Residual deviance: 21.236  on 18  degrees of freedom
# AIC: 25.236
# 
# Number of Fisher Scoring iterations: 4

ตอนนี้ให้ดูที่แปลงที่เราได้รับจากplot.lm():

ป้อนคำอธิบายรูปภาพที่นี่

ทั้งสองResiduals vs FittedและScale-Locationแปลงดูเหมือนว่ามีปัญหากับรูปแบบ แต่เรารู้ว่าไม่มี แผนการเหล่านี้มีไว้สำหรับตัวแบบเชิงเส้นมักจะทำให้เข้าใจผิดเมื่อใช้กับตัวแบบการถดถอยโลจิสติก

ลองดูตัวอย่างอื่น:

set.seed(10)
x2 = rep(c(1:4), each=40)                    # X is a factor with 4 levels
lo = -3 + .7*x2
p  = lo2p(lo)
y  = rbinom(160, size=1, prob=p)

mod = glm(y~as.factor(x2), family=binomial)
summary(mod)                                 # again, everything looks good:
# ...
# Deviance Residuals: 
#   Min       1Q   Median       3Q      Max  
# -1.0108  -0.8446  -0.3949  -0.2250   2.7162  
# 
# Coefficients:
#                Estimate Std. Error z value Pr(>|z|)    
# (Intercept)      -3.664      1.013  -3.618 0.000297 ***
# as.factor(x2)2    1.151      1.177   0.978 0.328125    
# as.factor(x2)3    2.816      1.070   2.632 0.008481 ** 
# as.factor(x2)4    3.258      1.063   3.065 0.002175 ** 
# ... 
# 
# Null deviance: 160.13  on 159  degrees of freedom
# Residual deviance: 133.37  on 156  degrees of freedom
# AIC: 141.37
# 
# Number of Fisher Scoring iterations: 6

ป้อนคำอธิบายรูปภาพที่นี่

ตอนนี้แผนการทั้งหมดดูแปลก ๆ

แล้วแปลงเหล่านี้แสดงอะไรให้คุณดูบ้าง?

  • Residuals vs Fittedพล็อตสามารถช่วยให้คุณดูตัวอย่างเช่นถ้ามีแนวโน้มโค้งที่คุณพลาด แต่พอดีของการถดถอยโลจิสติกคือ curvilinear โดยธรรมชาติดังนั้นคุณสามารถมีแนวโน้มดูแปลก ๆ ในส่วนที่เหลือไม่มีอะไรผิดปกติ
  • Normal Q-Qพล็อตช่วยให้คุณสามารถตรวจสอบได้หากเหลือของคุณจะกระจายตามปกติ แต่ส่วนเบี่ยงเบนความเบี่ยงเบนไม่จำเป็นต้องกระจายตามปกติเพื่อให้แบบจำลองนั้นถูกต้องดังนั้นความปกติ / ความไม่ปกติของส่วนที่เหลือไม่จำเป็นต้องบอกอะไรเลย
  • Scale-Locationพล็อตสามารถช่วยให้คุณระบุ heteroscedasticity แต่แบบจำลองการถดถอยโลจิสติกนั้นมีความต่างกันโดยธรรมชาติ
  • Residuals vs Leverageสามารถช่วยให้คุณระบุค่าผิดปกติที่เป็นไปได้ แต่ค่าผิดปกติในการถดถอยแบบลอจิสติกไม่จำเป็นต้องแสดงในลักษณะเดียวกับในการถดถอยเชิงเส้นดังนั้นพล็อตนี้อาจจะใช่หรือไม่มีประโยชน์ในการระบุตัวตน

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


5
ความเศร้าโศกที่ดีนี่คือคำตอบที่น่าอัศจรรย์
d8aninja

@ gung คุณช่วยบอกว่าเราจะทำอย่างไรถ้ามันเป็น glm? มีทางเลือกอื่นสำหรับ QQ, Residual vs Fitted หรือไม่? ตัวอย่างเช่นฉันวางแผนเชื่อมโยงปัวซองกับ GLM แต่ฉันไม่ทราบวิธีการวิเคราะห์ว่าเหมาะสมหรือไม่
GRS

2
@GRS ลองอ่านนี้
gung - Reinstate Monica

@ คำตอบทั้งหมดของคุณมีรายละเอียดและชัดเจน นอกเหนือจากการอ่านจากหลายแหล่งรวมถึงเว็บไซต์นี้แล้วคุณสามารถอ้างอิงหนังสือ / ไซต์ดีๆหนึ่งหรือสองเล่มเพื่อรับ 'ความเชี่ยวชาญจำนวนมาก' ในการทำความเข้าใจแปลงวินิจฉัยได้หรือไม่? ฉันเข้าใจว่าทักษะเล็กน้อยที่เราสามารถได้รับจากการฝึกฝนและประสบการณ์เท่านั้น แต่ถ้าหนังสือ / เว็บไซต์ใด ๆ ที่ครอบคลุมรายละเอียดในเชิงลึกหากคุณสามารถอ้างอิงได้มันจะเป็นประโยชน์อย่างมาก
ดร. Nisha Arora

@DrNishaArora ไม่ใช่อย่างที่ฉันรู้ มีหนังสือบางเล่มที่เกี่ยวข้องกับ LR แต่พวกเขาจะไม่ใช้เวลามากกับแผนการเหล่านี้เนื่องจากเหตุผลที่กล่าวไว้
gung - Reinstate Monica

0
  1. ส่วนที่เหลือเทียบพอดี - ไม่ควรมีรูปแบบที่แข็งแกร่ง (รูปแบบที่ไม่รุนแรงไม่เป็นปัญหาดูคำตอบของ @ gung) และไม่มีค่าผิดปกติส่วนที่เหลือควรกระจายแบบสุ่มรอบศูนย์
  2. Normal QQ - ส่วนที่เหลือควรไปตามเส้นทแยงมุมนั่นคือควรจะกระจายตามปกติ (ดูwiki สำหรับ QQ plot ) เนื้อเรื่องนี้ช่วยตรวจสอบว่ามันเป็นเรื่องปกติหรือไม่
  3. ปรับขนาดตำแหน่ง - อย่างที่คุณเห็นบนแกน Y ยังมีส่วนที่เหลือ (เช่นในส่วนที่เหลือเทียบกับพล็อตที่ติดตั้ง) แต่จะถูกปรับสัดส่วนดังนั้นจึงคล้ายกับ (1) แต่ในบางกรณีก็ใช้งานได้ดีกว่า
  4. ส่วนที่เหลือ vs เลเวอเรจ - ช่วยในการวินิจฉัยผู้ป่วยนอก ในฐานะที่เป็นในแปลงก่อนหน้านี้กรณีที่ห่างไกลที่มีเลข แต่ในพล็อตนี้หากมีกรณีใดที่มีความแตกต่างกันมากจากส่วนที่เหลือของข้อมูลที่พวกเขากำลังวางแผนด้านล่างเส้นสีแดงบาง (กาวิกิพีเดียกับระยะทางของแม่ครัว )

อ่านเพิ่มเติมเกี่ยวกับสมมติฐานของการถดถอยในหลาย ๆ ด้านที่มีความคล้ายคลึงกัน (เช่นที่นี่หรือการสอนเกี่ยวกับการถดถอยใน R ที่นี่ )


2
การตอบสนองนี้ไม่ถูกต้องในบริบทของ glm รวมถึง @gung ในการตอบสนองด้านบน หากคุณกำลังมองหาคำตอบสำหรับคำถามนี้ลองตอบโต้นี้ หากคุณเป็นผู้เขียนคำตอบนี้ลองอ่านคำตอบข้างบนโดย gung หากคุณเห็นด้วยคุณควรพิจารณาลบคำตอบนี้เพราะมันทำให้เข้าใจผิด
ลิน

@colin คุณต้องการที่จะแสดงความคิดเห็นว่ามีอะไรผิดปกติในความเห็นของคุณด้วยคำตอบนี้หรือไม่? ความแตกต่างเพียงอย่างเดียวระหว่างฉันกับคำตอบที่สองคือ gung จะมีรายละเอียดมากขึ้น ...
ทิม

3
คุณอธิบายถึงวิธีการแปลงเหล่านี้ควรใช้ในบริบทของการถดถอยเชิงเส้น gung อธิบายว่าทำไมการตีความเหล่านี้ล้มเหลวในกรณีนี้เพราะมันถูกนำไปใช้กับแบบจำลอง binomial glm ดังนั้นหากผู้ใช้ตีความพล็อตการวินิจฉัยเหล่านี้ตามที่คุณแนะนำ (และคำแนะนำของคุณจะเป็นประโยชน์ในกรณีของ lm) พวกเขาจะสรุปได้อย่างไม่ถูกต้องว่าแบบจำลองของพวกเขาละเมิดสมมติฐานของ glm เมื่อในความเป็นจริง
ลิน

คุณเขียนว่า "ส่วนที่เหลือ vs ติดตั้ง - ไม่ควรมีรูปแบบและไม่มีค่าผิดปกติส่วนที่เหลือควรกระจายแบบสุ่มประมาณ 0" gung เขียนว่า "พล็อตที่เหลือเทียบกับการติดตั้งสามารถช่วยให้คุณเห็นตัวอย่างเช่นถ้ามีแนวโน้มโค้งที่คุณพลาด แต่พอดีของการถดถอยโลจิสติกเป็นธรรมชาติ curvilinear เพื่อให้คุณสามารถมีแนวโน้มที่แปลกในเศษเหลือ ผิดปกติ." ... คุณคนหนึ่งต้องผิด
ลิน

2
ฉันยอมรับว่านี่ไม่ใช่ขาวดำ แต่มีหลายกรณีที่มีแนวโน้มที่แข็งแกร่ง แต่รูปแบบที่ระบุมีความเหมาะสมอย่างสมบูรณ์ภายใต้สมมติฐานของ glm ที่เฉพาะเจาะจง ดังนั้นการยืนยันว่า "ไม่ควรมีรูปแบบและไม่มีค่าผิดปกติจึงต้องมีการกระจายแบบสุ่มประมาณ 0" สามารถตีความได้ง่ายว่าหากมีรูปแบบคุณได้ละเมิดสมมติฐานของแบบจำลอง กรณีนี้ไม่ได้.
ลิน
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.