ความรู้เบื้องต้นเกี่ยวกับการถดถอยพหุนาม
เมื่อเรามีชุดข้อมูลที่มีตัวแปรทำนายและ ตัวแปรตอบสนอง เรามักจะใช้ การถดถอยเชิงเส้นอย่างง่าย เพื่อหาปริมาณความสัมพันธ์ระหว่างตัวแปรทั้งสอง
อย่างไรก็ตาม การถดถอยเชิงเส้นอย่างง่าย (SLR) จะถือว่าความสัมพันธ์ระหว่างตัวทำนายและตัวแปรการตอบสนองนั้นเป็นเชิงเส้น เขียนด้วยสัญกรณ์ทางคณิตศาสตร์ SLR ถือว่าความสัมพันธ์อยู่ในรูปแบบ:
Y = β 0 + β 1 X + ε
แต่ในทางปฏิบัติ ความสัมพันธ์ระหว่างตัวแปรทั้งสองจริงๆ แล้วอาจเป็นแบบไม่เชิงเส้น และการพยายามใช้การถดถอยเชิงเส้นอาจส่งผลให้แบบจำลองมีความเหมาะสมไม่ดี
วิธีหนึ่งในการอธิบายความสัมพันธ์แบบไม่เชิงเส้นระหว่างตัวทำนายและตัวแปรตอบสนองคือการใช้ การถดถอยพหุนาม ซึ่งอยู่ในรูปแบบ:
Y = β 0 + β 1 X + β 2 X 2 + … + β ชั่วโมง
ในสมการนี้ h เรียกว่า ดีกรี ของพหุนาม
เมื่อเราเพิ่มค่าของ h โมเดลจะสามารถรองรับความสัมพันธ์แบบไม่เชิงเส้นได้ดีขึ้น แต่ในทางปฏิบัติ เราไม่ค่อยเลือก h ให้มากกว่า 3 หรือ 4 หลังจากจุดนี้ โมเดลจะยืดหยุ่นเกินไปและ พอดีกับข้อมูล มากเกินไป
หมายเหตุทางเทคนิค
- แม้ว่าการถดถอยพหุนามสามารถใส่ข้อมูลที่ไม่เป็นเชิงเส้นได้ แต่ก็ยังถือว่าเป็นรูปแบบหนึ่งของการถดถอย เชิงเส้น เนื่องจากเป็นแบบเชิงเส้นในสัมประสิทธิ์ β1 , β2 , …, βh
- การถดถอยพหุนามยังสามารถใช้กับตัวแปรทำนายหลายตัวได้ แต่สิ่งนี้จะสร้างเงื่อนไขการโต้ตอบในแบบจำลอง ซึ่งอาจทำให้แบบจำลองซับซ้อนมากหากใช้ตัวแปรทำนายหลายตัว
เมื่อใดควรใช้การถดถอยพหุนาม
เราใช้การถดถอยพหุนามเมื่อความสัมพันธ์ระหว่างตัวทำนายและตัวแปรตอบสนองไม่เป็นเชิงเส้น
มีสามวิธีทั่วไปในการตรวจหาความสัมพันธ์แบบไม่เชิงเส้น:
1. สร้างแผนภูมิกระจาย
วิธีที่ง่ายที่สุดในการตรวจจับความสัมพันธ์แบบไม่เชิงเส้นคือการสร้างแผนภาพกระจายของตัวแปรตอบสนองเทียบกับตัวแปรทำนาย
ตัวอย่างเช่น หากเราสร้างแผนภาพกระจายต่อไปนี้ เราจะเห็นว่าความสัมพันธ์ระหว่างตัวแปรทั้งสองเป็นแบบเชิงเส้นโดยประมาณ ดังนั้นการถดถอยเชิงเส้นอย่างง่ายอาจจะใช้ได้ผลดีกับข้อมูลนี้
อย่างไรก็ตาม หากแผนภาพกระจายของเราดูเหมือนกราฟใดกราฟหนึ่งต่อไปนี้ เราอาจเห็นว่าความสัมพันธ์นั้นไม่เป็นเชิงเส้น ดังนั้นการถดถอยพหุนามจึงเป็นความคิดที่ดี:
2. สร้างแปลงส่วนที่เหลือเทียบกับแปลงที่ติดตั้งไว้
อีกวิธีหนึ่งในการตรวจจับความไม่เชิงเส้นคือการปรับแบบจำลองการถดถอยเชิงเส้นอย่างง่ายให้พอดีกับข้อมูล จากนั้นจึงสร้าง พล็อตของค่าคงเหลือเทียบกับค่าที่พอดี
หากส่วนที่เหลือของพล็อตมีการกระจายประมาณเท่าๆ กันรอบๆ ศูนย์โดยไม่มีแนวโน้มที่ชัดเจน การถดถอยเชิงเส้นอย่างง่ายก็น่าจะเพียงพอแล้ว
อย่างไรก็ตาม หากส่วนที่เหลือแสดงแนวโน้มที่ไม่เป็นเชิงเส้นในกราฟ แสดงว่าความสัมพันธ์ระหว่างตัวทำนายและการตอบสนองมีแนวโน้มไม่เชิงเส้น
3. คำนวณ R 2 ของโมเดล
ค่า R 2 ของแบบจำลองการถดถอยจะบอกเปอร์เซ็นต์ของความแปรผันในตัวแปรตอบสนองที่สามารถอธิบายได้ด้วยตัวแปรทำนาย
หากคุณใส่แบบจำลองการถดถอยเชิงเส้นอย่างง่ายเข้ากับชุดข้อมูลและค่า R 2 ของแบบจำลองนั้นค่อนข้างต่ำ อาจบ่งชี้ว่าความสัมพันธ์ระหว่างตัวทำนายและตัวแปรตอบสนองนั้นซับซ้อนกว่าความสัมพันธ์เชิงเส้นแบบธรรมดา
นี่อาจเป็นสัญญาณว่าคุณอาจต้องลองใช้การถดถอยพหุนามแทน
ที่เกี่ยวข้อง: ค่า R-squared ที่ดีคืออะไร?
วิธีการเลือกระดับของพหุนาม
แบบจำลองการถดถอยพหุนามมีรูปแบบดังต่อไปนี้:
Y = β 0 + β 1 X + β 2 X 2 + … + β ชั่วโมง
ในสมการนี้ h คือดีกรีของพหุนาม
แต่จะเลือกค่าให้ h ได้อย่างไร?
ในทางปฏิบัติ เราปรับโมเดลต่างๆ หลายๆ แบบให้พอดีด้วยค่า h ที่แตกต่างกัน และดำเนิน การตรวจสอบข้าม k-fold เพื่อพิจารณาว่าโมเดลใดทำให้เกิดข้อผิดพลาดกำลังสองเฉลี่ยในการทดสอบต่ำที่สุด (MSE)
ตัวอย่างเช่น เราสามารถใส่โมเดลต่อไปนี้เข้ากับชุดข้อมูลที่กำหนดได้:
- Y = β 0 + β 1
- Y = β 0 + β 1 X + β 2 X 2
- Y = β0 + β1X + β2X2 + β3X3
- Y = β 0 + β 1 X + β 2 X 2 + β 3 X 3 + β 4 X 4
จากนั้นเราสามารถใช้การตรวจสอบข้าม k-fold เพื่อคำนวณการทดสอบ MSE สำหรับแต่ละรุ่น ซึ่งจะบอกเราว่าแต่ละรุ่นทำงานได้ดีเพียงใดกับข้อมูลที่ไม่เคยเห็นมาก่อน
การแลกเปลี่ยนความแปรปรวนอคติของการถดถอยพหุนาม
มี การแลกเปลี่ยนความแปรปรวนอคติ เมื่อใช้การถดถอยพหุนาม เมื่อเราเพิ่มระดับของพหุนาม ความเอนเอียงจะลดลง (เมื่อแบบจำลองมีความยืดหยุ่นมากขึ้น) แต่ความแปรปรวนจะเพิ่มขึ้น
เช่นเดียวกับโมเดลแมชชีนเลิร์นนิงอื่นๆ เราจำเป็นต้องค้นหาจุดสมดุลที่เหมาะสมที่สุดระหว่างอคติและความแปรปรวน
ในกรณีส่วนใหญ่ สิ่งนี้จะทำให้ระดับของพหุนามเพิ่มขึ้นในระดับหนึ่ง แต่เมื่อเกินค่าที่กำหนด แบบจำลองจะเริ่มปรับให้เข้ากับสัญญาณรบกวนในข้อมูล และ MSE ของการทดสอบจะเริ่มลดลง
เพื่อให้แน่ใจว่าเราพอดีกับแบบจำลองที่ยืดหยุ่นแต่ไม่ยืดหยุ่น เกินไป เราใช้การตรวจสอบข้าม k-fold เพื่อค้นหาแบบจำลองที่สร้างการทดสอบ MSE ต่ำสุด
วิธีดำเนินการถดถอยพหุนาม
บทช่วยสอนต่อไปนี้เป็นตัวอย่างวิธีการดำเนินการถดถอยพหุนามในซอฟต์แวร์ต่างๆ:
วิธีการดำเนินการถดถอยพหุนามใน Excel
วิธีดำเนินการถดถอยพหุนามใน R
วิธีดำเนินการถดถอยพหุนามใน Python