For the complete documentation index, see llms.txt. This page is also available as Markdown.

न्यूरल आर्किटेक्चर खोज

स्वचालित रूप से सर्वोत्तम मॉडल आर्किटेक्चर खोजें और साथ ही अपने मॉडल को फाइन-ट्यून करें।

NAS results page showing a Pareto frontier of trained models plotted across latency and accuracy.
NAS परिणाम पृष्ठ गति-से-सटीकता पेरेटो फ्रंटियर के साथ प्रशिक्षित हर मॉडल दिखाता है.

Roboflow का Neural Architecture Search (NAS) एक शक्तिशाली नया फीचर है जो स्वचालित रूप से आपके डेटासेट पर दर्जनों मॉडल आर्किटेक्चर प्रशिक्षित करता है और गति-से-सटीकता ट्रेडऑफ़ वक्र के साथ सर्वोत्तम विकल्प दिखाता है, जिससे चुनने के लिए कई मॉडल विकल्प बनते हैं और पारंपरिक मॉडल प्रशिक्षण रणनीतियों की तुलना में प्रति मॉडल लागत कम होती है.

जैसा कि बताया गया है RF-DETR पेपर मेंयह Neural Architecture Search रणनीति ही थी जिसने RF-DETR की SOTA मॉडल आर्किटेक्चर तैयार की। Roboflow इस रणनीति को सभी Roboflow ग्राहकों के लिए उपलब्ध करा रहा है, जिससे कोई भी अपने उपयोग के मामले के लिए SOTA मॉडल बना सकता है।

Neural Architecture Search:

  • आपके डेटा की विशेषताओं के आधार पर आपके उपयोग के मामले के लिए सबसे उपयुक्त मॉडल आर्किटेक्चर की पहचान करता है

  • उस आर्किटेक्चर को आपके डेटा पर फाइन-ट्यून करता है

  • 5,000 से अधिक कॉन्फ़िगरेशन का परीक्षण करता है, जिसके परिणामस्वरूप 10-100 प्रशिक्षित मॉडल मिलते हैं, और हर latency बिंदु पर सटीकता के लिए अनुकूलित होते हैं।

जब आप उस मॉडल को चुन रहे हों जो प्रोडक्शन में जाएगा, तब NAS चलाना लगभग हमेशा सार्थक होता है। क्योंकि Pareto frontier पर मौजूद हर mined मॉडल आपके डेटा पर पूरी तरह प्रशिक्षित होता है, आप सिर्फ़ एक आकार नहीं चुनते - आप अपने विशिष्ट deployment target के लिए गति/सटीकता का सर्वोत्तम ट्रेडऑफ़ चुनते हैं। वास्तविक ग्राहक रन में, NAS नियमित रूप से समान latency पर एकल RF-DETR Medium फाइन-ट्यून को पछाड़ देता है, और अक्सर काफ़ी बड़े अंतर से।

NAS का उपयोग तब करें जब:

  • आपको किसी दिए गए latency बजट पर बेहतर सटीकता, या किसी दिए गए सटीकता लक्ष्य पर बेहतर latency चाहिए।

  • आप प्रोडक्शन के लिए मॉडल तैयार कर रहे हैं और गति/सटीकता वक्र के साथ विकल्पों की तुलना करना चाहते हैं।

  • आप अन्यथा कोई hyperparameter sweep चलाते या कई model sizes को एक के बाद एक प्रशिक्षित करते।

  • आपको अत्याधुनिक प्रदर्शन चाहिए।

NAS अत्यधिक हो सकता है यदि:

  • आपका उपयोग मामला सीधा-सादा है और "काफी अच्छा" मॉडल पर्याप्त है (उदा.: अच्छी रोशनी वाले वातावरण में लोगों का पता लगाना)। खोजी या शुरुआती-चरण परियोजनाओं के लिए, आमतौर पर एकल फाइन-ट्यून सही विकल्प होता है।

  • आप केवल सबसे बड़ा RF-DETR checkpoint चाहते हैं (उदा.: RF-DETR XXL) और छोटे ट्रेड-ऑफ़ बिंदुओं की परवाह नहीं करते।

लागत, क्रेडिट, और प्लान उपलब्धता

NAS उन सभी भुगतान वाले Roboflow प्लान पर उपलब्ध है जिनमें usage-based billing शामिल है। Trial, Free, और Public प्लान उपयोगकर्ताओं के पास NAS की पहुँच नहीं है। usage-based billing के बिना legacy प्लान उपयोगकर्ताओं को NAS रन शुरू करने से पहले इसे सक्षम करने के लिए कहा जाएगा।

NAS रन पर मानक Roboflow प्रशिक्षण दर के अनुसार बिल किया जाता है - प्रशिक्षण समय के हर 30 मिनट पर 1 क्रेडिट - वही प्रति-घंटा दर जो किसी अन्य प्रशिक्षण जॉब की होती है। एक रन दर्जनों प्रशिक्षित मॉडल बनाता है, इसलिए प्रति मॉडल लागत प्रत्येक को अलग-अलग प्रशिक्षित करने की तुलना में कम होती है, लेकिन एकल NAS जॉब के लिए कुल क्रेडिट खर्च एकल फाइन-ट्यून से अधिक होता है।

योजना बनाने के लिए सामान्य दायरे:

  • लगभग 2,500-छवि वाले object detection डेटासेट को आम तौर पर लगभग 18 घंटे (~36 क्रेडिट) लगते हैं।

  • Instance Segmentation NAS object detection NAS की तुलना में अधिक GPU-गहन है - लगभग 1.5–2x लंबे रन की अपेक्षा करें।

Train UI शुरू करने से पहले अनुमानित अवधि और क्रेडिट लागत दिखाता है। यदि अनुमान एक दिन के प्रशिक्षण से अधिक हो जाता है, तो जॉब शुरू होने से पहले आपसे पुष्टि करने के लिए कहा जाएगा।

एक NAS रन अपने प्रशिक्षण और अपनी architecture search के लिए अलग-अलग बिलिंग करता है, इसलिए आप प्रत्येक पर एक क्रेडिट कैप सेट कर सकते हैं। केवल प्रशिक्षण चरण को कैप करने से खोज uncapped रह जाती है, और इसका उल्टा भी।

NAS बनाम YOLO-NAS

यहाँ वर्णित "Neural Architecture Search" इंजन वही नहीं है YOLO-NASजो Roboflow मॉडल सूची में दिखाई देने वाला एक YOLO-आधारित एकल आर्किटेक्चर है। यदि आपने विशेष रूप से NAS का उपयोग करने के लिए अपग्रेड किया है, तो सुनिश्चित करें कि आप Train पेज पर Neural Architecture Search इंजन चुन रहे हैं - न कि YOLO-NAS मॉडल आर्किटेक्चर।

Roboflow NAS, RF-DETR का उपयोग करके एक अधिक मजबूत आधार से शुरू करता है, जिसमें अपने backbone में अधिक विश्व-ज्ञान शामिल है। वहाँ से, NAS आपके डेटासेट के अनुसार आर्किटेक्चर को अनुकूलित करता है - उदाहरण के लिए, यदि आपके डेटा को कम decoder layers वाले मॉडल से लाभ होता है, तो NAS उस आर्किटेक्चर को स्वचालित रूप से खोज और प्रदान कर सकता है।

समर्थित कार्य और ज्ञात सीमाएँ

NAS वर्तमान में समर्थन करता है:

  • Object Detection

  • Instance Segmentation

अन्य वर्तमान सीमाएँ:

  • कच्चे वज़न (.pt, .onnxआदि) को तृतीय-पक्ष inference सर्वरों पर उपयोग के लिए डाउनलोड नहीं किया जा सकता। NAS मॉडल Roboflow Serverless Cloud API, Dedicated Deployments, Workflows, Batch Processing, और self-hosted पर चलते हैं Roboflow Inference. NAS weights डाउनलोड और चलाने के लिए, हम Roboflow Inference की अनुशंसा करते हैं।

  • NAS द्वारा खोजे गए मॉडल weights Roboflow के अंतर्गत लाइसेंस प्राप्त हैं Platform Model Licenseजो आवश्यक करता है कि आपका Roboflow खाता अच्छी स्थिति में हो।

NAS प्रशिक्षण रन शुरू करें

1

Train टैब खोलें और Neural Architecture Search इंजन चुनें

अपने प्रोजेक्ट में Train टैब खोलें (पर https://app.roboflow.com/YOUR_WORKSPACE/YOUR_PROJECT_NAME/train) और Neural Architecture Search इंजन चुनें।

Train tab engine selector with Neural Architecture Search highlighted.
Train टैब पर Neural Architecture Search इंजन चुनें।
2

एक backbone चुनें

एक से अधिक model variants वाले project types (उदा.: object detection Fast, Standard, और Plus प्रदान करता है) के लिए, आगे बढ़ने से पहले आपको एक backbone चुनना होगा। अपने उपयोग के मामले के लिए उपयुक्त variant पर क्लिक करें। एक ही variant वाले project types (उदा.: instance segmentation) के लिए, यह स्वचालित रूप से चुना जाता है।

3

डेटासेट संस्करण चुनें या बनाएँ

कोई मौजूदा डेटासेट संस्करण चुनें या नया बनाएँ। कुछ सुझाव:

  • NAS प्रशिक्षण के लिए अपने डेटासेट में augmentations जोड़ने की हम अनुशंसा नहीं करते।

  • आपके validation split में कम से कम होना चाहिए 15 छवियाँ. स्थिर Pareto frontier खोजने के लिए NAS को पर्याप्त validation डेटा की आवश्यकता होती है; API 15 से कम validation images वाले प्रशिक्षण अनुरोधों को अस्वीकार कर देगा।

Dataset version selector for a NAS training run.
अपने NAS रन के लिए डेटासेट संस्करण चुनें या बनाएँ।
4

एक backbone चुनें (केवल object detection)

Object detection प्रोजेक्ट्स के लिए, आप तीन backbone विकल्पों में से चुन सकते हैं:

  • Fast - सबसे तेज़ प्रशिक्षण, सबसे कम latency वाले मॉडल खोजता है। CPU या edge deployment के लिए सर्वोत्तम, जहाँ inference गति शीर्ष प्राथमिकता है।

  • Standard - संतुलित प्रशिक्षण समय, विस्तृत latency सीमा में मॉडल खोजता है। Edge या GPU deployment के लिए सर्वोत्तम, जहाँ आप अच्छा गति-से-सटीकता ट्रेडऑफ़ चाहते हैं।

  • Plus - सबसे सटीक मॉडल खोजता है। Cloud GPU deployment के लिए सर्वोत्तम, जहाँ latency से अधिक सटीकता महत्वपूर्ण है।

Instance segmentation प्रोजेक्ट एक single backbone का उपयोग करते हैं और यह चरण छोड़ देते हैं।

5

प्रशिक्षण शुरू करें

क्लिक करें Start Training रन शुरू करने के लिए।

Start Training button on the NAS configuration page.
कॉन्फ़िगरेशन पेज से NAS रन शुरू करें।

NAS परिणाम पृष्ठ पढ़ना

NAS results page with purple dots representing trained models along the Pareto frontier.
हर बैंगनी बिंदु एक पूरी तरह प्रशिक्षित मॉडल है जो परिनियोजन के लिए उपलब्ध है।

परिणाम पृष्ठ आपके डेटा पर NAS द्वारा खोजे और प्रशिक्षित किए गए हर मॉडल को दिखाता है, जिसे Pareto frontier के साथ प्लॉट किया जाता है - प्रत्येक latency बिंदु पर खोजा गया सर्वोत्तम मॉडल। हर बैंगनी बिंदु एक पूरी तरह प्रशिक्षित मॉडल है जिसे आप परिनियोजित कर सकते हैं। mining आगे बढ़ने के साथ frontier लाइव अपडेट होती रहती है, इसलिए आप पूरे रन के समाप्त होने से पहले ही उम्मीदवारों का मूल्यांकन शुरू कर सकते हैं।

मीट्रिक चुनना। F1, mAP@50, और mAP@50:95 के बीच टॉगल करके उस मीट्रिक के विरुद्ध frontier का मूल्यांकन करें जो आपके उपयोग के मामले के लिए महत्वपूर्ण है। अलग-अलग मीट्रिक्स के लिए frontier पर अलग-अलग मॉडल दिखाई दे सकते हैं - यह अपेक्षित है। उस मीट्रिक को चुनें जो सबसे अधिक सटीक रूप से दर्शाता है कि आप प्रोडक्शन में मॉडल का मूल्यांकन कैसे करेंगे, फिर अपने target latency पर सर्वोत्तम मॉडल चुनें। अधिकांश उपयोग के मामलों के लिए हम F1 की अनुशंसा करते हैं।

मॉडलों को स्टार करना। जिन भी मॉडलों का आप उपयोग करना चाहते हैं, उन्हें स्टार करें। स्टार किए गए मॉडल Workflow model picker में दिखाई देते हैं; unstared मॉडल परिणाम पृष्ठ पर बने रहते हैं लेकिन picker में छिपे रहते हैं ताकि वह अव्यवस्थित न लगे। आप जितने चाहें उतने या जितने चाहें उतने कम मॉडल स्टार कर सकते हैं - स्टार करना मुफ़्त है और वापस बदला जा सकता है।

स्टार किए गए मॉडल का उपयोग करना। Workflow में model block का उपयोग करके इसे उसी तरह चुनें जैसे किसी अन्य Roboflow model को चुनते हैं।

रन के दौरान NAS द्वारा दिखाए जाने वाले लाइव प्रशिक्षण चार्ट (Training Progress Band और Epoch Snapshot दृश्य) के बारे में अधिक जानकारी के लिए, देखें प्रशिक्षण परिणाम देखें.

NAS रन रोकना

एक NAS जॉब के दो चरण होते हैं - प्रशिक्षण और माइनिंग - जो उसी जॉब में बैक-टू-बैक चलते हैं। रन रोकने के आपके पास दो तरीके हैं:

  • जल्दी रोकें (जब आप वर्तमान frontier से संतुष्ट हों, तब अनुशंसित)। चरण के अनुसार "Stop Training Early" या "Stop Mining" पर क्लिक करें। उस बिंदु तक mined मॉडल रखे जाते हैं और परिनियोजित किए जा सकते हैं। पूर्ण किए गए काम के लिए उपयोग किए गए क्रेडिट बिल किए जाते हैं। देखें प्रशिक्षण जॉब रोकें या रद्द करें विवरण के लिए।

  • रद्द करें (जब आप रन को पूरी तरह छोड़ देना चाहते हों)। "Cancel Training" पर क्लिक करें। कोई weight सहेजा नहीं जाता, लेकिन यदि आप जॉब के शुरुआती चरण में रद्द करते हैं तो क्रेडिट वापस कर दिए जाते हैं। देखें प्रशिक्षण जॉब रोकें या रद्द करें.

NAS रन स्वतः भी रुक जाते हैं जब मॉडल converge हो जाता है - अर्थात, सभी target epochs पूरे होने से पहले peak performance पर पहुँच जाता है। परिणाम पृष्ठ पर एक banner यह संकेत देता है कि ऐसा हुआ है। आपकी ओर से किसी कार्रवाई की आवश्यकता नहीं है।

NAS द्वारा खोजे गए मॉडल परिनियोजित करना

NAS द्वारा खोजे गए मॉडल किसी भी अन्य Roboflow-प्रशिक्षित मॉडल की तरह ही परिनियोजित होते हैं। आप उन्हें यहाँ चला सकते हैं:

  • Roboflow Serverless Cloud API (नीचे दिए गए code examples देखें)।

  • Dedicated Deployments अधिक throughput या आरक्षित capacity के लिए।

  • वर्कफ़्लोज़ और Batch Processing विज़न pipelines बनाने और चलाने के लिए।

  • Self-hosted Roboflow Inference अपने स्वयं के hardware पर (Docker, edge, या cloud)।

Roboflow Inference के साथ स्थानीय रूप से NAS मॉडल चलाना

इंस्टॉल करें और शुरू करें Roboflow Inference अपने hardware पर, फिर inference-sdk को http://localhost:9001 पर इंगित करें और इसे अपने NAS model ID के साथ ठीक वैसे ही कॉल करें जैसे आप किसी अन्य Roboflow model के साथ करेंगे। नीचे दिए गए code examples hosted endpoint और local Inference server दोनों के साथ काम करते हैं - बस api_url.

Roboflow Serverless Cloud API

निर्भरताएँ स्थापित करने के लिए, pip install inference-sdk.

Linux या macOS

नामक स्थानीय फ़ाइल के लिए JSON भविष्यवाणियाँ प्राप्त करना your_image_path.png:

वेब पर कहीं और होस्ट की गई छवि पर उसके URL के माध्यम से अनुमान लगाना (मत भूलिए to इसे URL-एन्कोड करें):

Node.js

इन उदाहरणों में अंतर्निहित fetch API का उपयोग किया गया है। यह Node.js 18 और बाद के संस्करणों तथा आधुनिक ब्राउज़र में काम करता है, इसलिए स्थापित करने के लिए कोई dependency नहीं है।

स्थानीय छवि पर अनुमान लगाना

URL के माध्यम से कहीं और होस्ट की गई छवि पर अनुमान लगाना

अंतिम अपडेट

क्या यह उपयोगी था?