निर्णय वृक्ष छंटाई (decision tree pruning) Machine learning में प्रयुक्त एक तकनीक है, जिसका उपयोग वृक्ष के उन हिस्सों को हटाकर निर्णय वृक्षों का आकार कम करने के लिए किया जाता है जो बहुत कम भविष्यवाणी शक्ति प्रदान करते हैं। प्राथमिक लक्ष्य जटिलता को कम करके और अति-अनुकूलन (overfitting) को कम करके अदृश्य डेटा पर मॉडल के सामान्यीकरण में सुधार करना है, साथ ही व्याख्यात्मकता बढ़ाना और प्रशिक्षण तथा अनुमान समय को घटाना है।
छंटाई आवश्यक है क्योंकि पूर्ण रूप से विकसित निर्णय वृक्ष अक्सर प्रशिक्षण डेटा के बहुत करीब फिट होते हैं, जिससे शोर और बाह्य मान (outliers) पकड़ में आ जाते हैं। यह नए डेटा पर खराब प्रदर्शन की ओर ले जाता है। वृक्ष को सरल बनाकर, छंटाई प्रशिक्षण त्रुटि में थोड़ी वृद्धि को सत्यापन त्रुटि में बड़ी कमी के साथ बदलती है, जिसके परिणामस्वरूप अधिक मजबूत मॉडल बनता है।
छंटाई के प्रकार
छंटाई विधियाँ दो व्यापक श्रेणियों में आती हैं: पूर्व-छंटाई (pre-pruning) (जिसे अग्र छंटाई भी कहा जाता है) और पश्च-छंटाई (post-pruning) (पश्च छंटाई)।
पूर्व-छंटाई निर्माण के दौरान कुछ मानदंड पूरे होने पर वृक्ष को बढ़ने से रोकती है। सामान्य मानदंडों में अधिकतम गहराई, प्रति पत्ती न्यूनतम नमूनों की संख्या, न्यूनतम सूचना लाभ सीमा, या विभाजन के लिए सांख्यिकीय महत्व परीक्षण शामिल हैं। पूर्व-छंटाई सीधी और कुशल है, लेकिन यह वृक्ष के विकास को बहुत जल्दी रोक सकती है, जिससे महत्वपूर्ण अंतःक्रियाएँ छूट सकती हैं। इस पर प्रारंभिक निर्णय वृक्ष साहित्य में चर्चा की गई थी, जिसमें 1960 के दशक में अनुकूली प्रणालियों पर Bernard Widrow का कार्य शामिल है, हालाँकि औपचारिक अवधारणा बाद के एल्गोरिदम से अधिक जुड़ी हुई है।
पश्च-छंटाई पहले एक पूर्ण वृक्ष बनाती है, फिर बाद में शाखाओं को हटाती है। यह दृष्टिकोण आम तौर पर अधिक प्रभावी होता है क्योंकि यह संपूर्ण वृक्ष संरचना पर विचार करता है। तकनीकों में लागत-जटिलता छंटाई (जिसे न्यूनतम लागत-जटिलता छंटाई भी कहा जाता है) और त्रुटि-आधारित छंटाई शामिल हैं। पश्च-छंटाई अक्सर यह तय करने के लिए एक अलग सत्यापन सेट या क्रॉस-सत्यापन का उपयोग करती है कि कौन सी शाखाएँ हटानी हैं।
सबसे प्रसिद्ध पश्च-छंटाई एल्गोरिदम लागत-जटिलता छंटाई है, जिसे 1984 में CART पुस्तक में Breiman एट अल. द्वारा प्रस्तुत किया गया था। यह त्रुटि दर और पत्तियों की संख्या दोनों के आधार पर प्रत्येक उप-वृक्ष को एक लागत निर्दिष्ट करता है, फिर उस उप-वृक्ष का चयन करता है जो इस व्यापार-नापसंद को न्यूनतम करता है। यह हाइपरपैरामीटर alpha का उपयोग करके प्राप्त किया जाता है, जो वृक्ष के आकार को दंडित करता है।
एक प्रमुख संदर्भ क्रिस्टोफर बिशप का उनकी 1995 की पुस्तक "न्यूरल नेटवर्क्स फॉर पैटर्न रिकग्निशन" में कार्य है, जहाँ वे तंत्रिका नेटवर्क के संदर्भ में छंटाई पर चर्चा करते हैं, लेकिन वही सिद्धांत निर्णय वृक्षों पर लागू होते हैं। निर्णय वृक्ष साहित्य में, जे. रॉस क्विनलान ने C4.5 एल्गोरिदम (1993) के लिए त्रुटि-आधारित छंटाई विकसित की, और क्विनलान ने पहले के कार्य में कम त्रुटि छंटाई (reduced error pruning) भी प्रस्तुत की।
एल्गोरिदम और कार्यान्वयन
व्यवहार में, ID3, C4.5, CART, और इसके उत्तराधिकारी C5.0 जैसे एल्गोरिदम विभिन्न छंटाई विधियों को शामिल करते हैं। लागत-जटिलता छंटाई के लिए, मानक कार्यान्वयन में निम्नलिखित शामिल हैं:
- एक पूर्ण वृक्ष विकसित करना।
- प्रत्येक नोड के लिए alpha मान की गणना करना।
- सबसे छोटे alpha वाले नोड को क्रमिक रूप से छांटना।
- उस उप-वृक्ष का चयन करना जो लागत-जटिलता स्कोर को न्यूनतम करता है।
पायथन लाइब्रेरी scikit-learn में, लागत-जटिलता छंटाई को ccp_alpha पैरामीटर के रूप में लागू किया गया है। वैकल्पिक रूप से, XGBoost और LightGBM जैसी लाइब्रेरीज़ अपने स्वयं के अनुमानों के साथ पश्च-छंटाई का उपयोग करती हैं, और कई आधुनिक लाइब्रेरीज़ पूर्व-छंटाई (max_depth जैसे पैरामीटर के माध्यम से) और पश्च-छंटाई दोनों का समर्थन करती हैं। Carnegie Mellon University की ओपन सोर्स परियोजनाओं में और SambaNova के ML वातावरण में, छंटाई को अक्सर वितरित प्रशिक्षण पाइपलाइनों में एकीकृत किया जाता है।
छंटाई बनाम अन्य तकनीकें
निर्णय वृक्ष छंटाई अवधारणात्मक रूप से Model Pruning से संबंधित है, जो Artificial intelligence में प्रतीकात्मक मॉडल के आकार को कम करने के लिए उपयोग किया जाने वाला एक व्यापक शब्द है। गहरे मॉडलों में पैरामीटर छंटाई (जो भार हटाती है) के विपरीत, वृक्ष छंटाई पूरी शाखाओं या उप-वृक्षों को हटाती है। इसके अतिरिक्त, Dropout और Regularization विकल्प हैं, हालाँकि वे सीधे वृक्षों पर लागू नहीं होते, लेकिन वे समान उद्देश्य की पूर्ति करते हैं।
अधिकांश व्यवसायी सामान्यीकरण को और बढ़ाने के लिए छंटाई को Data Augmentation जैसी अन्य तकनीकों के साथ जोड़ते हैं। Neural network संदर्भों में छंटाई के विपरीत, जो अक्सर अनुमान के लिए कम्प्यूटेशनल लागत को कम करती है, वृक्ष छंटाई मुख्य रूप से सामान्यीकरण और व्याख्यात्मकता में सुधार करती है।
अनुप्रयोग और प्रभाव
निर्णय वृक्ष छंटाई का व्यावहारिक प्रभाव उन क्षेत्रों में महत्वपूर्ण है जहाँ मॉडल व्याख्यात्मकता महत्वपूर्ण है, जैसे चिकित्सा निदान, क्रेडिट स्कोरिंग, और धोखाधड़ी का पता लगाना। उदाहरण के लिए, एक चिकित्सा विशेषज्ञ को उन रोगियों को निर्णय उचित ठहराने के लिए एक पारदर्शी मॉडल की आवश्यकता होती है जो ब्लैक-बॉक्स के संपर्क में नहीं हैं। अनावश्यक शाखाओं को हटाकर, चिकित्सक सबसे महत्वपूर्ण नियमों पर ध्यान केंद्रित कर सकता है। वित्तीय क्षेत्र में, नियामक अक्सर मांग करते हैं कि निर्णय स्पष्टीकरण सत्यापन योग्य और व्याख्या योग्य हों।
प्रदर्शन के संदर्भ में, छंटाई अनुमान को तेज करती है क्योंकि परिणामी वृक्ष छोटा और निष्पादित करने में सरल होता है। यह Amazon Web Services में तैनात वास्तविक समय प्रणालियों या Samsung Electronics जैसे एज उपकरणों पर विशेष रूप से प्रासंगिक है, जहाँ विलंबता मायने रखती है। साथ ही, Generative AI के क्षेत्र में जहाँ मॉडल बड़े होते हैं, छंटाई का उपयोग वृक्ष-आधारित विधियों की तरह अक्सर नहीं किया जाता है, लेकिन यह मॉडल सरलीकरण के ज्ञान और विचारों में योगदान देता है।
चुनौतियाँ और सर्वोत्तम अभ्यास
मूल्यांकन के लिए एक प्रमुख चुनौती एक अच्छा छंटाई मानदंड चुनना है। अत्यधिक आक्रामक छंटाई अल्प-अनुकूलन (underfitting) का कारण बन सकती है, जबकि बहुत कम छंटाई अभी भी अति-अनुकूलन छोड़ती है। छंटाई स्तर को ट्यून करने के लिए एक अलग सत्यापन सेट का उपयोग करने की तकनीक मानक है; alpha चयन अक्सर क्रॉस-सत्यापन के माध्यम से किया जाता है। एक इष्टतम वृक्ष बनने के बाद पश्च-छंटाई का प्रभावी ढंग से उपयोग करना उचित है, और जब कम्प्यूटेशनल बजट महत्वपूर्ण हो तो पूर्व-छंटाई का उपयोग करना चाहिए।
एक और चुनौती कई स्तरों वाले श्रेणीबद्ध चरों को संभालना है: छंटाई उन शाखाओं को समाप्त कर सकती है जो दुर्लभ लेकिन महत्वपूर्ण समूहों को कवर करती हैं। व्यवहार में, छंटाई को डोमेन अपेक्षाओं के साथ संतुलित किया जाना चाहिए, उदाहरण के लिए, चिकित्सा या वित्तीय क्षेत्र में - कभी-कभी एक दुर्लभ शाखा को उसके नैदानिक महत्व के कारण रखा जाना चाहिए, भले ही यह त्रुटि को कम न करे।
परियोजना विकास में, छंटाई के सारांश को मॉडल सत्यापन के बाद, एक निष्पक्ष परीक्षण सेट का उपयोग करके करने की सिफारिश की जाती है। कई सॉफ्टवेयर लाइब्रेरीज़ में डिफ़ॉल्ट पैरामीटर होते हैं जिनमें पूर्व- और पश्च-छंटाई दोनों विधियाँ शामिल होती हैं; उनकी अंतःक्रिया को समझना आसान नहीं है और इसके लिए अनुभवजन्य परीक्षण की आवश्यकता होती है।
2020 के दशक तक, निर्णय वृक्ष छंटाई अभी भी एक मानक अभ्यास है, और यह Google Cloud और Oracle Cloud Infrastructure जैसे बड़े प्रौद्योगिकी प्रदाताओं द्वारा समर्थित कई उपकरणों के साथ-साथ ओपन सोर्स वितरणों में शामिल है। हालाँकि अन्य तकनीकें उभरी हैं, कोई भी विधि शोर वस्तुओं को हटाने जितनी सरल और प्रभावी नहीं है, क्योंकि वृक्ष प्रतिनिधित्व इतना सरलीकृत हो जाता है।