मुख्य कंटेंट तक स्किप करें

कस्टम डिटेक्टर मॉडल का प्रशिक्षण

Roboflow, Google Colab और अपने स्वयं के डेटासेट के साथ, आप Limelight के लिए कस्टम डिटेक्टर मॉडल को जल्दी से प्रशिक्षित कर सकते हैं।

यहां उन चरणों का अवलोकन है जिन्हें आपको लेना होगा:

  • रुचि की वस्तुओं के चित्रों को एकत्र और एनोटेट करें।
    • इस संदर्भ में, "एनोटेशन" रुचि की वस्तुओं के चारों ओर बाउंडिंग बॉक्स बनाने की प्रक्रिया है। यह सब Roboflow के वेब इंटरफेस के भीतर किया जा सकता है।
    • वैकल्पिक रूप से, आप Roboflow Universe से एक सार्वजनिक डेटासेट चुन सकते हैं
  • एनोटेटेड डेटासेट को .tfrecord के रूप में निर्यात करें, Google Drive पर अपलोड करें, और Google Colab के साथ हमारे मुफ्त प्रशिक्षण नोटबुक का उपयोग करें।
    • Google Colab आपको मुफ्त में क्लाउड पर शक्तिशाली GPU का उपयोग करके न्यूरल नेटवर्क को प्रशिक्षित करने की अनुमति देता है।

ट्यूटोरियल:

1. डेटासेट

Limelight प्रशिक्षण नोटबुक एक ज़िप किए गए .tfrecord डेटासेट की अपेक्षा करता है। Roboflow एक क्लिक के साथ .tfrecord आर्काइव निर्यात कर सकता है।

आप Roboflow के साथ अपना स्वयं का डेटासेट बना सकते हैं, या पहले से एनोटेटेड डेटासेट के लिए Roboflow Universe ब्राउज़ कर सकते हैं।

यदि आप अपना स्वयं का डेटासेट बनाने का विकल्प चुनते हैं, तो निम्नलिखित पढ़ें:

  • आपको अपने डेटासेट की विविधता को अधिकतम करना चाहिए। आपके डेटासेट की विविधता उससे अधिक होनी चाहिए जो आपका Limelight तैनात होने के बाद देखेगा।

  • आपके डेटासेट की गुणवत्ता और सटीकता अत्यंत महत्वपूर्ण हैं। सुनिश्चित करें कि आपके बाउंडिंग बॉक्स सटीक हैं और एक ही परंपरा का पालन करते हैं। उदाहरण के लिए, आंशिक रूप से छिपी हुई वस्तु के बाउंडिंग बॉक्स में केवल वस्तु का दिखाई देने वाला भाग ही कैप्चर होना चाहिए।

  • क्लास लेबल के लिए सभी छोटे अक्षरों का उपयोग करें

  • क्लास लेबल की संख्या को कम करें।

  • Roboflow के ऑगमेंटेशन का उपयोग करें, लेकिन सुनिश्चित करें कि वे समझ में आते हैं। उदाहरण के लिए, यदि आप लाल और नीली गेंदों का पता लगा रहे हैं, तो सुनिश्चित करें कि आप अपने ऑगमेंटेड डेटासेट में रंग को उलट या अत्यधिक संशोधित नहीं कर रहे हैं।

एक बार जब आपने डेटासेट को लेबल किया या पाया है, तो इसे Tensorflow TFRecord के रूप में निर्यात करने के लिए Roboflow के "Download Dataset" बटन का उपयोग करें। इस आर्काइव को अपने Google Drive पर अपलोड करें।

2. मॉडल का प्रशिक्षण

अपने कस्टम डिटेक्टर को प्रशिक्षित करने के लिए, Limelight डिटेक्टर प्रशिक्षण नोटबुक के साथ Google Colab सत्र शुरू करें।

नोटबुक को किसी भी कोड परिवर्तन की आवश्यकता नहीं है। अपने मॉडल को प्रशिक्षित करने के लिए इन चरणों का पालन करें:

अनुभाग 1

  1. पहले अनुभाग का विस्तार करें, और पहले तीन कोड ब्लॉक के ऊपरी-बाएँ कोने में प्ले बटन पर क्लिक करें। समय बचाने के लिए अंतिम "परीक्षण" कोड ब्लॉक को छोड़ा जा सकता है।
LL4 Technical Drawing
  1. यदि आप कभी भी रीस्टार्ट बटन देखते हैं, तो इसे अनदेखा करें।
LL4 Technical Drawing
  1. यदि आप कभी इस तरह की विंडो देखते हैं, तो "Cancel" पर क्लिक करें
LL4 Technical Drawing

अनुभाग 1.1

  1. अनुभाग का विस्तार करें, पहला कोड ब्लॉक चलाएं, और अपनी tfrecord.zip फ़ाइल के लिए Google Drive लिंक दर्ज करें। सुनिश्चित करें कि आपकी tfrecord.zip Google Drive में "लिंक वाले किसी भी व्यक्ति" के लिए सुलभ है

अनुभाग 2

  1. tfrecord.zip को अनज़िप और पार्स करने के लिए दो कोड ब्लॉक चलाएं

अनुभाग 3

  1. प्रशिक्षण की तैयारी के लिए अनुभाग 3 में सभी कोड ब्लॉक चलाएं

अनुभाग 4

  1. प्रशिक्षण शुरू करने के लिए अनुभाग 4 में सभी कोड ब्लॉक चलाएं।

  2. जबकि प्रशिक्षण स्क्रिप्ट चल रही है, आप प्रगति की निगरानी के लिए फ़ाइल पैन और tensorboard को रिफ्रेश कर सकते हैं। हर 2000 चरणों के बाद "training_progress" फ़ोल्डर में एक नया चेकपॉइंट दिखाई देना चाहिए।

  3. हालांकि प्रशिक्षण स्वचालित रूप से 40000 चरणों पर रुक जाएगा, आप इस अनुभाग के अंतिम कोड ब्लॉक में स्टॉप बटन के साथ किसी भी समय इसे रोक सकते हैं। जब तक चेकपॉइंट उपलब्ध हैं, आप क्वांटाइजेशन और कंपाइलेशन के लिए आगे बढ़ सकते हैं।

अनुभाग 5 - 7

  1. लेबल फ़ाइल उत्पन्न करने और मॉडल को संगत FlatBuffer प्रारूप में परिवर्तित करने के लिए अनुभाग 5 में सभी कोड ब्लॉक चलाएं
  2. INT8 / 8bit इन्फरेंस के लिए मॉडल को क्वांटाइज़ करने के लिए अनुभाग 6 में सभी कोड ब्लॉक चलाएं।
  3. Google Coral और Limelight के लिए मॉडल तैयार करने के लिए अनुभाग 7 में सभी कोड ब्लॉक चलाएं। अंतिम कोड ब्लॉक में कुछ समय लगेगा, और यह प्रशिक्षित मॉडल को .zip फ़ाइल के रूप में डाउनलोड करेगा।

Limelight पर अपलोड करें

  1. अपने Colab सत्र से आर्काइव को अनज़िप करें।
  2. FTC टीमें - यदि आपके पास Limelight3A है, तो 8bit tflite मॉडल और labels.txt अपलोड करें। आपको रनटाइम इंजन को "coral" से "cpu" में बदलने की आवश्यकता होगी
  3. FRC टीमें - यदि आपके पास Google Coral है, तो limelight_neural_detector_coral.tflite और labels.txt फ़ाइलों को अपने Limelight पर अपलोड करें।