ทำไมผู้เรียนถึงอ่อนแอ?


28

ดูเพิ่มเติมคำถามที่คล้ายกันใน stats.SE

ในการเพิ่มอัลกอริทึมเช่นAdaBoostและLPBoostเป็นที่รู้กันว่าผู้เรียนที่ "อ่อนแอ" ที่จะรวมกันนั้นต้องทำงานได้ดีกว่าโอกาสที่จะเป็นประโยชน์จากวิกิพีเดีย:

ตัวแยกประเภทที่ใช้อาจอ่อนแอ (เช่นแสดงอัตราข้อผิดพลาดที่สำคัญ) แต่ตราบใดที่ประสิทธิภาพไม่ได้สุ่ม (ทำให้เกิดข้อผิดพลาดที่อัตรา 0.5 สำหรับการจำแนกแบบไบนารี) พวกเขาจะปรับปรุงตัวแบบสุดท้าย แม้แต่ตัวแยกประเภทที่มีอัตราความผิดพลาดสูงกว่าที่คาดไว้จากตัวจําแนกแบบสุ่มจะมีประโยชน์เนื่องจากจะมีสัมประสิทธิ์เชิงลบในการรวมกันเชิงเส้นสุดท้ายของตัวจําแนกประเภท

  • อะไรคือประโยชน์ของการใช้ความอ่อนแอเมื่อเทียบกับผู้เรียนที่แข็งแกร่ง? (เช่นทำไมไม่ส่งเสริมด้วยวิธีการเรียนรู้ "แข็งแรง" - เรามีแนวโน้มที่จะมีน้ำหนักเกินหรือไม่)

  • มีความแข็งแรง "ดีที่สุด" สำหรับผู้เรียนที่อ่อนแอหรือไม่? และสิ่งนี้เกี่ยวข้องกับจำนวนผู้เรียนในวงดนตรีหรือไม่?

มีทฤษฎีใดบ้างที่จะสำรองคำตอบสำหรับคำถามเหล่านี้


ผู้เรียนที่อ่อนแอจะหลีกเลี่ยงข้อมูลการฝึกที่ไม่เหมาะสมมากเกินไป
Aman Deep Gautam

คำตอบ:


15

ดังนั้นการส่งเสริมเป็นอัลกอริทึมการเรียนรู้ซึ่งสามารถสร้างการทำนายความแม่นยำสูงโดยใช้รูทีนย่อยอีกอัลกอริทึมซึ่งสามารถสร้างสมมติฐานได้อย่างมีประสิทธิภาพดีกว่าเล็กน้อย (โดยพหุนามผกผัน) กว่าการคาดเดาแบบสุ่ม

มันเป็นข้อได้เปรียบหลักคือความเร็ว

เมื่อ Schapire นำเสนอมันในปี 1990 มันเป็นความก้าวหน้าในการที่มันแสดงให้เห็นว่าผู้เรียนเวลาพหุนามสร้างสมมติฐานที่มีข้อผิดพลาดเพียงเล็กน้อยน้อยกว่า 1/2 สามารถเปลี่ยนเป็นผู้เรียนเวลาพหุนามสร้างสมมติฐานด้วยข้อผิดพลาดเล็ก ๆ โดยพลการ

ทฤษฎีการสำรองคำถามของคุณอยู่ใน"ความแข็งแกร่งของความอ่อนแอในการเรียนรู้" ( pdf ) ซึ่งโดยทั่วไปแล้วเขาแสดงให้เห็นว่าการเรียนรู้ที่ "แข็งแรง" และ "อ่อนแอ" นั้นเทียบเท่ากัน

และบางทีคำตอบของคำถามเดิมคือ "ไม่มีจุดที่จะสร้างผู้เรียนที่แข็งแกร่งเมื่อคุณสามารถสร้างคนที่อ่อนแอได้อย่างถูกกว่า"


จากเอกสารที่ผ่านมาค่อนข้างมี"ในความเท่าเทียมกันของการเรียนรู้ที่อ่อนแอและการแยกเชิงเส้น: การพักผ่อนใหม่และอัลกอริทึมการส่งเสริมที่มีประสิทธิภาพ" ( pdf ) ที่ฉันไม่เข้าใจ แต่ที่ดูเหมือนว่าเกี่ยวข้องและอาจเป็นที่สนใจ


1
+1 การอ้างอิงที่ดี ดังนั้นบางทีคำตอบคือ: "ไม่มีประเด็นที่จะสร้างผู้เรียนที่แข็งแกร่งเมื่อคุณสามารถสร้างคนที่อ่อนแอได้อย่างถูกกว่า"?
tdc

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

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

9

ฉันจะจัดการเรื่องการ overfitting ซึ่งยังไม่ได้รับการกล่าวถึงพร้อมคำอธิบายที่เข้าใจง่ายกว่า คำถามแรกของคุณคือ:

อะไรคือประโยชน์ของการใช้ความอ่อนแอเมื่อเทียบกับผู้เรียนที่แข็งแกร่ง? (เช่นทำไมไม่ส่งเสริมด้วยวิธีการเรียนรู้ "แข็งแรง" - เรามีแนวโน้มที่จะมีน้ำหนักเกินหรือไม่)

เหตุผลหลักในความเข้าใจของฉันคือ:

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

สิ่งที่ส่งเสริมคือการรวมสมมติฐานที่แตกต่างกันจำนวนมากจากพื้นที่สมมุติฐานเพื่อที่เราจะได้ข้อสรุปสุดท้ายที่ดีกว่า ดังนั้นพลังอันยิ่งใหญ่ของการส่งเสริมจึงมาจากความหลากหลายของสมมติฐานที่รวมเข้าด้วยกัน

หากเราใช้ผู้เรียนที่แข็งแกร่งความหลากหลายนี้มีแนวโน้มลดลง: หลังจากการทำซ้ำแต่ละครั้งจะไม่มีข้อผิดพลาดมากมาย (เนื่องจากตัวแบบมีความซับซ้อน) ซึ่งจะไม่ทำให้การเปลี่ยนแปลงสมมติฐานใหม่เพิ่มขึ้นอย่างมาก ด้วยสมมติฐานที่คล้ายกันมากทั้งมวลจะคล้ายกันมากกับแบบจำลองเดี่ยวที่ซับซ้อนซึ่งจะทำให้เกินความคาดหมาย!


4
นี่คือคำตอบที่แท้จริง
แมทธิว Drury

6

ในการส่งเสริมเราใช้ผู้เรียนที่อ่อนแอส่วนใหญ่เนื่องจากพวกเขาได้รับการฝึกฝนเร็วกว่าเมื่อเทียบกับผู้เรียนที่แข็งแกร่ง ลองคิดดู ถ้าฉันใช้ Multi-Layer Neural Network เป็นผู้เรียนฉันต้องฝึกพวกมันให้มาก ในอีกทางหนึ่งต้นไม้การตัดสินใจอาจเร็วกว่ามากจากนั้นฉันก็สามารถฝึกฝนได้มากมาย

สมมติว่าฉันใช้ผู้เรียน 100 คน ฉันฝึกฝน NN ใน 100 วินาทีและต้นไม้การตัดสินใจใน 10 วินาที การเพิ่มครั้งแรกของฉันกับ NN จะใช้เวลา 100 * 100 วินาทีในขณะที่การเพิ่มที่สองกับต้นไม้การตัดสินใจจะใช้เวลา 100 * 10 วินาที

ที่กล่าวว่าฉันได้เห็นบทความซึ่งใช้ผู้เรียนที่แข็งแกร่งในการส่งเสริม แต่ในปัญหาที่ผู้เรียนที่แข็งแกร่งนั้นรวดเร็วในความคิดของฉัน

ฉันพยายามฝึก MLP บนชุดข้อมูลตรวจจับการบุกรุก KDD99 (4+ ล้าน) โดยใช้ Weka ใช้เวลานานกว่า 72 ชั่วโมงบนเครื่องของฉัน แต่การเพิ่มประสิทธิภาพ (AdaBoostM1 ด้วย Decision Tree - Decision Stump) ใช้เวลาเพียง 3 ชั่วโมง ในปัญหานี้เป็นที่ชัดเจนว่าฉันไม่สามารถใช้การส่งเสริมกับผู้เรียนที่แข็งแกร่งซึ่งเป็นผู้เรียนซึ่งใช้เวลามากเกินไป


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