ओवरफ़िटिंग: मॉडल की जटिलता

पिछली यूनिट में, नीचे दिया गया मॉडल दिखाया गया था. इस मॉडल ने टेस्ट सेट में मौजूद कई पेड़ों को गलत कैटगरी में रखा था:

इमेज 16. यह इमेज, 13वें चित्र जैसी ही है. यह एक जटिल आकार है, जिसकी वजह से कई पेड़ों को गलत कैटगरी में रखा जाता है.
16वां डायग्राम. पिछली यूनिट का गलत तरीके से काम करने वाला कॉम्प्लेक्स मॉडल.

पिछले मॉडल में कई जटिल आकार हैं. क्या आसान मॉडल, नए डेटा को बेहतर तरीके से मैनेज करेगा? मान लें कि आपने जटिल मॉडल को एक बहुत ही आसान मॉडल, यानी सीधी रेखा से बदल दिया है.

इमेज 17. यह एक स्ट्रेट लाइन मॉडल है, जो बीमार पेड़ों को स्वस्थ पेड़ों से अलग करने में बहुत अच्छा काम करता है.
17वीं इमेज. यह एक बहुत ही आसान मॉडल है.

आसान मॉडल, नए डेटा पर जटिल मॉडल के मुकाबले बेहतर तरीके से सामान्यीकरण करता है. इसका मतलब है कि आसान मॉडल ने टेस्ट सेट पर, मुश्किल मॉडल के मुकाबले बेहतर अनुमान लगाए.

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

एक्सरसाइज़: देखें कि आपको क्या समझ आया

आपको भौतिकी का कोई समीकरण बनाना है. इनमें से कौनसा फ़ॉर्मूला, ऑकहम के रेज़र के सिद्धांत के मुताबिक है?
बारह वैरिएबल वाला फ़ॉर्मूला.
तीन वैरिएबल वाला फ़ॉर्मूला.
आपने मशीन लर्निंग का एक नया प्रोजेक्ट शुरू किया है और आपको अपनी पहली सुविधाएं चुननी हैं. आपको कितनी सुविधाएं चुननी चाहिए?
ज़्यादा से ज़्यादा सुविधाएं चुनें, ताकि यह देखा जा सके कि किन सुविधाओं से, आपके बारे में सबसे सटीक अनुमान लगाया जा सकता है.
चार से छह ऐसी सुविधाएं चुनें जिनसे आपको लगता है कि वे अनुमान लगाने में काफ़ी असरदार हैं.
एक से तीन ऐसी सुविधाएं चुनें जिनमें अनुमान लगाने की बेहतर क्षमता हो.

रेगुलराइज़ेशन

मशीन लर्निंग मॉडल को एक साथ दो अलग-अलग लक्ष्यों को पूरा करना होता है:

  • डेटा को सही तरीके से फ़िट करें.
  • डेटा को जितना हो सके उतना आसान बनाएं.

मॉडल को आसान बनाए रखने का एक तरीका है, मुश्किल मॉडल पर जुर्माना लगाना. इसका मतलब है कि मॉडल को ट्रेनिंग के दौरान आसान बनाने के लिए मजबूर करना. जटिल मॉडल पर जुर्माना लगाना, रेगुलराइज़ेशन का एक तरीका है.

नुकसान और जटिलता

अब तक, इस कोर्स में यह सुझाव दिया गया है कि ट्रेनिंग के दौरान, सिर्फ़ नुकसान को कम करना ही एकमात्र लक्ष्य था. इसका मतलब है कि:

minimize(loss)

जैसा कि आपने देखा, सिर्फ़ लॉस को कम करने पर फ़ोकस करने वाले मॉडल, ओवरफ़िट होते हैं. बेहतर ट्रेनिंग ऑप्टिमाइज़ेशन एल्गोरिदम, गड़बड़ी और जटिलता के कुछ कॉम्बिनेशन को कम करता है:

minimize(loss + complexity)

माफ़ करें, आम तौर पर डेटा का नुकसान और डेटा को सुरक्षित रखने की प्रोसेस की जटिलता का एक-दूसरे से उलटा संबंध होता है. जटिलता बढ़ने पर, नुकसान कम हो जाता है. जटिलता कम होने पर, नुकसान बढ़ता है. आपको एक ऐसा बीच का रास्ता मिलना चाहिए जहां मॉडल, ट्रेनिंग डेटा और असल दुनिया के डेटा, दोनों के लिए अच्छी भविष्यवाणियां करता हो. इसका मतलब है कि आपके मॉडल को, डेटा के नुकसान और जटिलता के बीच एक उचित समझौता करना चाहिए.

जटिलता क्या है?

आपने पहले ही, नुकसान की संख्या का हिसाब लगाने के कुछ अलग-अलग तरीके देखे हैं. आपके हिसाब से, जटिलता का आकलन कैसे किया जा सकता है? एक्सप्लोरेशन शुरू करने के लिए, यह तरीका अपनाएं:

एक्सरसाइज़: अपने अंतर्ज्ञान की जांच करना

अब तक, हमने यह साफ़ तौर पर नहीं बताया है कि जटिलता का मतलब क्या है. आपके हिसाब से, इनमें से कौनसा सुझाव, जटिलता की सही मेट्रिक हो सकता है?
मॉडल में मौजूद सभी सुविधाओं के पूर्वाग्रहों की वजह से, मॉडल की जटिलता तय होती है.
जटिलता, मॉडल के वज़न का फ़ंक्शन है.
जटिलता, मॉडल के वेट के वर्ग के फ़ंक्शन के तौर पर काम करती है.