छवि वृद्धि
मॉडल प्रदर्शन सुधारने के लिए बढ़ी हुई छवियाँ बनाएं।
इमेज ऑगमेंटेशन एक चरण है जिसमें आपके डेटासेट में "Train" के रूप में चिह्नित मौजूदा छवियों पर ऑगमेंटेशन लागू किए जाते हैं। यह प्रक्रिया आपके मॉडल की सामान्यीकरण क्षमता को बेहतर बनाने में मदद कर सकती है, जिससे वह अनदेखी छवियों पर अधिक प्रभावी ढंग से प्रदर्शन कर सके।
हम अनुशंसा करते हैं कि प्रोजेक्ट की शुरुआत बिना किसी ऑगमेंटेशन के करें। इससे आप अपने कच्चे डेटासेट की गुणवत्ता का मूल्यांकन कर सकते हैं। यदि आप ऑगमेंटेशन जोड़ते हैं और आपका डेटासेट अपेक्षित प्रदर्शन नहीं करता है, तो आपके पास मॉडल प्रदर्शन की तुलना के लिए कोई आधार रेखा नहीं होगी।
यदि आपका मॉडल बिना ऑगमेंटेशन के अच्छा प्रदर्शन नहीं करता है, तो आपको क्लास बैलेंस, डेटा प्रतिनिधित्व और डेटासेट के आकार की जांच करनी पड़ सकती है। जब आपके पास ऐसा डेटासेट हो जिस पर आपने बिना ऑगमेंटेशन के सफलतापूर्वक मॉडल ट्रेन किया हो, तब आप ऑगमेंटेशन जोड़ सकते हैं ताकि मॉडल का प्रदर्शन और बेहतर हो सके।
कुछ मुख्य कारणों से ऑगमेंटेशन ट्रेनिंग के समय के बजाय डेटासेट वर्शन ("ऑफलाइन ऑगमेंटेशन") के माध्यम से लागू किए जाते हैं:
मॉडल की पुनरुत्पादकता बढ़ जाती है। Roboflow के साथ, आपके पास यह रिकॉर्ड होता है कि प्रत्येक छवि को कैसे ऑगमेंट किया गया था। उदाहरण के लिए, आप देख सकते हैं कि आपका मॉडल उजली छवियों पर बेहतर प्रदर्शन करता है बनिस्बत अंधेरी छवियों के, तो आपको और अधिक कम-रोशनी वाले ट्रेनिंग डेटा एकत्र करने चाहिए।
ट्रेनिंग का समय कम हो जाता है। ऑगमेंटेशन CPU-सीमित ऑपरेशन हैं। जब आप अपने GPU पर ट्रेनिंग कर रहे होते हैं और ऑगमेंटेशन ऑन-द-फ्लाई कर रहे होते हैं, तो आपका GPU अक्सर आपके CPU से ऑगमेंटेड डेटा की प्रतीक्षा करता है। यह समय जोड़ता है!
ट्रेनिंग लागत कम हो जाती है। क्योंकि ऑगमेंटेशन CPU-सीमित ऑपरेशन हैं, आपका महंगा, किराए का GPU अक्सर ट्रेनिंग के लिए छवियों की प्रतीक्षा करता है।
ऑगमेंटेशन कैसे लागू किए जाते हैं
ऑगमेंटेशन हमेशा ट्रेनिंग छवियों पर लागू किए जाते हैं प्रीप्रोसेसिंग स्टेप्सके बाद। चयनित ऑगमेंटेशन एक साथ स्टैक किए जाते हैं, ऑगमेंटेशन सेटिंग्स के लिए रैंडमाइजेशन के साथ, और प्रत्येक सेटिंग के लिए मान प्रत्येक ऑगमेंटेड छवि पर लागू किए जाते हैं। इस प्रक्रिया के दौरान जो भी छवियां डुप्लिकेट के रूप में आती हैं, उन्हें बनाए गए वर्शन से हटा दिया जाता है।
उदाहरण के लिए, यदि आप ऑगमेंटेशन चुनते हैं "फ्लिप हॉरिजॉन्टली" और "सॉल्ट एंड पेपर नॉइज़," तो किसी भी छवि को यादृच्छिक रूप से हॉरिजॉन्टल फ्लिप किया जाएगा और उस पर यादृच्छिक सॉल्ट एंड पेपर नॉइज़ डाली जाएगी।
ऑगमेंटेशन सीमित करना
जब आप ऑगमेंटेशन के साथ डेटासेट वर्शन बना रहे होते हैं, तो आप "Maximum Version Size" विकल्प के माध्यम से शामिल की जाने वाली अधिकतम ऑगमेंटेड छवियों की संख्या चुन सकते हैं।
उदाहरण के लिए, 3x चुनने का अर्थ है कि आपके अंतिम डेटासेट वर्शन में प्रत्येक ट्रेनिंग स्रोत छवि के साथ प्रीप्रोसेसिंग स्टेप्स लागू और आपके द्वारा चुनी गई सेटिंग्स के आधार पर प्रत्येक छवि के 2 यादृच्छिक ऑगमेंटेशन होंगे।
यदि आपके डेटासेट में 100 छवियां थीं और ट्रेन/वैलिड/टेस्ट विभाजन 70/20/10 था और आपने 3x ऑगमेंटेशन चुना, तो आपका अंतिम डेटासेट लगभग 210/20/10 के विभाजन में होगा।

ऑगमेंटेशन विकल्प
Roboflow में ऑगमेंटेशन या तो "Basic" या "Enhanced" हो सकते हैं और दो अलग-अलग स्तरों पर लागू किए जा सकते हैं।
इमेज लेवल ऑगमेंटेशन
इमेज लेवल ऑगमेंटेशन पूरी छवि पर ट्रांसफॉर्मेशन लागू करके नया ट्रेनिंग डेटा बनाते हैं, न कि व्यक्तिगत ऑब्जेक्ट्स या क्षेत्रों पर। पूरी छवि को संशोधित करके, डेवलपर्स दृश्य स्थितियों की एक विस्तृत श्रृंखला का अनुकरण कर सकते हैं, जिससे मॉडल नए डेटा पर बेहतर सामान्यीकरण सीख सकते हैं।
बाउंडिंग बॉक्स लेवल ऑगमेंटेशन
बाउंडिंग बॉक्स लेवल ऑगमेंटेशन केवल स्रोत छवि के बाउंडिंग बॉक्स की सामग्री को बदलकर नया ट्रेनिंग डेटा बनाता है। ऐसा करने से, डेवलपर्स को अपनी समस्या की स्थितियों के लिए अधिक उपयुक्त ट्रेनिंग डेटा बनाने पर अधिक नियंत्रण मिलता है।
एक 2019 का पेपर Google के शोधकर्ताओं द्वारा बाउंडिंग बॉक्स केवल ऑगमेंटेशन का उपयोग करके अपने मॉडलों के लिए इष्टतम डेटा बनाने का विचार प्रस्तुत किया गया है। इस पेपर में, शोधकर्ताओं ने दिखाया कि केवल बाउंडिंग बॉक्स में किए गए बदलाव प्रणालीगत सुधार लाते हैं, खासकर उन मॉडलों के लिए जिन्हें छोटे डेटासेट पर फिट किया गया था।
और जानें
Last updated
Was this helpful?