การทำความเข้าใจกลุ่มความเชื่อมั่นจากการถดถอยพหุนาม


14

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

ggplot(visual1, aes(ISSUE_DATE,COUNTED)) + geom_point() + geom_smooth()

ดังนั้นคำถามของฉันถึงกับ:

  1. พื้นที่สีเทา (ลูกศร # 1) รอบ ๆ เส้นการถดถอยสีน้ำเงินคืออะไร นี่คือค่าเบี่ยงเบนมาตรฐานของการถดถอยพหุนามหรือไม่?

  2. ฉันสามารถพูดได้ไหมว่าสิ่งที่อยู่นอกพื้นที่สีเทา (ลูกศร # 2) คือ 'ผิดเพี้ยน' และอะไรก็ตามที่อยู่ในพื้นที่สีเทา (ลูกศร # 3) อยู่ในส่วนเบี่ยงเบนมาตรฐาน?

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

คำตอบ:


14

แถบสีเทาเป็นแถบความเชื่อมั่นสำหรับเส้นถดถอย ฉันไม่คุ้นเคยกับ ggplot2 มากพอที่จะรู้ว่ามันเป็นวงดนตรีความเชื่อมั่น 1 SE หรือวงดนตรีความเชื่อมั่น 95% แต่ฉันเชื่อว่ามันเป็นอดีต ( แก้ไข: เห็นได้ชัดว่าเป็น 95% CI ) แถบความเชื่อมั่นเป็นตัวแทนของความไม่แน่นอนเกี่ยวกับเส้นการถดถอยของคุณ ในแง่หนึ่งคุณอาจคิดว่าเส้นการถดถอยที่แท้จริงนั้นสูงถึงด้านบนสุดของวงดนตรีนั้นต่ำที่สุดจนถึงล่าง (โปรดทราบว่าคำอธิบายนี้มีจุดประสงค์เพื่อให้เข้าใจง่ายและไม่ถูกต้องทางเทคนิค แต่คำอธิบายที่ถูกต้องนั้นยากสำหรับคนส่วนใหญ่ที่จะติดตาม)

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


( แก้ไข: บันทึกนี้เป็นอุปกรณ์ต่อพ่วงกับคำถามหลัก แต่พยายามหาจุดที่ชัดเจนสำหรับ OP )

การถดถอยพหุนามไม่ใช่การถดถอยแบบไม่เชิงเส้นแม้ว่าสิ่งที่คุณได้รับจะไม่เหมือนเส้นตรง คำว่า 'เชิงเส้น' มีความหมายเฉพาะอย่างยิ่งในบริบททางคณิตศาสตร์โดยเฉพาะอย่างยิ่งว่าพารามิเตอร์ที่คุณกำลังประเมิน - เบตา - เป็นค่าสัมประสิทธิ์ทั้งหมด การถดถอยแบบพหุนามหมายความว่าโควาเรียตของคุณคือ , ,เป็นต้นนั่นคือพวกมันมีความสัมพันธ์แบบไม่เป็นเชิงเส้นซึ่งกันและกัน แต่ Betas ของคุณยังคงเป็นสัมประสิทธิ์ดังนั้นมันจึงยังเป็นแบบจำลองเชิงเส้น . หาก betas ของคุณคือพูด exponents แล้วคุณจะมีรูปแบบที่ไม่ใช่เชิงเส้น XX2X3

กล่าวโดยสรุปว่าเส้นตรงหรือไม่นั้นไม่มีส่วนเกี่ยวข้องกับโมเดลนั้นเป็นเส้นตรงหรือไม่ เมื่อคุณให้พอดีกับรูปแบบพหุนาม (พูดด้วยและ ), รุ่นไม่ 'รู้' ที่เช่นเป็นจริงเพียงตารางของX_1มัน 'คิด' สิ่งเหล่านี้เป็นเพียงสองตัวแปร (แม้ว่ามันอาจจะรับรู้ว่ามีความหลากหลายทางหลายอย่าง) ดังนั้นในความเป็นจริงมันจะกระชับ (ตรง / แบน) ถดถอยเครื่องบินในพื้นที่สามมิติมากกว่า (โค้ง) ถดถอยบรรทัดในพื้นที่สองมิติ สิ่งนี้ไม่มีประโยชน์สำหรับเราที่จะคิดและอันที่จริงแล้วการมองเห็นยากมากเนื่องจากเป็นฟังก์ชันที่สมบูรณ์แบบของXX2X2X1X2X. ด้วยเหตุนี้เราไม่ต้องกังวลกับมันด้วยวิธีนี้และพล็อตของเราคือการฉายภาพสองมิติบนระนาบอย่างไรก็ตามในพื้นที่ที่เหมาะสมเส้นนั้นก็ 'ตรง' ในบางแง่มุม (X, Y)

จากมุมมองทางคณิตศาสตร์แบบจำลองจะเป็นแบบเส้นตรงหากพารามิเตอร์ที่คุณพยายามประมาณนั้นเป็นค่าสัมประสิทธิ์ หากต้องการชี้แจงเพิ่มเติมให้พิจารณาการเปรียบเทียบระหว่างโมเดลการถดถอยเชิงเส้นมาตรฐาน (OLS) และโมเดลการถดถอยโลจิสติกแบบง่ายที่แสดงในสองรูปแบบที่แตกต่างกัน: โมเดลอันดับต้น ๆ คือ OLS regression และสองตัวล่างคือการถดถอยโลจิสติกแม้ว่าจะมีวิธีการต่างกัน ในทั้งสามกรณีเมื่อคุณพอดีกับแบบจำลองคุณกำลังประมาณ s โมเดลสองอันดับแรกเป็นแบบเส้นตรงเนื่องจาก

Y=β0+β1X+ε
ln(π(Y)1π(Y))=β0+β1X
π(Y)=exp(β0+β1X)1+exp(β0+β1X)
ββs เป็นสัมประสิทธิ์ แต่โมเดลด้านล่างไม่ใช่แบบเส้นตรง (ในรูปแบบนี้) เนื่องจาก s เป็นเลขชี้กำลัง (นี่อาจดูค่อนข้างแปลก แต่การถดถอยแบบลอจิสติกเป็นตัวอย่างของโมเดลเชิงเส้นทั่วไปเพราะสามารถเขียนใหม่เป็นแบบจำลองเชิงเส้นได้สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสิ่งนั้นมันอาจช่วยอ่านคำตอบของฉันได้ที่นี่: ความแตกต่างระหว่างโมเดล logit และ probit .) β

+1 ตัวอย่างในเอกสารแนะนำให้ฉันเชื่อมั่นค่อนข้างสูงบางทีอาจ 95%
whuber

@ gung ขอบคุณสำหรับคำตอบโดยละเอียด (คุณได้รับเช็ค!) ฉันอ่านคำแถลงครั้งแรกของคุณและฉันสับสนเล็กน้อย คุณช่วยอธิบายเพิ่มเติมเกี่ยวกับมันได้ไหม หากเส้นผลลัพธ์ไม่ใช่เส้นตรง (y = mx + b) แล้วอะไรทำให้เป็นเส้นตรง ขอบคุณอีกครั้งสำหรับคำตอบ
adhg

เอกสารที่docs.ggplot2.org/0.9.3.1/stat_smooth.htmlยืนยันว่าเป็นวงความมั่นใจ 95% สำหรับเส้นโค้งการถดถอย
whuber

2
ฉันคิดว่าค่าเริ่มต้นเรียบเนียนกว่ามีการใช้งานที่นี่มากกว่าการถดถอยแบบพหุนาม
xan

@ เสียใจฉันคิดว่าฉันได้ครอบคลุมเส้นตรงและไม่เป็นเส้นตรงอื่น แต่ฉันไม่สามารถหาได้ ดังนั้นฉันจึงเพิ่มเนื้อหาพิเศษที่นี่ HTH
gung - Reinstate Monica

11

เพื่อเพิ่มคำตอบมีอยู่แล้ววงดนตรีที่แสดงให้เห็นถึงความเชื่อมั่นของค่าเฉลี่ย แต่จากคำถามของคุณได้อย่างชัดเจนคุณกำลังมองหาช่วงเวลาที่ทำนาย ช่วงเวลาการทำนายเป็นช่วงที่ถ้าคุณดึงจุดใหม่หนึ่งจุดที่ในทางทฤษฎีจะอยู่ในช่วง X% ของเวลา (ซึ่งคุณสามารถตั้งค่าระดับของ X)

library(ggplot2)
set.seed(5)
x <- rnorm(100)
y <- 0.5*x + rt(100,1)
MyD <- data.frame(cbind(x,y))

เราสามารถสร้างพล็อตประเภทเดียวกันกับที่คุณแสดงในคำถามเริ่มต้นของคุณด้วยช่วงความมั่นใจรอบค่าเฉลี่ยของเส้นถดถอยถดถอยเรียบเนียน (ค่าเริ่มต้นคือช่วงความมั่นใจ 95%)

ConfiMean <- ggplot(data = MyD, aes(x,y)) + geom_point() + geom_smooth()
ConfiMean

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

สำหรับตัวอย่างที่รวดเร็วและสกปรกของช่วงการทำนายที่นี่ฉันสร้างช่วงการทำนายโดยใช้การถดถอยเชิงเส้นที่มีเส้นโค้งเรียบ (ดังนั้นจึงไม่จำเป็นต้องเป็นเส้นตรง) ด้วยข้อมูลตัวอย่างมันค่อนข้างดีสำหรับ 100 คะแนนเพียง 4 อยู่นอกช่วง (และฉันระบุช่วง 90% ในฟังก์ชั่นการทำนาย)

#Now getting prediction intervals from lm using smoothing splines
library(splines)
MyMod <- lm(y ~ ns(x,4), MyD)
MyPreds <- data.frame(predict(MyMod, interval="predict", level = 0.90))
PredInt <- ggplot(data = MyD, aes(x,y)) + geom_point() + 
           geom_ribbon(data=MyPreds, aes(x=fit,ymin=lwr, ymax=upr), alpha=0.5)
PredInt

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

ตอนนี้บันทึกเพิ่มเติมอีกไม่กี่ ฉันเห็นด้วยกับ Ladislav ว่าคุณควรพิจารณาวิธีการพยากรณ์อนุกรมเวลาเนื่องจากคุณมีอนุกรมทั่วไปตั้งแต่บางครั้งในปี 2550 และเป็นที่ชัดเจนจากพล็อตของคุณถ้าคุณดูยากมีฤดูกาลตามฤดูกาล สำหรับสิ่งนี้ฉันขอแนะนำให้ตรวจสอบฟังก์ชันforecast.stlในแพ็คเกจพยากรณ์อากาศซึ่งคุณสามารถเลือกหน้าต่างตามฤดูกาลและให้การสลายตัวที่แข็งแกร่งของฤดูกาลและแนวโน้มโดยใช้ Loess ฉันพูดถึงวิธีการที่แข็งแกร่งเพราะข้อมูลของคุณมีหนามแหลมเล็กน้อย

โดยทั่วไปสำหรับข้อมูลอนุกรมที่ไม่ใช่เวลาฉันจะพิจารณาวิธีการที่มีประสิทธิภาพอื่น ๆ หากคุณมีข้อมูลที่มีค่าผิดปกติเป็นครั้งคราว ฉันไม่ทราบวิธีสร้างช่วงเวลาการทำนายโดยใช้ Loess โดยตรง แต่คุณอาจพิจารณาการถดถอยเชิงปริมาณ (ขึ้นอยู่กับว่าช่วงเวลาการทำนายนั้นต้องมากเพียงใด) ไม่เช่นนั้นถ้าคุณต้องการให้พอดีที่จะเป็นแบบไม่เป็นเชิงเส้นคุณสามารถพิจารณา splines เพื่ออนุญาตให้ฟังก์ชั่นเปลี่ยนแปลงมากกว่า x


4

ดีสายสีน้ำเงินเป็นถดถอยในท้องถิ่นได้อย่างราบรื่น คุณสามารถควบคุม wigginess ของบรรทัดโดยspanพารามิเตอร์ (จาก 0 ถึง 1) แต่ตัวอย่างของคุณคือ "อนุกรมเวลา" ดังนั้นให้ลองมองหาวิธีการวิเคราะห์ที่เหมาะสมมากกว่าเพียงแค่ปรับเส้นโค้งให้เรียบ (ซึ่งควรทำหน้าที่เพียงเพื่อเปิดเผยแนวโน้มที่เป็นไปได้)

ตามเอกสารประกอบของggplot2(และจองในความคิดเห็นด้านล่าง): stat_smoothเป็นช่วงความเชื่อมั่นของความราบรื่นที่แสดงเป็นสีเทา หากคุณต้องการปิดช่วงความมั่นใจให้ใช้se = FALSE


1
(1) ฉันไม่เห็นในการอ้างอิงของคุณที่มันอ้างว่าพื้นที่สีเทาเป็นช่วงความมั่นใจในระดับที่แน่นอน ดูเหมือนว่าสวยใสจากตัวอย่างที่พื้นที่สีเทาแทนที่จะเป็นช่วงความเชื่อมั่นสำหรับเส้นโค้ง (2) ไม่มีใครที่จะประกาศคะแนนที่มีขนาดใหญ่กว่าบริเวณสีเทาในฐานะ "ค่าผิดปกติ" อย่างสมเหตุสมผล มีจำนวนมากเกินไป
whuber

(1) ความผิดพลาดของฉันที่นี่ฉันเพิ่มหนังสือซึ่งอ้างถึง "ช่วงความเชื่อมั่นจุด - ฉลาด": Wickham H (2009) ggplot2 กราฟิกที่สวยงามสำหรับการวิเคราะห์ข้อมูล สื่อ 212. (หน้า 14) (2) ฉันเห็นด้วย
Ladislav Naďo

การอ้างอิงใด ๆ ของคุณระบุว่าระดับความมั่นใจเริ่มต้นถูกกำหนดไว้ที่ใด
whuber

ไม่ฉันไม่พบข้อมูลอ้างอิงเกี่ยวกับการตั้งค่าเริ่มต้น
Ladislav Naďo

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