ความจริงของ Linear Regression ในปี 2015
(stat.cmu.edu)- เป็นต้นฉบับเพื่อการเรียนรู้สำหรับผู้ที่เรียนหรือสอน linear regression โดยอิงจากโน้ตการสอนวิชา Carnegie Mellon 36-401 Modern Regression ในฤดูใบไม้ร่วงปี 2015
- ไม่ผูก linear regression ไว้กับสมมติฐานแบบยุคปี 1960 และลดสัดส่วนทฤษฎีที่พึ่งพา Gaussian noise กับโมเดลเชิงเส้นที่ระบุอย่างถูกต้อง
- ให้ความสำคัญกับเทคนิคที่ทนทาน (robust) แม้จะใช้การคำนวณมากกว่า และระบุว่าต้นฉบับเองก็อาจยังไปไม่ไกลพอในทิศทางนั้น
- มีบางส่วนทับซ้อนกับบทที่สองของ Advanced Data Analysis from an Elementary Point of View แต่ก็มีเนื้อหาใหม่และเนื้อหาระดับพื้นฐานกว่าจำนวนมาก
- สารบัญครอบคลุมกว้าง ตั้งแต่การพยากรณ์ที่เหมาะสมที่สุด, least squares, maximum likelihood, diagnostics, inference, multicollinearity, model selection, weighted/generalized least squares, variable selection, trees ไปจนถึง bootstrap
ลักษณะและแนวทางของต้นฉบับ
- ต้นฉบับนี้เป็นเอกสารที่รวบรวมโน้ตการสอนวิชา 36-401, Modern Regression, in fall 2015
- แม้จะยอมรับว่ามีสื่อเกี่ยวกับ linear regression อยู่มากแล้ว แต่ก็เผยแพร่ด้วยมองว่าอาจเป็นประโยชน์ต่อผู้ที่เรียนหรือสอน
- จากมุมมองที่ว่าสถิติศาสตร์ได้พัฒนาต่อมาหลังปี 1960 เอกสารนี้จึงลดการเน้นทฤษฎีที่อาศัยโมเดลเชิงเส้นที่ระบุอย่างถูกต้องและ Gaussian noise
- โครงสร้างเอนเอียงไปทางการชอบใช้เทคนิคที่ทนทานแม้จะใช้การคำนวณมากกว่า และผู้เขียนเสริมว่าอาจยังไม่ได้ไปไกลพอในทิศทางนั้น
- มีบางส่วนทับซ้อนกับ Advanced Data Analysis from an Elementary Point of View โดยเฉพาะเกี่ยวข้องกับบทที่สอง “The Truth About Linear Regression”
- ขณะเดียวกันก็มีเนื้อหาใหม่และเนื้อหาระดับพื้นฐานกว่าจำนวนมาก และยินดีรับความคิดเห็นกับการแก้ไข โดยเฉพาะการแก้ข้อผิดพลาด
ขอบเขตที่ครอบคลุมและการอัปเดต
- สารบัญปัจจุบันไล่ตั้งแต่การทำโมเดลพื้นฐานของ linear regression ไปจนถึง diagnostics, inference และเทคนิคขยายต่าง ๆ
-
การทำโมเดลพื้นฐานและ simple regression
- Optimal Prediction
- Introducing Statistical Modeling
- Simple Linear Regression Models, with Hints at Their Estimation
- The Method of Least Squares for Simple Linear Regression
- The Method of Maximum Likelihood for Simple Linear Regression
- Diagnostics and Modifications for Simple Regression
- Inference on Parameters
- Predictive Inference for the Simple Linear Model
- Interpreting Parameters after Transformation
- F-Tests, R^2, and Other Distractions
- Simple Linear Regression in Matrix Format
-
multiple regression และหัวข้อขยาย
- Multiple Linear Regression
- Diagnostics and Inference for Multiple Linear Regression
- Polynomial and Categorical Regression
- Multicollinearity
- Tests and Confidence Sets
- Interactions
- Outliers and Influential Points
- Model Selection
- Review
- Weighted and Generalized Least Squares
- Variable Selection
- Trees
- The Bootstrap I
- The Bootstrap II
- ในอนาคต เอกสาร linear spatio-temporal estimation and prediction จากวิชา Data Over Space and Time อาจถูกรวมไว้ในต้นฉบับนี้
- มีการกล่าวถึง Wiener filter, kriging เป็นต้นเป็นตัวอย่าง
- การอัปเดตข้อความครั้งล่าสุดคือการรันโค้ดใหม่หลังอัปเดต R และการแก้คำผิด โดยลงวันที่ 20 ตุลาคม 2025
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
การถดถอยเชิงเส้น มักถูกประเมินค่าต่ำเกินไป
y = a*sin(x)+bx^2ก็เป็นแบบจำลองเชิงเส้นอีกประเด็นสำคัญคือ มนุษย์ โดยเฉพาะในระดับกลุ่ม มักตัดสินใจอย่างมีเหตุผลได้ยากเกินกว่า การตัดสินใจเชิงเส้น
ในการประชุมเพื่อกำหนดทิศทางบริษัท เราก็มักพูดได้แค่ประมาณว่า “เพิ่มงบโฆษณา และลดต้นทุนการได้มาซึ่งลูกค้าแบบอื่นอย่างคูปองส่วนลด” การหาสมดุลระหว่าง “การเพิ่มงบโฆษณา” กับ “การลดต้นทุนอื่น” ก็คือแบบจำลองเชิงเส้นอย่างง่าย
ต่อให้มีแบบจำลองไม่เชิงเส้นที่ยอดเยี่ยม หัวใจสำคัญก็ไม่ใช่แค่ “การตีความได้” แต่คือ การนำไปปฏิบัติได้จริง เมื่อเอาผลการวิเคราะห์การถดถอยเข้าไปในห้องประชุม เราสามารถจำลองกลยุทธ์หลายแบบได้อย่างรวดเร็วและสร้างความมั่นใจเชิงเหตุผลต่อทิศทางได้
ผมเคยลำบากกับการสื่อสารอินไซต์ที่นำไปใช้ได้จริงขึ้นไปยังผู้บริหาร แต่หลังจากเข้าใจการวิเคราะห์การถดถอยอย่างถูกต้องแล้ว ก็พบว่าน่าประหลาดใจว่าการเปิดดูและทำความเข้าใจกระบวนการธุรกิจที่ค่อนข้างซับซ้อนได้รวดเร็วขึ้นมาก
ถึงอย่างนั้นก็แทบไม่ค่อยมีผู้มีส่วนได้ส่วนเสียที่เข้าใจมันอย่างถูกต้องหรือเห็นคุณค่าของมัน ส่วนใหญ่ผมคิดว่าเป็นเพราะความขี้เกียจและความเคยชิน
ปัญหาที่เจอบ่อยในวรรณกรรมคือผู้เขียนมักตีความเกินจริงกับแบบจำลองที่มีพจน์กำลังสอง เช่น
Y = age + age^2โดยเฉพาะความชันในช่วงอายุต่ำสุดหรือสูงสุด กราฟอาจดูเหมือนลดลงในวัยสูงสุดถ้ามองแต่เส้นโดยไม่ดูช่วงความเชื่อมั่น แต่จริง ๆ แล้วความชันติดลบที่เห็นอาจเป็นเพียงภาพลวง เพราะ แบบจำลองกำลังสองไม่สามารถแสดงเส้นกำกับเข้าใกล้ ได้ ตัวอย่าง: https://www.researchgate.net/figure/Scatter-plot-of-the-quad...)เมื่อไม่มีตัวเลือกที่กำหนดไว้โดยทฤษฎี ผมจะใช้ พหุนามเศษส่วน ตัวอย่างเช่น กำหนด
x^sโดยให้s = {−2, −1, −0.5, 0, 0.5, 1, 2, 3}แล้วเลือกพหุนามที่ฟิตดีที่สุดโดยหลีกเลี่ยงการฟิตเกิน: https://journal.r-project.org/articles/RN-2005-017/RN-2005-0...มันไม่ใช่เทคนิคที่แย่ และผมก็ลองวิธีอื่นด้วย เช่น การถดถอยพหุนามแบบแบ่งช่วงหรือการวางจุดปม แต่ผมไม่ค่อยแน่ใจว่าจะทดสอบปฏิสัมพันธ์ระหว่างกลุ่มสองกลุ่มที่มีสปลายน์พร้อมจุดปมได้อย่างไร แบบจำลองบวกก็คล้ายกัน: https://bookdown.org/ssjackson300/Machine-Learning-Lecture-N...
แต่การอธิบายแบบนี้อาจปิดบังมากกว่าจะช่วยให้เข้าใจ การเลือกทรานส์ฟอร์มที่เหมาะกับกรณีเฉพาะนั้นเป็นปัญหาที่ยากมาก ทำไมต้องเป็น
sin(x)กับx^2ไม่ใช่tanh(x)กับx^(1/2)ด้วยล่ะเหมือนผมกำลังพลาดอะไรพื้นฐานบางอย่างอยู่
ในการทำรีเกรสชัน เทคนิคที่สำคัญที่สุดคือ การมองให้ออกว่า intercept คืออะไร ฟังดูเป็นเรื่องเล็กและจริง ๆ ก็เล็ก แต่พอเริ่มใส่ปฏิสัมพันธ์ระหว่างพจน์แล้วเรื่องจะเปลี่ยนไป เห็นนักศึกษาปริญญาโท/เอกอายุน้อยพลาดตรงนี้บ่อยมาก
ลองนึกถึงโมเดลเชิงเส้นอย่างง่ายที่ใช้คะแนนสอบ อายุ (7~16 ปี) และตัวแปรจัดหมวดหมู่แบบไบนารีคือการวินิจฉัยออทิซึม (0=กลุ่มควบคุม, 1=ออทิซึม) จะได้
score = age + diagnosis + age:diagnosisหรือscore = (X1)age + (X2)diagnosis + (X3)age:diagnosisถ้า
X2มีนัยสำคัญ นักศึกษาที่มองแบบตรงไปตรงมาอาจพูดว่า “มีความแตกต่างระหว่างกลุ่ม!” แต่จะพลาดประเด็นที่ว่านี่คือ ความแตกต่างของกลุ่มที่คาดการณ์ไว้เมื่อผู้เข้าร่วมมีอายุ 0 ปี ควรทำ centering ของอายุด้วยค่าเฉลี่ย มัธยฐาน หรือดีกว่านั้นคืออายุที่สนใจ เมื่อมีปฏิสัมพันธ์อยู่ในสมการ ค่าประมาณพารามิเตอร์ทั้งหมดที่เป็น “ลำดับต่ำกว่า” จะถูกตีความโดยอิงกับ interceptเราอาจเห็นว่าเอฟเฟกต์ของอายุมีนัยสำคัญแล้วคิดว่าใช้ได้กับทั้งสองกลุ่ม แต่
X1บอกเพียงความชันที่คาดการณ์ไว้ของกลุ่มอ้างอิงคือกลุ่มควบคุมเท่านั้น ปฏิสัมพันธ์เป็นการทดสอบว่าความชันตามอายุของสองกลุ่มต่างกันหรือไม่ ยิ่งไปกว่านั้น แม้ปฏิสัมพันธ์จะไม่มีนัยสำคัญ ก็ยังเป็นไปได้ว่าเอฟเฟกต์ของอายุในกลุ่มออทิซึมไม่ได้แตกต่างจาก 0 อย่างมีนัยสำคัญ ถ้าข้อมูลอยู่ในช่วงที่กำกวม ก็ต้องระวังในการตีความสำหรับบางคนเรื่องนี้อาจดูชัดเจนอยู่แล้ว แต่การเข้าใจ conditional space ของพารามิเตอร์ให้ถูกต้องเมื่อมีพจน์ปฏิสัมพันธ์นั้นต้องใช้ความพยายาม ที่นี่ผมยังละเรื่องวิธีเข้ารหัสกลุ่ม เช่น จะอิงค่าเฉลี่ยรวม หรือใช้อีกกลุ่มหนึ่งเป็นฐาน แต่บทเรียนยังเหมือนเดิม ต้องเข้าใจว่า intercept หมายถึงอะไร และชี้ไปที่ใคร/อะไร
มี ExploreModelMatrix ที่ช่วยงานนี้ด้วย: https://www.bioconductor.org/packages/release/bioc/html/Expl...
ถ้าคุณเป็นสาย Bayesian แบบไม่ชอบ p-value ก็ไม่เป็นไร แค่อยากชี้ว่าผมเห็นแม้แต่นักเรียนฉลาด ๆ ก็ยังลำบากกับการตีความ โมเดลที่มีพจน์ปฏิสัมพันธ์ แบบเป็นธรรมชาติ และอยากชี้ทางที่ถูกต้อง
X1บอกเพียงความชันที่คาดการณ์ไว้ของกลุ่มอ้างอิงคือกลุ่มควบคุม” นั้นไม่ถูก ถ้าใช้สมการตามที่เขียนX1เป็นค่าของทั้งกลุ่มรวมกัน ยังไม่ได้สร้าง dummy variable ที่ถูกต้องX1*age*isControl+X2*isControl+X3*isAutism+X4*isAutism*age+X5*ageต้องเป็นแบบนี้จึงจะแยกเอฟเฟกต์ของอายุในสองกลุ่ม และเอฟเฟกต์อายุที่ใช้ร่วมกันของทั้งสองกลุ่มออกจากกันได้
ค่าน้ำหนักที่มีนัยสำคัญของตัวแปรการวินิจฉัย
X2ไม่ได้บอกเอฟเฟกต์ของการวินิจฉัยที่อายุใดอายุหนึ่ง ยกเว้นที่ อายุ 0 ปีควรทำ centering ของโมเดลใหม่โดยใช้อายุที่สนใจเป็นฐาน
เมื่อ 10 ปีก่อนผมเรียน 36-401 และ 36-402 ที่ CMU ตอนนั้น Shalizi เป็นคนสอน และทั้งสองวิชาก็เป็นวิชาสถิติที่ดีมาก ไม่ว่าจะมองว่าดีหรือร้าย มันทำให้ต้องเรียน base R
จุดอ่อนใหญ่ของ linear regression คือสมมติฐานเชิงวิชาการที่จำเป็นต่อการตีความค่าสัมประสิทธิ์อย่างมีความหมาย ทำได้ง่ายกับชุดข้อมูลเล็ก ๆ สำหรับการสอน แต่แทบใช้ไม่ได้กับข้อมูลจริงที่เละเทะ และผมก็ได้เรียนรู้เรื่องนี้แบบเจ็บ ๆ
ถ้าไม่มีสิ่งนี้ ก็ต้องใช้ mixed-effects model เพื่อสะท้อนการตอบสนองที่มีความสัมพันธ์กัน หรือไม่ก็เฉลี่ยรวมคำตอบเข้าด้วยกัน การหา average จะลดความแปรปรวนลง แต่ก็ลดจำนวน data point ด้วย และสองอย่างนี้มักหักล้างกันตอนคำนวณ t-statistic ของ Wald test
สำหรับสมมติฐานอื่น เช่น residual ต้องเป็นปกติ โมเดลเชิงเส้นมักทนต่อการละเมิดได้ระดับหนึ่ง ถึงอย่างนั้นก็ควรเข้าใจเสมอว่าการละเมิดเหล่านั้นส่งผลอย่างไร เช่น ลองรัน simulation หรือดู p-value histogram ของข้อมูลภายใต้สมมติฐานศูนย์
ผมชอบที่มีการแนะนำ ridge regression ในบริบทของ multicollinearity
ทุกวันนี้ดูเหมือนเกือบทุกคนจะเรียนมันในฐานะเทคนิค regularization เพื่อป้องกัน overfitting แต่หนึ่งในจุดประสงค์ดั้งเดิมหลัก ๆ และน่าจะเป็นที่มาของมัน คือการกระจายน้ำหนักอย่างสมดุลระหว่างตัวแปรพยากรณ์ที่มีความสัมพันธ์กันสูงหรือเกือบพึ่งพาเชิงเส้นกัน แม้จะมีข้อมูลมากพอ ตัวแปรพยากรณ์แบบนี้ก็ยังสร้างปัญหาใหญ่ได้
อยากเห็นคนอย่างนักวิจัยเชิงปริมาณของ Citadel มาสอน linear regression ว่าพวกเขาใช้มันอย่างไร โดยเฉพาะสนใจอะไร มีผลลัพธ์เชิงทฤษฎีอะไรไหมที่เปลี่ยนวิธีมองปัญหาอย่างมีนัยสำคัญ
ในปัญหาที่เกี่ยวข้องอย่างการประมาณ covariance matrix ก็มีพวก shrinkage estimator ที่นิยมใช้ แบบง่ายที่สุดคือ Linear Shrinkage ของ Ledoit-Wolf
ถ้าไม่นับ neural network ดูเหมือนคนส่วนใหญ่ที่ทำ regression จะใช้ linear regression ที่ผ่านการปรับแต่งเฉพาะทางแบบนี้ตามโดเมน
โดยเฉพาะในสายการเงิน มันง่ายมากที่จะหลอกตัวเองด้วยโมเดลที่ซับซ้อนกว่า
x'*yยังไม่พอ แต่พอหารด้วย inner productx'*xก็พอดีเลย (ได้รีเกรสชัน) และถ้าเอาไปหารด้วย inner product อีกตัวคือy'*yพร้อมถอดราก ก็จะกลายเป็นค่าสหสัมพันธ์ซึ่งดูเยอะเกินไปน่าเสียดายที่ไม่มีความลับใหญ่หรือเรื่องเปิดโปงอะไร อย่างที่ Jim Simons พูดในบทสัมภาษณ์กับ Numberphile มันคือการค่อย ๆ สะสมสัญญาณอ่อน ๆ อย่างช้า ๆ และเจ็บปวด พร้อมกับสร้างและปรับปรุงกล่องต่าง ๆ ของระบบไปเรื่อย ๆ ระหว่างนั้นอินเทอร์เฟซต่าง ๆ ก็เป็นที่รู้กันโดยมาก
ในภาพรวม วิธี fit โมเดลเองไม่ได้ให้กำไรอย่างมหาศาล แค่อย่าทำพังก็พอ
ผมไม่ได้อยู่ที่ Citadel แต่ทำงาน R&D และเทรดดิ้งเชิงปริมาณมา 20 ปีแล้ว
ตอนเรียนปริญญาตรี ผมต้องกลับมาเรียน linear regression ซ้ำแล้วซ้ำอีกในหลายวิชา แน่นอนว่าภายใต้สมมติฐานที่เป็นจริง มันน่าสนใจที่เราพิสูจน์ความเหมาะที่สุดของมันได้ด้วยทฤษฎีสถิติและความน่าจะเป็น
ตอนเรียนปริญญาเอกด้านวิทยาการคอมพิวเตอร์ ผมเห็นโจทย์ regression ที่ส่วนใหญ่ใช้โมเดล deep learning แม้ไม่ได้ทำโดยตรง แต่ถ้ามีวิธีนำการพิสูจน์และทฤษฎีบทที่เข้มงวดของโมเดลเชิงเส้นแบบดั้งเดิมไปใช้กับ โมเดล deep regression ได้ ก็คงเจ๋งมาก
“Data Analysis from an Elementary Point of View” ของ Shalizi ก็เป็นตำราเบื้องต้นที่ดีเช่นกัน: https://www.stat.cmu.edu/~cshalizi/ADAfaEPoV/
เนื้อหาให้น้ำหนักกับแบบจำลองเชิงเส้น, แบบจำลองบวก, และการจำลองเป็นหลัก ซึ่งเป็นทิศทางที่ถูกต้อง 90% ของหนังสือเล่มนี้แทบไม่มีประโยชน์หากไม่มีคอมพิวเตอร์ แต่นั่นก็คือความจริงของยุคปัจจุบัน
เหมือนบทความนี้จะยังไม่ได้กล่าวถึง แต่ใน linear regression ก็มี ปรากฏการณ์ double descent ที่พบได้บ่อยใน deep learning เช่นกัน
ถ้าจะให้เห็นสิ่งนี้ ต้องใส่ regularization บางอย่างเข้าไป คิดว่าน่าจะดีถ้าเพิ่มประเด็นนี้เข้าไปด้วย
ในฐานะคนที่กำลังสอน การถดถอยด้วย XGBoost อยู่ในเดือนนี้ นี่เป็นบทความที่อ่านได้ดีมาก ต่างจากตำราวิชาการจำนวนมาก ตรงที่เขียนได้ดีมากและเข้าถึงง่าย
โดยเฉพาะบทที่ 6, การวินิจฉัยเชิงภาพ ชอบมาก ทำได้ดีมาก
ดูน่าสนใจดี แต่อยากรู้ว่ามีวิธีแปลง PDF นี้ให้อยู่ในรูปแบบที่เหมาะกับมือถือ ไหม