LASSO เหนือกว่าการเลือกไปข้างหน้า / การกำจัดไปข้างหลังในแง่ของข้อผิดพลาดการตรวจสอบความถูกต้องของการตรวจสอบข้ามของรุ่น


10

ฉันได้รับแบบจำลองที่ลดลงสามแบบจากแบบเต็มรูปแบบดั้งเดิมโดยใช้

  • การเลือกไปข้างหน้า
  • กำจัดไปข้างหลัง
  • เทคนิคการลงโทษ L1 (LASSO)

สำหรับรุ่นที่ได้รับใช้ไปข้างหน้าเลือกกำจัด / ข้างหลังผมได้รับการตรวจสอบประมาณการข้ามความผิดพลาดของการทำนายโดยใช้CVlmในแพคเกจในการใช้ได้DAAG Rสำหรับรูปแบบที่เลือกผ่าน Lasso cv.glmผมใช้

ข้อผิดพลาดในการทำนายสำหรับ LASSO นั้นน้อยกว่าข้อผิดพลาดที่ได้รับจากคนอื่น ดังนั้นโมเดลที่ได้จาก LASSO จึงน่าจะดีกว่าในแง่ของความสามารถในการทำนายและความแปรปรวน นี่เป็นปรากฏการณ์ทั่วไปที่เกิดขึ้นเสมอหรือเป็นปัญหาที่เฉพาะเจาะจงหรือไม่? อะไรคือเหตุผลเชิงทฤษฎีสำหรับสิ่งนี้หากนี่เป็นปรากฏการณ์ทั่วไป


3
ตรวจสอบให้แน่ใจว่าคุณไม่ได้ใช้กฎการให้คะแนนความแม่นยำที่ไม่เหมาะสมเช่นการจำแนกตามสัดส่วนที่ถูกต้อง และเปรียบเทียบกับ L2 norm ฉันจะพนันได้เลยว่ามันจะดีกว่าถ้าคุณลองทั้ง 3 วิธี
Frank Harrell

คำตอบ:


16

LASSO และการเลือกรุ่นเดินหน้า / ถอยหลังมีทั้งจุดแข็งและข้อ จำกัด ไม่สามารถทำการแนะนำที่ครอบคลุมได้ การจำลองสถานการณ์สามารถสำรวจได้เพื่อแก้ไขปัญหานี้

pnpn

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

สุดท้ายการเลือกแบบจำลองแบบขั้นตอนสามารถมีเกณฑ์ที่แตกต่างกันสำหรับการรวม / ไม่รวมตัวถอยหลังที่แตกต่างกัน หากคุณใช้ค่า p สำหรับการทดสอบ Wald ของพารามิเตอร์เฉพาะรุ่นหรือแบบจำลองผลลัพธ์ R ^ 2 คุณจะทำได้ไม่ดีนักส่วนใหญ่เป็นเพราะอคติการตรวจสอบภายใน (อีกครั้งอาจแก้ไขด้วย CV) ฉันคิดว่ามันน่าแปลกใจที่นี่ยังคงเป็นวิธีที่รูปแบบดังกล่าวมีแนวโน้มที่จะดำเนินการ AIC หรือ BIC เป็นเกณฑ์ที่ดีกว่ามากสำหรับการเลือกแบบจำลอง

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

pn

pn


4

คุณต้องการเลือกชุดย่อยของตัวทำนายตามเกณฑ์บางอย่าง อาจเป็น AIC ในตัวอย่างหรือปรับ R ^ 2 หรือการตรวจสอบความถูกต้องไขว้ไม่สำคัญ

คุณสามารถทดสอบการรวมกันของเซตย่อยของตัวทำนายและเลือกชุดย่อยที่ดีที่สุด อย่างไรก็ตาม

  • ใช้เวลานานมากเนื่องจากการระเบิดของพารามิเตอร์แบบ combinatorial
  • ใช้งานได้หากคุณมีพารามิเตอร์มากกว่าการสังเกตในแง่ที่ว่าคุณทดสอบชุดค่าผสมของตัวทำนายทั้งหมดที่ให้ทางแก้ไข

คุณสามารถใช้การเลือกตามลำดับขั้นตอนไปข้างหน้า

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

คุณสามารถใช้การกำจัดแบบย้อนหลัง

  • ใช้งานไม่ได้หากคุณมีพารามิเตอร์มากกว่าการสังเกตไม่มีจุดเริ่มต้นที่ดีเพียงอย่างเดียว (ในทางทฤษฎีคุณสามารถเริ่มจากจุดเริ่มต้นที่ถูกต้องทั้งหมดทำงานย้อนหลังเลือกอันที่ดีที่สุด
  • เช่นเดียวกับการก้าวไปข้างหน้าใช้เวลาน้อยกว่าชุดย่อยทั้งหมด แต่อาจไม่ได้รับชุดค่าผสมที่ดีที่สุดอย่างสมบูรณ์ เมื่อทำนายมีความสัมพันธ์

คุณสามารถใช้ LASSO

  • ทำงานได้แม้ในขณะที่คุณมีพารามิเตอร์มากกว่าการสังเกต
  • ประสิทธิภาพของ CPU เมื่อคุณมีพารามิเตอร์จำนวนมากและการระเบิดย่อยของ combinatorial
  • เพิ่มการทำให้เป็นปกติ

สำหรับคำถามของคุณว่าเหตุใด LASSO จึงทำงานได้ดีขึ้นกับข้อมูลของคุณใน CV

  • ความเป็นไปได้อย่างหนึ่งคือการพึ่งพาพา ธ ที่อธิบายไว้ข้างต้น - LASSO อาจพบเซตย่อยที่ดีกว่า บางทีมันอาจจะโชคดีบางที LASSO โดยทั่วไป / บางครั้งอาจได้ชุดย่อยที่ดีกว่าฉันไม่แน่ใจ อาจมีวรรณกรรมเกี่ยวกับเรื่องนี้
  • ความเป็นไปได้อื่น ๆ (ที่เป็นไปได้มากกว่า) คือการทำให้เป็นมาตรฐานของ LASSO จะป้องกันการเกิด overfitting ดังนั้น LASSO จึงทำงานได้ดีขึ้นใน CV / ตัวอย่างออก

บรรทัดล่าง LASSO ให้การกำหนดมาตรฐานและการเลือกชุดย่อยที่มีประสิทธิภาพโดยเฉพาะอย่างยิ่งเมื่อคุณมีผู้ทำนายจำนวนมาก

BTW คุณสามารถทำ LASSO และเลือกรุ่นของคุณโดยใช้ CV (ส่วนใหญ่) แต่ยังใช้ AIC หรือเกณฑ์อื่น ๆ รันโมเดลของคุณด้วยการทำให้เป็นมาตรฐาน L1 และไม่มีข้อ จำกัด จากนั้นค่อย ๆ กระชับข้อ จำกัด จนกว่า AIC จะถึงข้อผิดพลาดน้อยที่สุดหรือข้อผิดพลาด CV หรือเกณฑ์ที่คุณเลือก ดูhttp://scikit-learn.org/stable/auto_examples/linear_model/plot_lasso_model_selection.html

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