← नवीनतम पेपर
💻 computer science

Improving Test Case Prioritization in Continuous Integration Environments Using Multilayer Perceptron: An Empirical Comparative Study

यह अनुभवजन्य अध्ययन प्रदर्शित करता है कि एक मल्टीलेयर परसेप्ट्रॉन (MLP), निरंतर एकीकरण (continuous integration) परिवेशों के भीतर परीक्षण मामलों को प्राथमिकता देने में पांच शास्त्रीय मशीन लर्निंग एल्गोरिदम की तुलना में काफी बेहतर प्रदर्शन करता है, जो कई औद्योगिक डेटासेटों में श्रेष्ठ दोष पहचान दक्षता और सांख्यिकीय महत्व प्राप्त करता है।

मूल लेखक: MUSA ISYAKU, ABDULSALAM YA'U GITAL, HARUNA CHIROMA

प्रकाशित 2026-09-29
📖 6 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: MUSA ISYAKU, ABDULSALAM YA'U GITAL, HARUNA CHIROMA

मूल पेपर CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। ✨ नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

आधुनिक सॉफ्टवेयर विकास की विशाल और तीव्र गति वाली दुनिया में, प्रोग्राम लगातार अपडेट होते रहते हैं। इन प्रणालियों को विश्वसनीय बनाए रखने के लिए, इंजीनियर हर बार कोई बदलाव किए जाने पर 'रिग्रेशन टेस्ट' नामक स्वचालित जाँच चलाते हैं। एक विशाल पुस्तकालय की कल्पना करें जहाँ हर बार एक नया पन्ना जोड़े जाने पर हर किताब की क्षति की जाँच की जानी चाहिए। यदि एक लाइब्रेरियन को क्रमवार हर एक किताब की जाँच करनी पड़ी, तो यह प्रक्रिया अनंत काल तक चलेगी, और पुस्तकालय पिछड़ जाएगा। सॉफ्टवेयर में, इसका अर्थ है टूटे हुए फीचर को खोजने में बहुत अधिक समय बर्बाद करना, जो महंगा और निराशाजनक हो सकता है। इस समस्या को हल करने के लिए, शोधकर्ता 'टेस्ट केस प्रायोरिटाइजेशन' (test case prioritization) नामक रणनीति का उपयोग करते हैं। टेस्ट्स को किसी भी रैंडम क्रम में चलाने के बजाय, वे यह पता लगाने की कोशिश करते हैं कि कौन से विशिष्ट टेस्ट सबसे पहले विफल होने की सबसे अधिक संभावना रखते हैं। सबसे संदिग्ध टेस्ट को बिल्कुल शुरुआत में चलाकर, टीमें समस्याओं को बहुत तेज़ी से ढूंढ और ठीक कर सकती हैं, जिससे समय और संसाधनों की बचत होती है।

वर्षों से, कंप्यूटर वैज्ञानिक इस छंटनी कार्य में मदद करने के लिए मशीन लर्निंग का उपयोग करने का प्रयास कर रहे हैं। ये ऐसे कंप्यूटर प्रोग्राम हैं जो भविष्यवाणियां करने के लिए पिछले डेटा से सीखते हैं। हालाँकि, नाइजीरिया के अबुबाकरर तफवावाला लेवा यूनिवर्सिटी का एक हालिया अध्ययन बताता है कि हालांकि कई विधियाँ मौजूद हैं, लेकिन एक विशिष्ट प्रकार का लर्निंग मॉडल इस काम के लिए सबसे प्रभावी हो सकता है। शोधकर्ताओं—मुसा इस्याकु, अब्दुल सलाम या'उ गिटल और हारुन चिरोमा—ने यह देखने के लिए प्रयोग किया कि क्या एक 'मल्टीलेयर पर्सेप्ट्रॉन' (Multilayer Perceptron) नामक मॉडल निरंतर परीक्षण वातावरण में हजारों टेस्ट केसों को छाँटने के लिए अन्य लोकप्रिय तरीकों से बेहतर प्रदर्शन कर सकता है। उन्होंने केवल अनुमान नहीं लगाया; उन्होंने इस मॉडल को औद्योगिक रोबोटिक्स और नेटवर्क तकनीक कंपनियों के वास्तविक डेटा का उपयोग करके पांच अन्य स्थापित एल्गोरिदम के विरुद्ध परखा।

टीम ने औद्योगिक रोबोट बनाने वाली कंपनी, ABB रोबोटिक्स से ऐतिहासिक टेस्ट रिकॉर्ड का एक विशाल संग्रह एकत्र किया। इस डेटासेट में 106 अलग-अलग टेस्टिंग साइकिलों से 64,000 से अधिक व्यक्तिगत टेस्ट निष्पादन शामिल थे। इस वास्तविक परिदृश्य में, अधिकांश टेस्ट सफलतापूर्वक पास हो जाते हैं, जबकि केवल एक छोटा हिस्सा विफल होता है। यह कंप्यूटर मॉडलों के लिए एक कठिन स्थिति पैदा करता है: यदि कोई प्रोग्राम केवल यह अनुमान लगाता है कि प्रत्येक टेस्ट पास होगा, तो वह अधिकांश समय सही होगा, लेकिन वह उन कुछ टेस्ट्स को पूरी तरह से मिस कर देगा जो वास्तव में विफल होते हैं। शोधकर्ताओं को एक ऐसे मॉडल की आवश्यकता थी जो अत्यधिक संख्या में सफलताओं से विचलित हुए बिना उन दुर्लभ विफलताओं को पहचान सके। अपने निष्कर्षों को केवल एक इत्तेफाक न होने देने के लिए, उन्होंने अपने दृष्टिकोण का तीन अन्य औद्योगिक डेटासेट्स पर भी परीक्षण किया, यह जाँचने के लिए कि क्या परिणाम विभिन्न वातावरणों में भी कायम रहते हैं।

उन्होंने अपने चुने हुए मॉडल, मल्टीलेयर पर्सेप्ट्रॉन की तुलना पांच अन्य सामान्य मशीन लर्निंग तकनीकों: रैंडम फॉरेस्ट, XGBoost, लॉजिस्टिक रिग्रेशन, सपोर्ट वेक्टर मशीन और k-नियरेस्ट नेबर्स के साथ की। तुलना को निष्पक्ष बनाने के लिए, उन्होंने सभी छह मॉडलों को बिल्कुल समान परिस्थितियों में, समान डेटा स्प्लिट और सेटिंग्स को ट्यून करने के समान तरीकों के साथ चलाया। लक्ष्य यह देखना था कि कौन सा मॉडल विफल होने वाले टेस्ट को सूची में सबसे ऊपर रखता है, ताकि उन्हें सबसे पहले चलाया जा सके। शोधकर्ताओं ने सफलता को केवल इस आधार पर नहीं मापा कि मॉडल कुल मिलाकर कितना सही था, बल्कि इस आधार पर मापा कि वह विफलताओं को कितनी जल्दी पहचान सकता है। उन्होंने 'एवरेज पर्सेंटेज ऑफ फॉल्ट्स डिटेक्टेड' (Average Percentage of Faults Detected) नामक एक विशिष्ट स्कोर का उपयोग किया, जो मूल रूप से यह मापता है कि सूची में खराब टेस्ट कितनी जल्दी दिखाई देते हैं। उच्च स्कोर का अर्थ है कि मॉडल समस्याओं को जल्दी पकड़ने में बेहतर है।

परिणाम स्पष्ट और सुसंगत थे। प्राथमिक डेटासेट (ABB रोबोटिक्स) पर, मल्टीलेयर पर्सेप्ट्रॉन मॉडल ने 99.77 प्रतिशत की सटीकता और फॉल्ट डिटेक्शन मेट्रिक पर 86.35 प्रतिशत का स्कोर प्राप्त किया। जबकि अन्य मॉडल अच्छा प्रदर्शन कर रहे थे, मल्टीलेयर पर्सेप्ट्रॉन ने लगातार विफल टेस्ट को प्रतिस्पर्धा की तुलना में थोड़ा ऊपर रखा। शोधकर्ताओं ने यह पुष्टि करने के लिए कठोर सांख्यिकीय परीक्षणों का उपयोग किया कि यह अंतर संयोग के कारण नहीं था। विश्लेषण ने दिखाया कि मल्टीलेयर पर्सेप्ट्रॉन सांख्यिकीय रूप से सभी पांच अन्य मॉडलों से श्रेष्ठ था, जिसमें विश्वास का स्तर ऐसा था जिसमें संदेह की कोई गुंजाइश नहीं थी। यहाँ तक कि जब उन्होंने मॉडलों की सेटिंग्स को और बेहतर बनाने के लिए समायोजित किया, तब भी मल्टीलेयर पर्सेप्ट्रॉन शीर्ष प्रदर्शन करने वाला बना रहा, जबकि अन्य कुछ मॉडल ट्यूनिंग के बाद थोड़े खराब हो गए।

इस अध्ययन से सबसे महत्वपूर्ण सबक यह है कि हम सफलता को कैसे मापते हैं। शोधकर्ताओं ने पाया कि इस क्षेत्र में केवल समग्र सटीकता (overall accuracy) को देखना भ्रामक हो सकता है। क्योंकि अधिकांश टेस्ट पास होते हैं, इसलिए एक मॉडल विफलताओं को अनदेखा करके भी बहुत उच्च सटीकता स्कोर प्राप्त कर सकता है। अध्ययन ने प्रदर्शित किया कि यह समझने के लिए कि एक प्रायोरिटाइजेशन सिस्टम वास्तव में कितनी अच्छी तरह काम करता है, हमें विफल होने वाले अल्पसंख्यक टेस्ट्स को खोजने की उसकी क्षमता और उन्हें कितनी जल्दी खोजने की क्षमता को देखना चाहिए। मल्टीलेयर पर्सेप्ट्रॉन इसमें उत्कृष्ट रहा, जिसने साबित किया कि डीप लर्निंग मॉडल पारंपरिक तरीकों की तुलना में वास्तविक दुनिया के असमान परीक्षण डेटा को बेहतर ढंग से संभाल सकते हैं।

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

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →