เส้นที่พอดีที่สุดดูไม่เหมือนแบบพอดี ทำไม?


82

ดูกราฟ Excel นี้: กราฟ

แนวความรู้สึกที่ดีที่สุด 'สามัญสำนึก' จะปรากฏเป็นเส้นแนวตั้งเกือบตรงผ่านจุดศูนย์กลางของจุด (แก้ไขด้วยมือด้วยสีแดง) อย่างไรก็ตามเส้นแนวโน้มเชิงเส้นตามที่ Excel ตัดสินใจเป็นเส้นสีดำในแนวทแยงแสดง

  1. เหตุใด Excel จึงสร้างบางสิ่งที่ (ต่อสายตามนุษย์) ดูเหมือนว่าผิด
  2. ฉันจะสร้างเส้นที่พอดีที่สุดที่ดูเป็นธรรมชาติได้ง่ายขึ้น (เช่นบางอย่างเช่นเส้นสีแดง) ได้อย่างไร

ปรับปรุง 1.สเปรดชีต Excel ที่มีข้อมูลและกราฟสามารถใช้ได้ที่นี่: ข้อมูลตัวอย่าง , CSV ใน Pastebin เทคนิคการถดถอยของ type1 และ type2 มีอยู่ในฟังก์ชั่น excel หรือไม่

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


5
พูดตามตรงฉันสงสัยว่านี่เป็นคำถามของ Deming ถดถอยกับ OLS ดูความแปรปรวนสัมบูรณ์ที่น้อยมากในและฉันอยากจะคิดว่านี่อาจเป็นปัญหาเชิงตัวเลขใน Excel คุณสามารถแก้ไขคำถามเพื่อรวมข้อมูลได้หรือไม่ xy
Stephan Kolassa

12
ปรากฏการณ์นี้เป็นหนึ่งในการค้นพบทางสถิติที่สำคัญของศตวรรษที่ 19 (หากไม่ใช่ทั้งหมด) มันถูกเรียกว่าถดถอยไปสู่ค่าเฉลี่ย แท้จริงแล้วมันเป็นเหตุผลที่ดีว่าทำไมขั้นตอนทางสถิตินี้เรียกว่า "การถดถอย"!
whuber

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

6
@StephanKolassa - หมายเหตุว่าขนาดใหญ่ข้อผิดพลาดจะเป็นถ้าคุณใช้เส้นสีแดงและคาดการณ์สำหรับ ; เส้นสีแดงต้องไม่เป็นสี่เหลี่ยมจัตุรัสที่ดีที่สุด Excel มีปัญหาอย่างแน่นอน แต่ฉันคิดว่านี่ไม่ใช่หนึ่งในนั้น yx=0.714
jbowman

7
สิ่งนี้ได้รับการแก้ไขหลายครั้งในเว็บไซต์แล้ว (เช่นดูที่นี่ ) เมื่อคุณเข้าใจว่าเส้นถดถอยคืออะไรมันง่ายที่จะดูว่าทำไมมันถึงเป็นเส้นดำ ถามตัวเองด้วยคำถามสองข้อ: 1: ค่าเฉลี่ยของ y เมื่อ x ประมาณ 0.712 เท่าไหร่? 2. สีแดงและเส้นสีดำคาดการณ์ว่าควรเป็นเท่าไหร่? ... [ฉันปิดการจองซ้ำซ้อนในขณะนี้เนื่องจากมีปัญหาเฉพาะกับข้อมูลของคุณซึ่งจะคุ้มค่าในการตอบคำถามของคุณอีกครั้ง]
Glen_b

คำตอบ:


111

มีตัวแปรตามหรือไม่

เส้นแนวโน้มใน Excel มาจากการถดถอยของตัวแปรที่ขึ้นต่อกัน "lat" ในตัวแปรอิสระ "lon" สิ่งที่คุณเรียกว่า "เส้นสามัญสำนึก" สามารถรับได้เมื่อคุณไม่ได้กำหนดขึ้นอยู่กับตัวแปรและรักษาทั้งละติจูดและลองจิจูดอย่างเท่าเทียมกัน หลังสามารถหาได้โดยใช้PCA โดยเฉพาะอย่างยิ่งมันเป็นหนึ่งในเวกเตอร์ไอเก็นของเมทริกซ์ความแปรปรวนร่วมของตัวแปรเหล่านี้ คุณสามารถคิดว่ามันเป็นเส้นที่ลดระยะทางที่สั้นที่สุดจากจุดใด ๆ ที่กำหนดให้กับเส้นนั้นเองเช่นคุณวาดเส้นตั้งฉากกับเส้นหนึ่ง(xi,yi)

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

นี่คือวิธีที่คุณสามารถทำได้ใน R:

> para <- read.csv("para.csv")
> plot(para)
> 
> # run PCA
> pZ=prcomp(para,rank.=1)
> # look at 1st PC
> pZ$rotation
           PC1
lon 0.09504313
lat 0.99547316
> 
> colMeans(para) # PCA was centered
       lon        lat 
-0.7129371 53.9368720 
> # recover the data from 1st PC
> pc1=t(pZ$rotation %*% t(pZ$x) )
> # center and show
> lines(pc1 + t(t(rep(1,123))) %*% c)

เส้นแนวโน้มที่คุณได้รับจาก Excel นั้นเหมือนกับสามัญเวกเตอร์ eigen จาก PCA เมื่อคุณเข้าใจว่าในการถดถอยของ Excel ตัวแปรจะไม่เท่ากัน ที่นี่คุณจะลดระยะทางแนวตั้งจากเป็นโดยที่แกน y คือละติจูดและแกน x เป็นลองจิจูดyiy(xi)

ไม่ว่าคุณต้องการปฏิบัติต่อตัวแปรอย่างเท่าเทียมกันหรือไม่นั้นขึ้นอยู่กับวัตถุประสงค์ ไม่ใช่คุณภาพของข้อมูลโดยธรรมชาติ คุณต้องเลือกเครื่องมือทางสถิติที่ถูกต้องในการวิเคราะห์ข้อมูลในกรณีนี้เลือกระหว่างการถดถอยและ PCA

คำตอบสำหรับคำถามที่ไม่ได้ถาม

ดังนั้นทำไมในกรณีของคุณเทรนด์ไลน์ (การถดถอย) ใน Excel จึงไม่เป็นเครื่องมือที่เหมาะสมสำหรับเคสของคุณ เหตุผลก็คือเทรนด์ไลน์เป็นคำตอบสำหรับคำถามที่ไม่ได้ถาม นี่คือเหตุผล

การถดถอย Excel พยายามที่จะประมาณค่าพารามิเตอร์ของบรรทัดlon ดังนั้นปัญหาแรกคือละติจูดไม่ใช่ฟังก์ชั่นของลองจิจูดพูดอย่างเคร่งครัด (ดูหมายเหตุตอนท้ายโพสต์) และไม่ใช่ประเด็นหลัก ปัญหาที่แท้จริงคือคุณไม่สนใจแม้แต่ทำเลที่ตั้งของ paraglider แต่คุณสนใจลมlat=a+b×lon

ลองจินตนาการว่าไม่มีลม Paraglider จะทำวงกลมเดียวกันซ้ำไปซ้ำมา เส้นแนวโน้มคืออะไร? เห็นได้ชัดว่ามันจะเป็นเส้นแนวนอนราบเรียบความชันจะเป็นศูนย์ แต่ก็ไม่ได้หมายความว่าลมจะพัดไปในทิศทางแนวนอน!

นี่คือพล็อตจำลองสำหรับเมื่อมีลมแรงตามแกน y ในขณะที่ paraglider กำลังสร้างวงกลมที่สมบูรณ์แบบ คุณสามารถดูว่าการถดถอยเชิงเส้นสร้างผลลัพธ์ที่ไร้สาระซึ่งเป็นเส้นแนวโน้มแนวนอน จริงๆแล้วมันเป็นลบเพียงเล็กน้อย แต่ไม่มีนัยสำคัญ ทิศทางลมจะแสดงด้วยเส้นสีแดง:yx

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

รหัส R สำหรับการจำลอง:

t=1:123
a=1 #1
b=0 #1/10
y=10*sin(t)+a*t
x=10*cos(t)+b*t

plot(x,y,xlim=c(-60,60))
xp=-60:60
lines(b*t,a*t,col='red')

model=lm(y~x)
lines(xp,xp*model$coefficients[2]+model$coefficients[1])

ดังนั้นทิศทางของลมอย่างชัดเจนจึงไม่สอดคล้องกับเส้นแนวโน้มเลย แน่นอนว่ามันเชื่อมโยงกัน แต่ในทางที่ไม่สำคัญ ดังนั้นคำแถลงของฉันว่าเส้นแนวโน้ม Excel คือคำตอบของคำถาม แต่ไม่ใช่คำถามที่คุณถาม

ทำไมต้อง PCA

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

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

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

จุดมุ่งหมายของ PCA คือการแยกปัจจัยบางอย่างที่กำหนดเอาท์พุทหลายโดยการวิเคราะห์ความสัมพันธ์ในการส่งออก จะมีประสิทธิภาพเมื่อเอาต์พุตเชื่อมโยงกับปัจจัยเชิงเส้นซึ่งเกิดขึ้นกับข้อมูลของคุณ: การเลื่อนของลมเพียงเพิ่มพิกัดของการเคลื่อนที่แบบวงกลมนั่นคือสาเหตุที่ PCA ทำงานที่นี่

การตั้งค่า PCA

ดังนั้นเรายืนยันว่า PCA ควรมีโอกาสที่นี่ แต่เราจะตั้งค่าได้อย่างไร เริ่มจากการเพิ่มตัวแปรตัวที่สามเวลา เราจะกำหนดเวลา 1 ถึง 123 ให้กับการสังเกตแต่ละ 123 ครั้งโดยสมมติว่าความถี่การสุ่มตัวอย่างคงที่ นี่คือลักษณะของพล็อต 3 มิติที่มีลักษณะของข้อมูลเปิดเผยโครงสร้างเกลียว:

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

พล็อตถัดไปจะแสดงศูนย์กลางจินตนาการของการหมุนของร่มร่อนเป็นวงกลมสีน้ำตาล คุณสามารถดูว่ามันลอยอยู่บนระนาบ lat-lon กับลมได้อย่างไรขณะที่ paraglider ที่แสดงด้วยจุดสีน้ำเงินกำลังหมุนรอบมัน เวลาอยู่ในแกนตั้ง ฉันเชื่อมต่อศูนย์กลางการหมุนกับตำแหน่งที่สอดคล้องกันของ paraglider ที่แสดงเฉพาะวงกลมสองวงแรก

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

รหัส R ที่สอดคล้องกัน:

library(plotly)       

 para <- read.csv("C:/Users/akuketay/Downloads/para.csv")
 n=24

   para$t=1:123 # add time parameter

   # run PCA
     pZ3=prcomp(para)
     c3=colMeans(para) # PCA was centered
     # look at PCs in columns
       pZ3$rotation

       # get the imaginary center of rotation 
       pc31=t(pZ3$rotation[,1] %*% t(pZ3$x[,1]) )
     eye = pc31 + t(t(rep(1,123))) %*% c3
     eyedata = data.frame(eye)

     p = plot_ly(x=para[1:n,1],y=para[1:n,2],z=para[1:n,3],mode="lines+markers",type="scatter3d") %>%
       layout(showlegend=FALSE,scene=list(xaxis = list(title = 'lat'),yaxis = list(title = 'lon'),zaxis = list(title = 't'))) %>%
     add_trace(x=eyedata[1:n,1],y=eyedata[1:n,2],z=eyedata[1:n,3],mode="markers",type="scatter3d") 
     for( i in 1:n){
         p = add_trace(p,x=c(eyedata[i,1],para[i,1]),y=c(eyedata[i,2],para[i,2]),z=c(eyedata[i,3],para[i,3]),color="black",mode="lines",type="scatter3d")
       }

subplot(p)

การหมุนของจุดศูนย์กลางของการหมุนของ paraglider ส่วนใหญ่เกิดจากลมและเส้นทางและความเร็วของการดริฟท์สัมพันธ์กับทิศทางและความเร็วของลมตัวแปรที่ไม่สามารถสังเกตเห็นได้ นี่คือลักษณะที่ดริฟท์เมื่อคาดว่าจะเป็นระนาบ lat-lon:

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

การถดถอย PCA

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

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

สิ่งนี้ได้รับดังนี้ เรียกใช้ PCA บนชุดข้อมูลที่มีคอลัมน์พิเศษ t = 1: 123 ตามที่กล่าวไว้ก่อนหน้า คุณได้รับสามองค์ประกอบหลัก อันแรกคือ t ที่สองสอดคล้องกับคอลัมน์โหลนและคอลัมน์ที่สามถึง lat

ฉันพอดีหลังสององค์ประกอบหลักให้กับตัวแปรของรูปแบบที่ที่สกัดจากการวิเคราะห์สเปกตรัมของส่วนประกอบ พวกมันมีความถี่เท่ากัน แต่มีเฟสแตกต่างกันซึ่งไม่น่าประหลาดใจเมื่อมีการเคลื่อนที่แบบวงกลมasin(ωt+φ)ω,φ

แค่นั้นแหละ. เพื่อให้ได้ค่าติดตั้งที่คุณกู้คืนข้อมูลจากส่วนประกอบที่ติดตั้งโดยเสียบทรานสโพสของเมทริกซ์การหมุน PCA เข้ากับส่วนประกอบหลักที่ทำนายไว้ รหัส R ของฉันด้านบนแสดงส่วนต่าง ๆ ของขั้นตอนและส่วนที่เหลือที่คุณสามารถทราบได้อย่างง่ายดาย

ข้อสรุป

เป็นที่น่าสนใจที่จะเห็นว่า PCA และเครื่องมือง่ายๆอื่น ๆ มีประสิทธิภาพเพียงใดเมื่อพูดถึงปรากฏการณ์ทางกายภาพที่กระบวนการพื้นฐานมีความเสถียรและอินพุตจะแปลงเป็นเอาต์พุตผ่านความสัมพันธ์แบบเชิงเส้น (หรือแบบเชิงเส้น) ดังนั้นในกรณีของเราการเคลื่อนที่แบบวงกลมนั้นไม่เชิงเส้นมาก แต่เราทำให้เป็นเส้นตรงได้อย่างง่ายดายโดยใช้ฟังก์ชัน sine / cosine กับพารามิเตอร์ time t แปลงของฉันถูกสร้างขึ้นด้วยรหัส R เพียงไม่กี่บรรทัดตามที่คุณเห็น

ตัวแบบการถดถอยควรสะท้อนถึงกระบวนการพื้นฐานจากนั้นมีเพียงคุณเท่านั้นที่คาดหวังว่าพารามิเตอร์ของมันจะมีความหมาย หากนี่คือ paraglider ที่ลอยอยู่ในสายลมพล็อตการกระจายแบบง่ายเหมือนในคำถามดั้งเดิมจะซ่อนโครงสร้างเวลาของกระบวนการ

นอกจากนี้การถดถอยของ Excel ยังเป็นการวิเคราะห์แบบตัดขวางซึ่งการถดถอยเชิงเส้นจะทำงานได้ดีที่สุดในขณะที่ข้อมูลของคุณเป็นกระบวนการอนุกรมเวลาซึ่งการสังเกตได้รับคำสั่งในเวลา ต้องใช้การวิเคราะห์อนุกรมเวลาที่นี่และดำเนินการในการถดถอย PCA

หมายเหตุเกี่ยวกับฟังก์ชั่น

เนื่องจาก Paraglider กำลังสร้างวงกลมจะมีละติจูดหลายเส้นที่สอดคล้องกับลองจิจูดเดียว ในทางคณิตศาสตร์ฟังก์ชั่นแผนที่ค่าเป็นค่าเดียวYมันหลายต่อหนึ่งความสัมพันธ์ที่มีความหมายว่าหลายอาจสอดคล้องกับแต่ไม่หลายตรงตามลักษณะที่เดียวxนั่นคือเหตุผลที่ไม่ใช่ฟังก์ชั่นพูดอย่างเคร่งครัดy=f(x)xyxyyxlat=f(lon)


11
จับโครงสร้างเกลียวได้ดี! ความคิดเห็นสองด้าน: เป็นการง่ายกว่าที่จะทำงานกับเป็นพารามิเตอร์ทางเลือก มีหลายกรณีที่เราเลือกที่จะเฉลี่ยในช่วงเวลาที่ไม่น่าสนใจหรือเกี่ยวข้องกับปัญหาหลัก a sin ωt+b cos ωt
Nick Cox

11
ไม่ว่าคุณต้องการที่จะปฏิบัติต่อพวกเขาอย่างเท่าเทียมกันหรือไม่ขึ้นอยู่กับวัตถุประสงค์ ไม่ใช่คุณภาพของข้อมูลโดยธรรมชาติ - จุดที่ดีและ +1
Richard Hardy

@NickCox ถูกต้องแล้วมันจะทำงานได้น้อยลงด้วย
Aksakal

อาจจะคุ้มค่าที่ชี้ให้เห็นว่า PCA เป็นลักษณะทั่วไปของการถดถอยของแกนหลักต่อสถานการณ์ที่คุณมีตัวแปร> 2 แต่เนื่องจากในกรณีนี้มีเพียง 2 ตัวแปรเท่านั้นชื่อมาตรฐานสำหรับเทคนิคนี้คือการถดถอยของแกนหลัก (บางครั้งเรียกว่าการถดถอยแบบออโธกอนอลหรือการถดถอยแบบ II)
Tom Wenseleers

61

คำตอบอาจเกี่ยวข้องกับวิธีที่คุณใช้ตัดสินระยะทางกับเส้นถดถอย มาตรฐาน (ประเภท 1) การถดถอยลดข้อผิดพลาดแควร์ซึ่งเกิดข้อผิดพลาดจะคำนวณตามระยะทางแนวตั้งกับสาย

การถดถอยแบบที่ 2 อาจคล้ายคลึงกับการตัดสินของคุณในบรรทัดที่ดีที่สุด ในนั้นมีข้อผิดพลาดยืดลดลงเป็นระยะทางตั้งฉากกับเส้น มีจำนวนของผลที่ตามมาต่อความแตกต่างนี้ สิ่งสำคัญอย่างหนึ่งคือถ้าคุณสลับแกน X และแกน Y ในพล็อตของคุณและดัดแปลงบรรทัดใหม่คุณจะได้รับความสัมพันธ์ที่แตกต่างกันระหว่างตัวแปรสำหรับการถดถอยประเภท 1 สำหรับการถดถอยแบบที่ 2 ความสัมพันธ์ยังคงเหมือนเดิม

ความประทับใจของฉันคือมีการถกเถียงกันอย่างยุติธรรมเกี่ยวกับสถานที่ที่จะใช้การถดถอยแบบที่ 1 กับการตัดสินใจแบบที่ 2 ดังนั้นฉันขอแนะนำให้อ่านอย่างละเอียดเกี่ยวกับความแตกต่างก่อนที่จะตัดสินใจใช้ แนะนำให้ทำการถดถอยแบบที่ 1 ในกรณีที่แกนหนึ่งถูกควบคุมการทดลองหรืออย่างน้อยก็วัดได้ด้วยข้อผิดพลาดน้อยกว่าอีกอันหนึ่ง หากไม่ตรงตามเงื่อนไขเหล่านี้การถดถอยแบบที่ 1 จะมีอคติต่อ 0 และแนะนำให้ใช้การถดถอยแบบที่ 2 อย่างไรก็ตามด้วยเสียงที่เพียงพอในทั้งสองแกนทำให้การถดถอยแบบ 2 ดูเหมือนว่าจะมีอคติต่อ 1 Warton และคณะ (2006) และ Smith (2009) เป็นแหล่งข้อมูลที่ดีสำหรับการทำความเข้าใจการอภิปราย

นอกจากนี้โปรดทราบว่ามีวิธีการที่แตกต่างกันอย่างละเอียดหลายประการที่อยู่ในหมวดหมู่กว้าง ๆ ของการถดถอยแบบที่ 2 (แกนหลัก, แกนใหญ่ที่ลดลงและการถดถอยแกนกลางมาตรฐาน) และคำศัพท์ที่เกี่ยวกับวิธีการเฉพาะนั้นไม่สอดคล้องกัน

Warton, DI, IJ Wright, DS Falster และ M. Westoby 2549. วิธีปรับเส้นตรง Bivariate สำหรับ allometry Biol รายได้ 81: 259–291 ดอย: 10.1017 / S1464793106007007

Smith, RJ 2009 เกี่ยวกับการใช้และการใช้แกนหลักที่ลดลงสำหรับการปรับสาย am เจสรวง Anthropol 140: 476-486 ดอย: 10.1002 / ajpa.21090


แก้ไข :

@ amoeba ชี้ให้เห็นว่าสิ่งที่ฉันเรียกการถดถอยประเภท 2 ด้านบนเป็นที่รู้จักกันว่าการถดถอยแบบฉากฉาก นี่อาจเป็นคำที่เหมาะสมกว่า ดังที่ฉันได้กล่าวไว้ข้างต้นคำศัพท์ในพื้นที่นี้ไม่สอดคล้องกันซึ่งรับประกันการดูแลเป็นพิเศษ


19
อภิปรายเกี่ยวกับว่าจะใช้แบบ 1 หรือ 2 หรือไม่ ไม่มีอะไรที่จะต้องถกเถียงกันเมื่อคุณรู้ว่าเป้าหมายของคุณคืออะไร (ฟังก์ชันวัตถุประสงค์หรือฟังก์ชันการสูญเสีย) และถ้าคุณทำไม่ได้คุณก็ควรอธิบายให้ชัดเจนก่อนดำเนินการต่อ
Richard Hardy

7
ประเภทที่ 2 ยังให้ผลลัพธ์ที่ไร้สาระหากแกนทั้งสองใช้หน่วยต่างกัน
John Dvorak

4
คุณกำลังใช้ "ประเภท 1" และ "ประเภท 2" ราวกับว่าเป็นเงื่อนไขมาตรฐาน ที่พวกเขา? ฉันไม่เคยหัวใครเรียกการถดถอยตามปกติและการถดถอยแบบฉาก "ประเภท 1" และ "ประเภท 2"
อะมีบา

2
@RichardHardy แน่นอนว่าการทำให้เป้าหมายเฉพาะเจาะจงชัดเจนดีที่สุด แต่ดังที่ฉันได้กล่าวไว้ในคำตอบความประทับใจของฉันคือมีการถกเถียงกันอย่างต่อเนื่องเกี่ยวกับการใช้งานของพวกเขาในบางกรณี - และเอกสารที่ฉันอ้างถึง (รวมถึงข้อเสนอแนะที่ขัดแย้งกันที่ฉันได้รับ
mkt

3
@ mkt ขอบคุณสำหรับการชี้แจงของคุณ แน่นอนอาจมีการถกเถียงกันในหมู่คนที่ไม่แน่ใจว่าเกิดอะไรขึ้น มีจุดเน้นของการอภิปรายเป็นที่ทั้งสองมีความเกี่ยวข้องมากขึ้นสำหรับเป้าหมายเรื่องของพวกเขา สิ่งที่ฉันต้องการเน้นคือไม่มีการอภิปรายเมื่อเป้าหมายของคุณได้รับการกำหนดไว้อย่างดีนั่นคือเป้าหมายของหัวข้อนั้นได้รับการแปลเป็นภาษาทางสถิติ (ซึ่งหลีกเลี่ยงไม่ได้หากต้องใช้วิธีการทางสถิติ) ดังนั้นฉันคิดว่าเราเห็นด้วยเราแค่เน้นส่วนต่าง ๆ ของการโต้แย้ง
Richard Hardy

31

คำถามที่ Excel พยายามตอบคือ: "สมมติว่า y ขึ้นอยู่กับ x ซึ่งเส้นไหนทำนายได้ดีที่สุด" คำตอบก็คือเนื่องจากความแปรปรวนจำนวนมากใน y ไม่มีบรรทัดใดที่จะดีเป็นพิเศษและสิ่งที่ Excel แสดงว่าดีที่สุดที่คุณสามารถทำได้

ถ้าคุณใช้เส้นสีแดงของคุณที่นำเสนอและดำเนินการต่อคุณมันขึ้นอยู่กับ x = -0.714 และ x = -0.712 คุณจะพบว่าค่าของมันเป็นวิธีวิธีการปิดแผนภูมิและมันเป็นที่ใหญ่ระยะทางจากค่า y ที่สอดคล้องกัน .

คำถามที่คำตอบของ Excel ไม่ใช่ "เส้นใดอยู่ใกล้กับจุดข้อมูล" แต่ "ซึ่งเป็นบรรทัดที่ดีที่สุดในการทำนายค่า y จากค่า x" และทำสิ่งนี้อย่างถูกต้อง


4
เผง สมมติฐานพื้นฐานคือ "x จะได้รับ y คือวัด / ทำนาย"
Floris

12

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

โดยสังเขป "เส้นที่พอดีที่สุด" จะดูเหมือนเส้นสีแดง แต่บรรทัดที่ผลิตโดย Excel ไม่ใช่ "เส้นที่เหมาะสมที่สุด"; มันไม่แม้แต่จะพยายาม มันเป็นบรรทัดที่ตอบคำถาม: เมื่อพิจารณาค่าของ x การทำนายที่ดีที่สุดสำหรับ y คืออะไร? หรืออีกวิธีหนึ่งคือค่า y เฉลี่ยสำหรับแต่ละค่า x คืออะไร?

สังเกตความไม่สมดุลที่นี่ระหว่าง x และ y ใช้ชื่อ "เส้นที่เหมาะสมที่สุด" ปิดบังสิ่งนี้ Excel ใช้ "เทรนด์ไลน์" หรือไม่

มันอธิบายได้ดีมากที่ลิงค์ต่อไปนี้:

https://www.stat.berkeley.edu/~stark/SticiGui/Text/regression.htm

คุณอาจต้องการอะไรมากกว่านี้ที่เรียกว่า "ประเภท 2" ในคำตอบข้างต้นหรือ "SD Line" ที่หน้าหลักสูตรของ Berkeley


11

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

กล่าวอีกนัยหนึ่งคุณสามารถทำให้เส้น 'พอดีที่สุด' มากที่สุดดู 'ไม่ได้ใช้งาน' โดยการกระจายสเกลหนึ่งแกนออกไป


1
ฉันยอมรับว่านี่คือคำตอบ - ช่วง X ของค่านั้นกว้างประมาณ 0.02 แต่ช่วง Y เพียงประมาณ 0.005 - อันที่จริงแผนภูมิควรจะกว้างประมาณ 4 เท่าเท่าที่สูงและจะเห็นได้ชัดว่า แบบที่ดีที่สุดจะเป็นแนวนอน ปรากฏการณ์ในคำถามนั้นเป็นภาพที่มองเห็นได้อย่างชัดเจนเนื่องจากระดับที่แตกต่างกัน
RemcoGerlich

3
@RemcoGerlich เราสามารถตกลงได้ดังที่แสดงในคำถามว่าอัตราส่วนภาพของกราฟไม่เป็นประโยชน์ แต่ข้อเสนอแนะที่คุณต้องการกราฟกว้างกว่าสูงถึง 4 เท่าเพราะตัวเลขที่อยู่ในอัตราส่วนนั้นนั้นไม่น่าเชื่อและแน่นอนว่าไม่ใช่เรื่องจริง หากหน่วยบนแกนทั้งสองมีการเปลี่ยนแปลงด้วยปัจจัย 1000 คุณจะแนะนำอัตราส่วนกว้างยาวของ 4000 หรือ 0.004 หรือไม่? อัตราส่วน 4x น่าจะเป็นเพียงผลข้างเคียงของหน่วยต่าง ๆ
Nick Cox

4
คำตอบอื่น ๆ ให้คำตอบที่ถูกต้อง คนนี้เศร้าไม่ได้ ถ้าเราช่วยลดค่าเช่นที่เราได้รับภาพที่มองเห็นเหมือนกัน แต่มีแกนเท่ากันก็ยังคงเป็นปัญหาการปรับพอดีกับ "type 1" กับ "type 2"
Hans Janssen

1
เขาพูดเกี่ยวกับ "สามัญสำนึก" เหมาะสมที่สุดสิ่งที่ถูกต้อง "ต่อสายตามนุษย์" แล้วการปรับขนาดของแกนเป็นสิ่งสำคัญที่เกี่ยวข้อง
RemcoGerlich

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

4

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

ด้านล่างฉันมี scatterplot ที่สร้างขึ้นใน Excel พร้อมสเกลสำหรับ "lon" ที่เปลี่ยนแปลงดังนั้นจึงไม่ทำให้เกิดเกลียวหมุนที่แน่นหนาใน scatterplot ของคุณ จากการเปลี่ยนแปลงนี้ตอนนี้เส้นการถดถอยให้ภาพที่ดีขึ้นและฉันคิดว่าช่วยแสดงให้เห็นว่ามาตราส่วนใน scatterplot ดั้งเดิมให้การประเมินความพอดีที่ทำให้เข้าใจผิด

ฉันคิดว่าการถดถอยใช้งานได้ดีที่นี่ ฉันไม่คิดว่าจำเป็นต้องทำการวิเคราะห์ที่ซับซ้อนมากขึ้น

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

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

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

และนี่คือข้อมูลเดียวกันในพล็อตกระจายที่มีเส้นการถดถอย ที่นี่ lat ได้รับการปฏิบัติเนื่องจากคะแนนที่ขึ้นต่อกันและย้อนกลับจะตรงกับโปรไฟล์ทางภูมิศาสตร์

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


1
การถดถอยไม่แสดงทิศทางของการหมุนของลม
Aksakal

เรารู้เพียง lat และ lon เท่านั้นและสำหรับข้อมูลที่ให้มามันแสดงการเปลี่ยนแปลงของอันที่เกี่ยวข้องกับอีกอัน
ไบรอัน

ดังนั้นเทรนด์ไลน์นี้มีความหมายว่าอะไร?
Aksakal

สมมติว่าจุดแรกในไฟล์ข้อมูลคือตำแหน่งเริ่มต้นปรากฏว่ามีเส้นทางเพิ่มขึ้นเล็กน้อยในเส้นทางที่เดินทางไปทางตะวันออกต่อไป ข้อมูลไม่ได้ให้ข้อมูลเกี่ยวกับความแรงของลมหรือความสูง แต่จะให้ข้อมูลทิศตะวันออกเฉียงเหนือ
ไบรอัน

การแก้ไขซอฟต์แวร์แผนที่ที่ฉันใช้ร้องขอ lat-lon แต่ข้อมูลของเขาคือ lon-lat ดังนั้นทิศทางลมจะอยู่ทางทิศเหนือเล็กน้อยโดยทิศตะวันออกกล่าวคือมีการเคลื่อนไหวทางทิศตะวันออกเล็กน้อยที่เดินทางไปทางทิศเหนือเล็กน้อย เดินทาง).
ไบรอัน

1

ความสับสนของคุณการถดถอยกำลังสองน้อยสุดสามัญ (OLS) (ซึ่งช่วยลดผลรวมของการเบี่ยงเบนกำลังสองเกี่ยวกับค่าที่คาดการณ์ (สังเกตได้จากการสังเกต) ^ 2) และการถดถอยของแกนหลัก (ลดจำนวนผลบวก บรรทัดการถดถอยบางครั้งสิ่งนี้เรียกว่าการถดถอยประเภท II การถดถอยแบบฉากฉากหรือการถดถอยองค์ประกอบหลักที่เป็นมาตรฐาน)

หากคุณต้องการเปรียบเทียบทั้งสองวิธีใน R เพียงลองดู

data=read.csv("https://pastebin.com/raw/4TsstQYm")
require(lmodel2)
fit = lmodel2(lat ~ lon, data=data)
plot(fit,method="OLS") # ordinary least squares regression

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

plot(fit,method="MA") # major axis regression

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

สิ่งที่คุณพบว่าใช้งานง่ายที่สุด (เส้นสีแดงของคุณ) เป็นเพียงแค่การถดถอยของแกนหลักซึ่งการพูดด้วยภาพนั้นเป็นสิ่งที่ดูสมเหตุสมผลที่สุดเพราะมันจะลดระยะห่างในแนวตั้งฉากให้สั้นที่สุด การถดถอยของ OLS จะปรากฏขึ้นเพื่อลดระยะห่างในแนวตั้งฉากให้เหลือน้อยที่สุดถ้าตัวแปร x และ y อยู่ในระดับการวัดเดียวกันและ / หรือมีข้อผิดพลาดจำนวนเท่ากัน ในกรณีของคุณตัวแปร y ของคุณมีวิธีแพร่กระจายมากขึ้นดังนั้นความแตกต่าง ...


0

คำตอบ PCA นั้นดีที่สุดเพราะฉันคิดว่านั่นคือสิ่งที่คุณควรทำเมื่อได้รับคำอธิบายปัญหาของคุณอย่างไรก็ตามคำตอบ PCA อาจทำให้ PCA และการถดถอยสับสนซึ่งแตกต่างอย่างสิ้นเชิง หากคุณต้องการคาดการณ์ชุดข้อมูลนี้โดยเฉพาะคุณต้องทำการถดถอยและมีแนวโน้มที่จะต้องการ Deming ถดถอย (ซึ่งบางครั้งฉันคิดว่าเป็นไปตาม Type II ไม่เคยได้ยินคำอธิบายนี้) อย่างไรก็ตามหากคุณต้องการทราบว่าทิศทางใดสำคัญที่สุด (eigenvectors) และมีการวัดผลกระทบที่สัมพันธ์กับชุดข้อมูล (ค่าลักษณะเฉพาะ) PCA เป็นวิธีการที่ถูกต้อง


4
นี่เป็นชุดของความคิดเห็นเกี่ยวกับคำตอบอื่น ๆ เป็นส่วนใหญ่ มันจะเป็นการดีกว่าที่จะแสดงความคิดเห็นโดยตรงในแต่ละ ฉันไม่เห็นว่าคำตอบของ @Aksakal สร้างความสับสนให้กับ PCA และการถดถอยทั้งหมด
Nick Cox

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