एक कस्टम डिटेक्टर मॉडल का प्रशिक्षण
Roboflow, Google Colab और अपने खुद के डेटासेट के साथ, आप Limelight के लिए कस्टम डिटेक्टर मॉडल को जल्दी से प्रशिक्षित कर सकते हैं।
यहां उन चरणों का एक अवलोकन है जो आपको उठाने होंगे:
-
रुचि की वस्तुओं की छवियों को एकत्र और एनोटेट करें।
- इस संदर्भ में, "एनोटेशन" रुचि की वस्तुओं के चारों ओर बाउंडिंग बॉक्स बनाने की प्रक्रिया है। यह सब Roboflow के वेब इंटरफेस के भीतर किया जा सकता है।
- वैकल्पिक रूप से, आप Roboflow Universe से एक सार्वजनिक डेटासेट चुन सकते हैं
-
एनोटेट किए गए डेटासेट को .tfrecord के रूप में निर्यात करें, Google Drive पर अपलोड करें, और Google Colab के साथ हमारे मुफ्त प्रशिक्षण नोटबुक का उपयोग करें।
- Google Colab आपको मुफ्त में क्लाउड पर शक्तिशाली GPUs का उपयोग करके न्यूरल नेटवर्क को प्रशिक्षित करने की अनुमति देता है।
ट्यूटोरियल:
1. डेटासेट
Limelight प्रशिक्षण नोटबुक एक ज़िप किए गए .tfrecord डेटासेट की अपेक्षा करता है। Roboflow एक क्लिक के साथ .tfrecord आर्काइव निर्यात कर सकता है।
आप Roboflow के स ाथ अपना खुद का डेटासेट बना सकते हैं, या पहले से एनोटेट किए गए डेटासेट के लिए Roboflow Universe ब्राउज़ कर सकते हैं।
यदि आप अपना खुद का डेटासेट बनाने का विकल्प चुनते हैं, तो निम्नलिखित पढ़ें:
-
आपको अपने डेटासेट की विविधता को अधिकतम करना चाहिए। आपके डेटासेट की विविधता उससे अधिक होनी चाहिए जो आपका Limelight एक बार तैनात होने के बाद देखेगा।
-
आपके डेटासेट की गुणवत्ता और सटीकता अत्यंत महत्वपूर्ण हैं। सुनिश्चित करें कि आपके बाउंडिंग बॉक्स सटीक हैं और एक ही परंपरा का पालन करते हैं। उदाहरण के लिए, एक आंशिक रूप से छिपी हुई वस्तु के बाउंडिंग बॉक्स में केवल वस्तु का दृश्यमान भाग ही कैप्चर होना चाहिए।
-
क्लास लेबल के लिए सभी लोअरकेस अक्षरों का उपयोग करें
-
क्लास लेबल की संख्या को कम से कम रखें।
-
Roboflow के ऑगमेंटेशन का उपयोग करें, लेकिन सुनिश्चित क रें कि वे समझ में आते हैं। उदाहरण के लिए, यदि आप लाल और नीली गेंदों का पता लगा रहे हैं, तो सुनिश्चित करें कि आप अपने ऑगमेंटेड डेटासेट में रंग को उलट या भारी रूप से संशोधित नहीं कर रहे हैं।
एक बार जब आपने डेटासेट को लेबल किया या खोज लिया है, तो इसे Tensorflow TFRecord के रूप में निर्यात करने के लिए Roboflow के "Download Dataset" बटन का उपयोग करें। इस आर्काइव को अपने Google Drive पर अपलोड करें।
2. मॉडल का प्रशिक्षण
अपने कस्टम डिटेक्टर को प्रशिक्षित करने के लिए, Limelight Detector Training Notebook के साथ एक Google Colab सत्र शुरू करें।
नोटबुक को किसी भी कोड परिवर्तन की आवश्यकता नहीं है। अपने मॉडल को प्रशिक्षित करने के लिए इन चरण ों का पालन करें:
अनुभाग 1
- पहले अनुभाग को विस्तारित करें, और पहले तीन कोड ब्लॉक के ऊपरी-बाएं कोने में प्ले बटन पर क्लिक करें। समय बचाने के लिए अंतिम "परीक्षण" कोड ब्लॉक को छोड़ा जा सकता है।
अनुभाग 2
-
दूसरे अनुभाग को विस्तारित करें। अपने Colab सत्र में "Files" पेन में अपने google drive फ़ोल्डर को माउंट करने के लिए पहले ब्लॉक के प्ले बटन पर क्लिक करें। स्क्रीन के बाईं ओर फ़ोल्डर बटन पर क्लिक करके फ़ाइल पेन खोलें।
-
एक बार जब आपका Google Drive माउंट हो जाता है, तो "Files" पेन में रीफ्रेश बटन पर क्लिक करें। इस अनुभाग में दूसरे कोड ब्लॉक को चलाकर gdrive फ़ोल्डर में पहले से अपलोड की गई .tfrecord.zip फ़ाइ ल का चयन करें। फ़ाइल ढूंढें, और "select" बटन पर क्लिक करें।
-
TFRecord को अनज़िप और मान्य करने के लिए अगले दो कोड ब्लॉक चलाएं।
अनुभाग 3
- प्रशिक्षण की तैयारी के लिए अनुभाग 3 में सभी कोड ब्लॉक चलाएं
अनुभाग 4
-
प्रशिक्षण शुरू करने के लिए अनुभाग 4 में सभी कोड ब्लॉक चलाएं।
-
जबकि प्रशिक्षण स्क्रिप्ट चल रही है, आप प्रगति की निगरानी के लिए फ़ाइल पेन और tensorboard को रीफ्रेश कर सकते हैं। हर 2000 चरणों में "training_progress" फ़ोल्डर में एक नया चेकपॉइंट दिखाई देना चाहिए।
-
हालांकि प्रशिक्षण स्वचालित रूप से 40000 चरणों पर रुक जाएगा, आप इस अनुभाग के अंतिम कोड ब्लॉक में स्टॉप बटन के साथ किसी भ ी समय इसे रोक सकते हैं। जब तक चेकपॉइंट उपलब्ध हैं, आप क्वांटाइजेशन और संकलन की ओर बढ़ सकते हैं।
अनुभाग 5 - 7
- एक लेबल फ़ाइल उत्पन्न करने और मॉडल को संगत FlatBuffer प्रारूप में परिवर्तित करने के लिए अनुभाग 5 में सभी कोड ब्लॉक चलाएं
- INT8 / 8bit अनुमान के लिए मॉडल को क्वांटाइज़ करने के लिए अनुभाग 6 में सभी कोड ब्लॉक चलाएं।
- Google Coral और Limelight के लिए मॉडल तैयार करने के लिए अनुभाग 7 में सभी कोड ब्लॉक चलाएं। अंतिम कोड ब्लॉक में कुछ समय लगेगा, और यह प्रशिक्षित मॉडल को एक .zip फ़ाइल के रूप में डाउनलोड करेगा।
Limelight पर अपलोड करें
- अपने Colab सत्र से आर्काइव को अ नज़िप करें। limelight_neural_detector_coral.tflite और labels.txt फ़ाइलों को अपने Limelight पर अपलोड करें।