सैद्धांतिक मशीन सीखने के लिए उत्तल अनुकूलन का अध्ययन क्यों करें?


27

मैं सैद्धांतिक मशीन लर्निंग पर काम कर रहा हूं - ट्रांसफर लर्निंग पर, विशिष्ट होने के लिए - मेरे पीएच.डी.

  • जिज्ञासा से बाहर, मुझे उत्तल अनुकूलन पर एक कोर्स क्यों करना चाहिए?

  • उत्तल ऑप्टिमाइज़ेशन से क्या-क्या रास्ते हैं, क्या मैं सैद्धांतिक मशीन सीखने पर अपने शोध में उपयोग कर सकता हूं?


2
यदि आप उत्तल भाग, अनुकूलन भाग, या दोनों पर आपत्ति कर रहे हैं तो यह स्पष्ट नहीं है।
मेहरदाद

ध्यान दें कि आपके द्वारा स्वीकार किया गया उत्तर स्पष्ट रूप से गलत है। हो सकता है कि आप इस प्रश्न पर फिर से विचार कर सकें और ऐसा उत्तर चुन सकें जो बहुत अधिक समझ में आता हो।
xji

उत्तल ऑप्टिमाइज़ेशन और मैथ ऑप्टिमाइज़ेशन मॉडल बनाने का एक उपकरण है - इस टेकनीक का उपयोग मॉडल बनाने के लिए किया जाता है / कुछ अनियंत्रित तक समझने योग्य घटनाओं के नियंत्रण / खोजने के लिए।
ब्रुज़ुज़

मशीन लर्निंग, कॉउनिंग विधियों की तरह फ़ंक्शन सन्निकटन के निर्माण के बारे में है, और जहाँ तक आप कॉन्सेप्ट सेलेक्ट फंक्शन में से एक को जानते हैं, जो लगभग कम से कम नुकसान (जो कि नॉन-उत्तल है या सबसे खराब भी इंडिकेटर वैरिएबल शामिल हैं), इसलिए ML गैर-उत्तल अनुकूलन के साथ अच्छा खेलते हैं।
ब्रुज़ुज़

FYI करें "उत्तल अनुकूलन का उपयोग गहरी शिक्षा के लिए नहीं किया जा सकता है - S.Boyd" - youtu.be/uF3htLwUHn0?t=2810
bruziuz

जवाबों:


59

मशीन लर्निंग एल्गोरिदम हर समय अनुकूलन का उपयोग करते हैं। हम नुकसान, या त्रुटि को कम करते हैं, या कुछ प्रकार के स्कोर कार्यों को अधिकतम करते हैं। ग्रेडिएंट डिसेंट "हेल्लो वर्ल्ड" ऑप्टिमाइज़ेशन एल्गोरिथम है जो संभवतः किसी भी मशीन लर्निंग कोर्स पर कवर किया गया है। यह प्रतिगमन, या वर्गीकरण मॉडल के मामले में स्पष्ट है, लेकिन यहां तक ​​कि क्लस्टरिंग जैसे कार्यों के साथ हम एक समाधान की तलाश कर रहे हैं जो कि हमारे डेटा को उपयुक्त रूप से फिट करता है (जैसे k- साधन चौकों के भीतर-क्लस्टर योग को कम करता है)। इसलिए यदि आप यह समझना चाहते हैं कि मशीन लर्निंग एल्गोरिदम कैसे काम करता है, तो अनुकूलन के बारे में अधिक सीखना मदद करता है। इसके अलावा, यदि आपको हाइपरपैरेट ट्यूनिंग जैसी चीजें करने की आवश्यकता है, तो आप सीधे अनुकूलन का उपयोग भी कर रहे हैं।

कोई तर्क दे सकता है कि उत्तल कार्यों से निपटने के बजाय उत्तल अनुकूलन मशीन सीखने के लिए दिलचस्प नहीं होना चाहिए , हम अक्सर नीचे की तरह नुकसान सतहों का सामना करते हैं, जो उत्तल से बहुत दूर हैं ।

वास्तविक जीवन का उदाहरण, गैर-उत्तल हानि परिदृश्य।

(स्रोत: https://www.cs.umd.edu/~tomg/projects/landscapes/ और arXiv: 1712.09913 )

फिर भी, जैसा कि अन्य उत्तरों में उल्लेख किया गया है, उत्तल अनुकूलन तेज, सरल और कम कम्प्यूटेशनल रूप से गहन है, इसलिए अक्सर किसी समस्या को "उत्तल करना" (इसे उत्तल अनुकूलन के अनुकूल बनाना) आसान होता है, फिर गैर-उत्तल अनुकूलन का उपयोग करें। उदाहरण के लिए, ढाल वंश और एक जैसे एल्गोरिदम आमतौर पर मशीन लर्निंग में उपयोग किए जाते हैं, विशेष रूप से तंत्रिका नेटवर्क के लिए, क्योंकि वे "कार्य", स्केल, और व्यापक रूप से अलग-अलग सॉफ़्टवेयर में कार्यान्वित होते हैं, फिर भी वे सबसे अच्छे नहीं हैं जो हमें मिल सकते हैं और हमारे नुकसान हो सकते हैं , जैसा कि एनआईपीएस 2017 में अली रहीमी की चर्चा से चर्चा हुई ।

दूसरी ओर, गैर-उत्तल अनुकूलन एल्गोरिदम जैसे कि विकासवादी एल्गोरिदम एमएल समुदाय में अधिक से अधिक मान्यता प्राप्त कर रहे हैं, उदाहरण के लिए न्यूरोव्यूलेशन द्वारा तंत्रिका नेटवर्क का प्रशिक्षण हाल ही में शोध विषय लगता है (यह भी देखें arXiv: 17124897 )।


5
यह उत्तर "उत्तल" को संबोधित नहीं करता है
Haitao Du

@ hxd1011 मैंने इस पर टिप्पणी की।
टिम

बहुत बढ़िया जवाब! वास्तव में पता चलता है कि एमएल के लिए कितना महत्वपूर्ण अनुकूलन है, और कैसे उत्तल सन्निकटन के साथ काम करने वाले उत्तल सन्निकटन का उपयोग करके एमएल सरल होता है।
4C पर ChuckCottrill

यह स्वीकृत उत्तर होना चाहिए।
जनवरी को Jan Kukacka

11

मुझे लगता है कि यहां दो सवाल हैं।

  • अनुकूलन का अध्ययन क्यों करें
  • उत्तल अनुकूलन क्यों

मुझे लगता है कि @Tim के पास अनुकूलन क्यों है, इस पर एक अच्छा जवाब है। मैं दृढ़ता से सहमत हूं और निरंतर अनुकूलन को मास्टर करने के लिए मशीन सीखने में रुचि रखने वाले किसी भी व्यक्ति की सिफारिश करूंगा। क्योंकि अनुकूलन प्रक्रिया / समय के साथ बेहतर समाधान खोजना, कंप्यूटर के लिए सीखने की प्रक्रिया है।

मैं इस बारे में अधिक बात करना चाहता हूं कि हम उत्तल कार्यों में क्यों रुचि रखते हैं। कारण सरल है: उत्तल ऑप्टिमाइज़ेशन "हल करने में आसान" हैं, और हमारे पास हल करने के लिए बहुत मज़बूती से एल्गोरिदम है।

लेकिन क्या दुनिया उत्तल है? क्यों उत्तलता से ग्रस्त है? इस रूपक की जाँच करें

एक पुलिस वाला एक नशे में आदमी को सड़क के नीचे कुछ खोजता हुआ देखता है और पूछता है कि शराबी ने क्या खोया है। वह कहता है कि उसने अपनी चाबी खो दी है और वे दोनों एक साथ सड़क के नीचे दिखते हैं। कुछ मिनटों के बाद पुलिसकर्मी पूछता है कि क्या उसे यकीन है कि वह उन्हें यहां खो गया था, और शराबी जवाब देता है, नहीं, और वह उन्हें पार्क में खो गया। पुलिसकर्मी पूछता है कि वह यहां क्यों खोज रहा है, और शराबी जवाब देता है, "यह वह जगह है जहां प्रकाश है"।


2
लेकिन रूपक के कारण, आप एक टॉर्च प्राप्त करते हैं। अंधेरे में कुंजियों की खोज करना असंभव है, इसलिए आप समस्या को उस एक में ढाल लेते हैं जिसे आप जानते हैं कि कैसे हल करना है। यदि आप गैर-उत्तल एल्गोरिदम के साथ एक समस्या पर काम करते हैं और एक समाधान के साथ आते हैं जिसमें 3 मिलियन डॉलर खर्च होंगे, और मैं उत्तल अनुकूलन के साथ इसी तरह की समस्या का काम करता हूं और मेरा उत्तर लेता हूं और गैर-उत्तल समस्या का समाधान ढूंढता हूं जिसमें 2 खर्च होते हैं मिलियन डॉलर, मुझे एक बेहतर उत्तर मिला है।
पेशेवरों 14

यह उत्तर कई स्तरों पर त्रुटिपूर्ण है। करने के लिए उत्तल विश्लेषण की तुलना में स्ट्रीट प्रभाव सिर्फ गलत । मैं आपको सलाह दूंगा कि विषय पर अधिक जानने के लिए बॉयड और वैंडेनबर्ग द्वारा परिचयात्मक पाठ्यपुस्तक उत्तल अनुकूलन का उल्लेख करें ।
डिजीओ

2

सबसे महत्वपूर्ण उपाय यह है कि मशीन लर्निंग उन समस्याओं पर लागू किया जाए जहां कोई इष्टतम समाधान उपलब्ध नहीं है। आप जो सबसे अच्छा कर सकते हैं वह एक अच्छा अनुमान है।

इसके विपरीत, जब आपको अनुकूलन समस्या होती है, तो एक इष्टतम समाधान होता है, लेकिन यह आमतौर पर उचित समय में या उचित प्रसंस्करण शक्ति के साथ नहीं पाया जा सकता है।

आपके द्वारा उपयोग किए जाने वाले उपकरण और एल्गोरिदम मौलिक रूप से अलग हैं। इसलिए जब मैं कहूंगा कि अनुकूलन वर्ग लेने का कोई तात्कालिक लाभ नहीं है, संबंधित क्षेत्रों के बारे में थोड़ा जानना हमेशा अच्छा होता है। यदि आप एक अनुकूलन समस्या को पहचान सकते हैं, तो आप जानेंगे कि आपको मशीन लर्निंग एल्गोरिदम से नहीं बल्कि इसके बजाय अनुकूलन एल्गोरिदम से निपटना चाहिए। वह अकेला ही बहुत कुछ कह सकता है।


33
हां, मशीन लर्निंग में हम सबसे अच्छे अंदाजों की तलाश कर रहे हैं। लेकिन आप यह कहकर गलत हैं कि दोनों चीजें "मौलिक रूप से अलग हैं"। एमएल एल्गोरिदम नुकसान कार्यों को कम करने और डेटा और उद्देश्य को दिए गए इष्टतम मापदंडों को खोजने के लिए अनुकूलन का उपयोग करते हैं। जब आप अपने हाइपरपैरामीटर को ट्यून कर रहे होते हैं, तो आप उनमें से इष्टतम संयोजन की तलाश में होते हैं। प्रत्येक मामले में आप अपने लक्ष्य को प्राप्त करने के लिए किसी चीज को अधिकतम या न्यूनतम कर रहे हैं, इसलिए आप किसी प्रकार के अनुकूलन का उपयोग कर रहे हैं।
टिम

@ समय: सच है, मुझे लगता है कि अलग ढंग से प्रकाशित किया जाना चाहिए।
टॉबी

17
यदि आप सहमत हैं, तो आपको शायद इसे फिर से लिखना चाहिए।
टिम

19
यह उत्तर गलत है। मशीन सीखने की समस्याओं की एक महत्वपूर्ण संख्या अनुकूलन समस्याओं को उबालती है।
मोनिका

2
यह दावा कि "अनुकूलन समस्याओं में इष्टतम समाधान आमतौर पर नहीं मिल सकता है" गलत है। विशेष रूप से उत्तल अनुकूलन (जो कि ओपी के बारे में पूछ रहा है) के संदर्भ में , इष्टतम समाधान आसानी से मिल सकता है (उदाहरण के लिए, सीखने की दर में गिरावट के साथ ढाल मूल उत्तल फ़ंक्शन के इष्टतम में परिवर्तित होने की गारंटी है)। बड़ी समस्या यह है कि मशीन सीखने में कई समस्याएं गैर-उत्तल हैं
जनवरी को Jan Kukacka

2

जैसा कि hxd1011 ने कहा, उत्तल समस्याओं को हल करना आसान है, सैद्धांतिक रूप से और (आमतौर पर) दोनों व्यवहार में। तो, गैर-उत्तल समस्याओं के लिए भी, कई अनुकूलन एल्गोरिदम "चरण 1 से शुरू होते हैं" समस्या को उत्तल एक तक कम करते हैं "(संभवतः थोड़ी देर के लूप के अंदर)।

इसी तरह की बात नॉनलाइनर रूटफाइंडिंग के साथ होती है। आमतौर पर समाधान (जैसे, न्यूटन की विधि के साथ) "चरण 1। एक रैखिक समस्या को कम करता है, क्योंकि हम जानते हैं कि उन लोगों को कैसे हल करना है"।


1

यदि आपकी रुचि गहरी सीखने (आप ट्रांसफर लर्निंग, जो तंत्रिका नेटवर्क के साथ व्यवहार में व्यापक रूप से उपयोग की जाती है) अनुप्रयोगों के लिए लागू (उत्तल) अनुकूलन में निहित है, तो मैं आपको http के अध्याय 8 (गहन तंत्रिका नेटवर्क के प्रशिक्षण के लिए अनुकूलन) को पढ़ने पर विचार करने के लिए दृढ़ता से प्रोत्साहित करता हूं। : //www.deeplearningbook.org/

उत्तल अनुकूलन की चर्चा है, और यह तब तक सफल क्यों नहीं हुआ जब गहरे तंत्रिका नेटवर्क को लागू किया गया। बेशक, शायद आप इस क्षेत्र में शोध कर सकते हैं जो वर्तमान सहमति को बदल देगा!


0

जैसा कि मैंने मशीन लर्निंग में विकसित जेरोम एच। फ्राइडमैन के तरीकों से सुना है, वास्तव में मशीन लर्निंग समुदाय से संबंधित नहीं है।

मेरे दृष्टिकोण से मशीन लर्निंग अन्य क्षेत्रों के विभिन्न तरीकों के संग्रह की तरह है।

सांख्यिकीय अधिगम के दृष्टिकोण से प्रतिगमन और वर्गीकरण के लिए तीन मुख्य प्रश्न हैं:

  1. फंक्शन फैमिली क्या है जिससे आप अंदाजे लगाते हैं

  2. एक मापदंड कैसे है कि आप एक फ़ंक्शन कैसे खींचते हैं

  3. सबसे अच्छा कार्य खोजने के लिए एक विधि क्या है


(1) पर कुछ रचनात्मक तरीके से काम करने के लिए - यह स्पष्ट नहीं है कि गणित ऑप्टिमाइज़ेशन का उपयोग कैसे किया जा सकता है

(2) पर कुछ रचनात्मक तरीके से काम करने के लिए - यह स्पष्ट है कि उद्देश्य लक्ष्य है। और गणित आशावादी इस पर मदद कर सकता है।

(3) पर कुछ रचनात्मक तरीके से काम करने के लिए - आपको गणित अनुकूलन की आवश्यकता है।


गणित अनुकूलन के कई भाग हैं:

  1. उत्तल अनुकूलन / उत्तल विश्लेषण - गणित का बहुत अच्छा क्षेत्र। गैर-विभेद एक समस्या नहीं है। और उत्तल कार्यों के 50 सामान्यीकरण हैं जिसमें से आवेदन के संदर्भ में दो अधिक उपयोगी क्वासिकोवैक्स और लॉग-अवतल हैं।

इसके अलावा "स्टोचैस्टिसिटी" से निपटने के तरीके भी हैं, यहां तक ​​कि "स्टोचस्टिक उत्तल अनुकूलन को हल करने के लिए कोई भी नहीं जानता है"

  1. नॉनकॉन्वेक्स ऑप्टिमाइज़ेशन - आमतौर पर लोग इसका मतलब कुछ ऐसे होते हैं जो निरंतर उद्देश्य होते हैं, लेकिन वक्रता अलग-अलग हो सकती है। इस ग्रह के लोग नहीं जानते कि इसे कैसे हल किया जाए। और वास्तव में सभी mehtods लाभ उठाने में (1)

  2. कॉम्बिनेटरियल ऑप्टिमिज़न - यह तब और भी जंगली है (2), अब मापदंडों के लिए जो आपको लगता है कि आप माइनस ऑपरेटर भी नहीं लगा सकते हैं। एक उदाहरण निर्णय पेड़ों में "क्षेत्र" है। तो इससे निपटने के दो तरीके हैं: ए) समस्या का हल करें और (1) बी से विधियों का उपयोग करें। ब्रूट बल बनाएं। बड़ी संख्या में मापदंडों के लिए काम नहीं करता है। c) जानवर बल बनाएं लेकिन कुछ लालची कदमों के साथ। यह कुछ ऐसा है जो CART करते हैं।


तो कम से कम मुझे लगता है कि मैं आपको दोषी मानता हूं:

I) उत्तल अनुकूलन अधिकांश अनुकूलन समस्याओं के लिए केंद्रीय चीज है।

II) "01:15 अनुकूलन वास्तव में अधिक बड़ा विषय है तो ML या AI, लेकिन यह वास्तव में बड़ा विषय है।" ( https://www.youtube.com/watch?v=uF3htLwUHn0&t=992s )


यह एक उत्तर के रूप में इस साइट के मानकों से थोड़ा संक्षिप्त है - क्या आपको लगता है कि आप इस पर विस्तार कर सकते हैं? अन्यथा यह टिप्पणी के रूप में सबसे उपयुक्त हो सकता है।
सिल्वरफिश

ठीक है। मैं विस्तार करूंगा, लेकिन वास्तव में विभिन्न क्षेत्रों के कनेक्शन के बारे में एक लेख लिखना संभव है। वास्तव में मैंने स्टीफन पी। बोयड से प्रश्न पूछा कि क्या लोग पहले और कब के बारे में सोचते हैं - youtu.be/XV1E-Jnc4SU?t=242 । उन्होंने कहा कि इस दिन दुनिया में फ्रैक्चर हुआ है।
ब्रजज़ीज़

1
@Silverfish मैंने अपडेट किया, अब यह एक वाक्य के बजाय लंबा पाठ है।
ब्रूजिउज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.