เหตุใดจึงต้องศึกษาการปรับให้เหมาะสมของนูนสำหรับการเรียนรู้เชิงทฤษฎี?


27

ฉันกำลังทำงานเกี่ยวกับการเรียนรู้ของเครื่องจักรเชิงทฤษฎี - ในการเรียนรู้การถ่ายโอนเพื่อเจาะจง - สำหรับปริญญาเอก

  • ด้วยความอยากรู้ทำไมฉันต้องเรียนหลักสูตรการเพิ่มประสิทธิภาพแบบนูน?

  • สิ่งที่ได้จากการเพิ่มประสิทธิภาพของนูนฉันสามารถใช้ในการวิจัยของฉันในการเรียนรู้เครื่องทฤษฎี?


2
ไม่ชัดเจนหากคุณคัดค้านส่วนนูนส่วนการเพิ่มประสิทธิภาพหรือทั้งสองอย่าง
Mehrdad

โปรดทราบว่าคำตอบที่คุณยอมรับนั้นไม่ถูกต้อง บางทีคุณสามารถดูคำถามนี้อีกครั้งและเลือกคำตอบที่เหมาะสมกว่า
xji

การเพิ่มประสิทธิภาพนูนและการเพิ่มประสิทธิภาพคณิตศาสตร์เป็นเครื่องมือในการสร้างแบบจำลอง - เทคนิคนี้ใช้ในการสร้างแบบจำลอง / ทำการควบคุม / ค้นหาพารามิเตอร์ของปรากฏการณ์ที่เข้าใจได้ถึงความไม่แน่นอนบางอย่าง
bruziuz

การเรียนรู้ของเครื่องเป็นเรื่องเกี่ยวกับการสร้างฟังก์ชั่นการประมาณเช่นเดียวกับวิธีการ couning และเท่าที่คุณรู้จักหนึ่งในฟังก์ชั่นเลือกแนวคิดซึ่งประมาณลดการสูญเสีย (ซึ่งไม่นูนหรือเลวร้ายที่สุดรวมถึงตัวแปรตัวบ่งชี้) ดังนั้น ML
bruziuz

FYI "การเพิ่มประสิทธิภาพของนูนไม่สามารถใช้สำหรับการเรียนรู้อย่างลึกซึ้ง - S.Boyd" - youtu.be/uF3htLwUHn0?t=2810
bruziuz

คำตอบ:


59

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

หนึ่งได้ยืนยันว่าการเพิ่มประสิทธิภาพนูนไม่ควรจะเป็นที่น่าสนใจว่าสำหรับการเรียนรู้เครื่องตั้งแต่แทนที่จะจัดการกับฟังก์ชั่นที่นูนออกมาเรามักจะสูญเสียการเผชิญหน้าพื้นผิวเช่นเดียวกับด้านล่างที่มีความห่างไกลจากนูน

ตัวอย่างของภูมิทัศน์การสูญเสียในชีวิตจริงที่ไม่นูน

(ที่มา: https://www.cs.umd.edu/~tomg/projects/landscapes/และ arXiv: 1712.09913 )

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

ในขณะที่อีกขั้นตอนวิธีการเพิ่มประสิทธิภาพที่ไม่นูนเช่นขั้นตอนวิธีวิวัฒนาการดูเหมือนจะดึงดูดมากขึ้นและได้รับการยอมรับมากขึ้นในชุมชน ML เช่นการฝึกอบรมเครือข่ายประสาทโดยneuroevolutionน่าจะเป็นหัวข้องานวิจัยที่ผ่านมา (ดูarXiv: 1712.07897 )


5
คำตอบนี้ดูเหมือนจะไม่ได้พูดถึง "นูน"
Haitao Du

@ hxd1011 ฉันแสดงความคิดเห็นกับมัน
ทิม

คำตอบที่ดี! กล่าวถึงการเพิ่มประสิทธิภาพที่สำคัญอย่างยิ่งต่อ ML และวิธีลดความซับซ้อนของ ML โดยใช้การประมาณนูนที่ทำงานกับการไล่ระดับสี
ChuckCottrill

นี่ควรเป็นคำตอบที่ยอมรับได้
Jan Kukacka

11

ฉันคิดว่ามีสองคำถามที่นี่

  • ทำไมต้องศึกษาการปรับให้เหมาะสม
  • ทำไมการเพิ่มประสิทธิภาพนูน

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

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

แต่โลกนูนหรือไม่ ไม่ทำไมต้องหมกมุ่นอยู่กับความนูน ตรวจสอบคำอุปมานี้

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


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

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

2

สิ่งที่สำคัญที่สุดคือการเรียนรู้ของเครื่องนั้นถูกนำไปใช้กับปัญหาที่ไม่มีทางออกที่ดีที่สุด สิ่งที่ดีที่สุดที่คุณสามารถทำได้คือหาการประมาณที่ดี

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

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


33
ใช่ในการเรียนรู้ของเครื่องเรากำลังมองหาการประมาณที่ดีที่สุด แต่คุณผิดโดยบอกว่าทั้งสองสิ่งนั้น "แตกต่างกันโดยพื้นฐาน" ML algorithm ใช้การออปติไมซ์เพื่อลดฟังก์ชั่นการสูญเสียและหาพารามิเตอร์ที่เหมาะสมที่สุดตามข้อมูลและวัตถุประสงค์ เมื่อคุณปรับค่าพารามิเตอร์ไฮเปอร์พารามิเตอร์คุณกำลังมองหาชุดค่าผสมที่เหมาะสม ในแต่ละกรณีคุณกำลังเพิ่มหรือลดบางสิ่งเพื่อให้บรรลุเป้าหมายดังนั้นคุณจึงใช้การเพิ่มประสิทธิภาพบางประเภท
ทิม

@ ทิม: จริงฉันควรจะใช้ถ้อยคำที่แตกต่างกัน
Toby

17
ถ้าคุณเห็นด้วยคุณก็ควรจะเรียบเรียงมันใหม่
ทิม

19
คำตอบนี้ผิดอย่างชัดแจ้ง ปัญหาการเรียนรู้ของเครื่องจำนวนมากทำให้เกิดปัญหาการปรับให้เหมาะสม
Reinstate Monica

2
การอ้างสิทธิ์ว่าใน "ปัญหาการปรับให้เหมาะสมมักจะหาทางออกที่ดีที่สุด" ไม่ถูกต้อง โดยเฉพาะอย่างยิ่งในบริบทของการเพิ่มประสิทธิภาพนูน (ซึ่งเป็นสิ่ง OP ถูกถามเกี่ยวกับ) ทางออกที่ดีที่สุดที่สามารถพบได้ง่าย (สำหรับเชื้อสายตัวอย่างเช่นการไล่ระดับสีที่มีอัตราการสลายการเรียนรู้มีการรับประกันที่จะมาบรรจบกันเพื่อที่เหมาะสมของฟังก์ชั่นที่นูน) ปัญหาใหญ่คือว่าปัญหาที่เกิดขึ้นจำนวนมากในการเรียนรู้ของเครื่องที่มีไม่ใช่นูน
Jan Kukacka

2

ในฐานะที่เป็น hxd1011 กล่าวว่าปัญหานูนง่ายต่อการแก้ทั้งในทางทฤษฎีและ (โดยทั่วไป) ในทางปฏิบัติ ดังนั้นสำหรับปัญหาที่ไม่นูน แต่อัลกอริธึมการปรับให้เหมาะสมจำนวนมากเริ่มต้นด้วย "ขั้นตอนที่ 1 ลดปัญหาให้เป็นหนึ่งเดียว" (อาจเป็นในขณะที่วนรอบ)

สิ่งที่คล้ายกันเกิดขึ้นกับการรูทไฟล์ไม่เชิงเส้น โดยปกติวิธีการแก้ปัญหา (เช่นด้วยวิธีของนิวตัน) ไปที่ "ขั้นตอนที่ 1 ลดปัญหาเชิงเส้นเนื่องจากเรารู้วิธีแก้ปัญหาเหล่านั้น"


1

หากสนใจของคุณอยู่ใน (นูน) การเพิ่มประสิทธิภาพนำไปใช้กับการเรียนรู้ลึก (คุณพูดถึงการเรียนรู้การถ่ายโอนซึ่งเป็นที่ใช้กันอย่างแพร่หลายในการปฏิบัติกับเครือข่ายประสาท) การใช้งานผมขอแนะนำให้คุณพิจารณาการอ่านบทที่ 8 (การเพิ่มประสิทธิภาพสำหรับการฝึกอบรมเครือข่ายประสาทลึก) ของhttp : //www.deeplearningbook.org/

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


0

ดังที่ฉันได้ยินจากวิธีการ Jerome H. Friedman ที่พัฒนาขึ้นในการเรียนรู้ด้วยเครื่องจริง ๆ แล้วไม่ได้เป็นของชุมชนการเรียนรู้ด้วยตนเอง

จากมุมมองของฉันการเรียนรู้ของเครื่องเป็นเหมือนการรวบรวมวิธีการต่าง ๆ จากสาขาอื่น

จากมุมมองของการเรียนรู้ทางสถิติคำถามหลักสามข้อสำหรับการถดถอยและการจำแนกประเภทคือ:

  1. ฟังก์ชันตระกูลใดที่คุณใช้ดึงตัวประมาณ

  2. เกณฑ์การดึงฟังก์ชั่นคืออะไร

  3. วิธีการหาฟังก์ชั่นที่ดีที่สุดคืออะไร


เพื่อดำเนินการอย่างสร้างสรรค์บน (1) - ไม่ชัดเจนว่าการใช้ optimizaion ทางคณิตศาสตร์สามารถช่วยได้อย่างไร

เพื่อดำเนินการอย่างสร้างสรรค์บน (2) - เป็นที่ชัดเจนว่าเป้าหมายคือเป้าหมาย และการเพิ่มประสิทธิภาพทางคณิตศาสตร์สามารถช่วยได้

หากต้องการดำเนินการอย่างสร้างสรรค์ใน (3) - คุณต้องมีการเพิ่มประสิทธิภาพทางคณิตศาสตร์


มีหลายส่วนของการเพิ่มประสิทธิภาพคณิตศาสตร์:

  1. การหาค่าเหมาะที่สุดของการวิเคราะห์และการวิเคราะห์นูน - พื้นที่คณิตศาสตร์ที่ยอดเยี่ยมมาก ความแตกต่างไม่ได้เป็นปัญหา และมีฟังก์ชั่นการวางนูนทั่วไป 50 แบบซึ่งมีประโยชน์มากกว่าสองประการในแง่ของการใช้งานคือ quasiconvex และ log-concave

นอกจากนี้ยังมีวิธีการจัดการ "stochasticity" ในบางวิธีแม้กระทั่ง "ไม่มีใครรู้วิธีแก้การเพิ่มประสิทธิภาพของ stochastic convex"

  1. การเพิ่มประสิทธิภาพ NonConvex - คนปกติโดยสิ่งนี้หมายถึงสิ่งที่เป็นวัตถุประสงค์ต่อเนื่อง แต่ความโค้งอาจแตกต่างกัน ผู้คนในโลกนี้ไม่รู้วิธีแก้ไขอย่างแม่นยำ และในความเป็นจริง mehtods ทั้งหมดใช้ประโยชน์จาก (1)

  2. การเพิ่มประสิทธิภาพ Combinatorial - มันยิ่งดุร้ายกว่า (2) ตอนนี้สำหรับพารามิเตอร์ที่คุณพบว่าคุณไม่สามารถใช้ตัวดำเนินการลบได้ ตัวอย่างหนึ่งคือ "ภูมิภาค" ในต้นไม้การตัดสินใจ ดังนั้นมีสองวิธีที่จะจัดการกับมันคือ a) Convexify ปัญหาและใช้วิธีการจาก (1) b) ทำให้กำลังดุร้าย ไม่ทำงานกับพารามิเตอร์จำนวนมาก c) สร้างกำลังดุร้าย แต่ด้วยความโลภ เป็นสิ่งที่ CART ทำ


อย่างน้อยฉันก็คิดว่าฉันเชื่อคุณว่า:

I) Convex Optimization เป็นสิ่งสำคัญสำหรับปัญหาส่วนใหญ่

II) "การเพิ่มประสิทธิภาพ 01:15 เป็นเรื่องจริงที่ใหญ่กว่า ML หรือ AI แต่มันเป็นวิชาที่ใหญ่กว่า" ( https://www.youtube.com/watch?v=uF3htLwUHn0&t=992s )


นี่เป็นข้อมูลโดยย่อของมาตรฐานของเว็บไซต์นี้เป็นคำตอบ - คุณคิดว่าคุณจะขยายมันได้หรือไม่? ไม่อย่างนั้นมันอาจจะเหมาะสมที่สุดสำหรับความคิดเห็น
Silverfish

ตกลง. ฉันจะขยายตัว แต่ในความเป็นจริงเป็นไปได้ที่จะเขียนบทความเกี่ยวกับการเชื่อมต่อกับสาขาต่าง ๆ ในความเป็นจริงผมถามสตีเฟ่นพีบอยด์เกี่ยวกับคำถามที่สัมพันธ์กับผู้คนคิดเกี่ยวกับก่อนหน้านี้และเมื่อ - youtu.be/XV1E-Jnc4SU?t=242 เขาบอกว่าโลกวันนี้แตกหัก
bruziuz

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