ทำไมฟังก์ชั่น bootstrap ของ scikit-Learn จึงทำการทดสอบตัวอย่างอีกครั้ง


15

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


ข้ามการตรวจสอบ? resampling?
EngrStudent

หากคุณกำลังอ้างถึงแท็กนั่นก็ไม่ได้เพิ่มโดยฉัน ฉันกำลังเริ่มต้นเป็นทางเลือกแทน CV จริงๆแล้ว
gibberfish

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

คำตอบ:


3

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

ในทางตรงกันข้ามเมื่อทำเช่นการตรวจสอบความถูกต้อง 10 เท่าของ Cross คุณกำลังทำซ้ำเพียง 10 ครั้งบนชุดข้อมูลรถไฟและชุดทดสอบที่แตกต่างกัน

n=20ผม=10,000

ลิงก์ที่คุณโพสต์ลงดังนั้นฉันจึงเพิ่มคำอธิบายของฟังก์ชั่นในเวอร์ชัน sklearn ปัจจุบัน (0.14)

คำอธิบายของวิธีการ

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


2

บางทีคุณอาจเข้าสู่บางสิ่ง ดูเหมือนว่าคนอื่น ๆ ดึงหัวข้อเดียวกันที่และBootstrapได้รับการยกเลิกในความโปรดปรานของมากขึ้นโดยเจตนาการใช้resampleวิธีการที่มีความพยายามและความจริงวิธีการเช่นsklearn.cross_validationStratifiedKFold

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