हाल के वर्षों में, प्राकृतिक भाषा समझ (एनएलयू) को तेजी से व्यावसायिक मूल्य मिला है, जो मॉडल सुधार के साथ-साथ क्लाउड-आधारित बुनियादी ढांचे की स्केलेबिलिटी और लागत-दक्षता से प्रेरित है। विशेष रूप से, ट्रांसफार्मर गहन शिक्षण वास्तुकला, अक्सर के रूप में कार्यान्वित की जाती है बर्ट मॉडल अत्यधिक सफल रहे हैं, लेकिन इन मॉडलों का प्रशिक्षण, फाइन-ट्यूनिंग और अनुकूलन एक चुनौतीपूर्ण समस्या साबित हुई है। को धन्यवाद AWS और हगिंग फेस सहयोग, अब एनएलयू मॉडल को प्रशिक्षित करना और अनुकूलित करना आसान हो गया है अमेज़न SageMaker सेजमेकर पायथन एसडीके का उपयोग करना, लेकिन इन मॉडलों के लिए लेबल किए गए डेटा को सोर्स करना अभी भी मुश्किल और समय लेने वाला है।
विशेष व्यावसायिक हित की एक एनएलयू समस्या प्रश्न उत्तर देने का कार्य है। इस पोस्ट में, हम प्रदर्शित करते हैं कि कस्टम प्रश्न उत्तर डेटासेट का उपयोग कैसे करें अमेज़ॅन सैजमेकर ग्राउंड ट्रुथ एनएलयू मॉडल का उत्तर देने वाले हगिंग फेस प्रश्न को प्रशिक्षित करने के लिए।
प्रश्न उत्तर चुनौतियाँ
प्रश्न उत्तर देने में एक मॉडल शामिल होता है जो पाठ के कुछ भाग को देखते हुए स्वचालित रूप से किसी प्रश्न का उत्तर तैयार करता है जिसमें उत्तर हो भी सकता है और नहीं भी। उदाहरण के लिए, निम्नलिखित प्रश्न दिया गया है, "सेजमेकर ग्राउंड ट्रुथ किस वर्कफ़्लो का समर्थन करता है?" एक मॉडल को निम्नलिखित पैराग्राफ में "एनोटेशन समेकन और ऑडिट" खंड की पहचान करने में सक्षम होना चाहिए:
सेजमेकर ग्राउंड ट्रुथ एनोटेशन समेकन और ऑडिट वर्कफ़्लो के माध्यम से लेबल की गुणवत्ता में सुधार करने में मदद करता है। एनोटेशन समेकन दो या दो से अधिक डेटा लेबलर्स से लेबल इनपुट एकत्र करने और उन्हें आपके मशीन लर्निंग मॉडल के लिए एकल डेटा लेबल बनाने के लिए संयोजित करने की प्रक्रिया है। अंतर्निहित ऑडिट और समीक्षा वर्कफ़्लो के साथ, कर्मचारी लेबल सत्यापन कर सकते हैं और सटीकता में सुधार के लिए समायोजन कर सकते हैं।
यह समस्या चुनौतीपूर्ण है क्योंकि इसमें केवल कीवर्ड खोज करने के बजाय किसी प्रश्न के अर्थ को समझने के लिए एक मॉडल की आवश्यकता होती है। इस क्षेत्र में सटीक मॉडल बुद्धिमान चैटबॉट्स को सशक्त बनाने, उच्च गुणवत्ता वाले वॉयस सहायक उत्पादों को वितरित करने और व्यक्तिगत उत्पाद प्रश्न उत्तर के माध्यम से ऑनलाइन स्टोर राजस्व बढ़ाने के माध्यम से ग्राहक सहायता लागत को कम कर सकते हैं। इस क्षेत्र में एक बड़ा डेटासेट है स्टैनफोर्ड प्रश्न उत्तर डेटासेट (एसक्यूएडी), एक विविध प्रश्न उत्तर देने वाला डेटासेट जो लघु पाठ अंशों के साथ एक मॉडल प्रस्तुत करता है और मॉडल को अनुच्छेद में उत्तर देने वाले पाठ अवधि के स्थान की भविष्यवाणी करने की आवश्यकता होती है। SQuAD एक रीडिंग कॉम्प्रिहेंशन डेटासेट है, जिसमें विकिपीडिया लेखों के एक सेट पर भीड़ कार्यकर्ताओं द्वारा पूछे गए प्रश्न शामिल हैं, जहां प्रत्येक प्रश्न का उत्तर या तो संबंधित मार्ग से पाठ का एक विस्तार है, या अन्यथा उत्तर देना असंभव के रूप में चिह्नित है।
व्यावसायिक उपयोग के मामलों के लिए SQuAD को अपनाने में एक चुनौती डोमेन-विशिष्ट कस्टम डेटासेट तैयार करना है। नए प्रश्न और उत्तर डेटासेट बनाने की इस प्रक्रिया के लिए एक विशेष उपयोगकर्ता इंटरफ़ेस की आवश्यकता होती है जो एनोटेटर्स को स्पैन को हाइलाइट करने और उन स्पैन में प्रश्न जोड़ने की अनुमति देता है। इसे SQuAD 2.0 प्रारूप का समर्थन करने के लिए असंभव प्रश्नों को जोड़ने में भी सक्षम होना चाहिए, जिसमें गैर-उत्तर योग्य प्रश्न भी शामिल हैं। ये असंभव प्रश्न मॉडलों को अतिरिक्त समझ हासिल करने में मदद करते हैं, जिनके प्रश्नों का उत्तर दिए गए अनुच्छेद का उपयोग करके नहीं दिया जा सकता है। कस्टम कार्यकर्ता टेम्पलेट्स ग्राउंड ट्रुथ में श्रमिकों को प्रश्न और उत्तर डेटासेट बनाने के लिए एक अनुरूप एनोटेशन अनुभव प्रदान करके इन डेटासेट की पीढ़ी को सरल बनाया गया है।
समाधान अवलोकन
यह समाधान एक कस्टम एनोटेशन उपयोगकर्ता इंटरफ़ेस का उपयोग करके डोमेन-विशिष्ट कस्टम प्रश्न-उत्तर डेटासेट को लेबल करने के लिए ग्राउंड ट्रुथ लेबलिंग नौकरियों का निर्माण और प्रबंधन करता है। हम प्रशिक्षण, फाइन-ट्यून, अनुकूलन और तैनाती के लिए सेजमेकर का उपयोग करते हैं Hugging Face
BERT मॉडल एक कस्टम प्रश्न उत्तर डेटासेट पर PyTorch के साथ बनाया गया है।
आप दिए गए समाधान को लागू करके समाधान लागू कर सकते हैं एडब्ल्यूएस CloudFormation आपके AWS खाते में टेम्पलेट. AWS CloudFormation तैनाती को संभालता है AWS लाम्बा ऐसे फ़ंक्शन जो एनोटेशन उपयोगकर्ता इंटरफ़ेस के लिए पूर्व-एनोटेशन और एनोटेशन समेकन का समर्थन करते हैं। यह एक भी बनाता है अमेज़न सरल भंडारण सेवा (अमेज़ॅन S3) बाल्टी और AWS पहचान और अभिगम प्रबंधन लेबलिंग कार्य बनाते समय उपयोग की जाने वाली (IAM) भूमिकाएँ।
यह पोस्ट आपको निम्नलिखित कार्य करने का तरीका बताती है:
- अपना खुद का प्रश्न उत्तर डेटासेट बनाएं, या ग्राउंड ट्रुथ का उपयोग करके मौजूदा डेटासेट को बढ़ाएं
- टेक्स्ट को संयोजित और टोकनाइज़ करने के लिए हगिंग फेस डेटासेट का उपयोग करें
- सेजमेकर प्रशिक्षण का उपयोग करके अपने प्रश्न उत्तर डेटा पर एक BERT मॉडल को फाइन-ट्यून करें
- अपने मॉडल को सेजमेकर एंडपॉइंट पर तैनात करें और अपने परिणामों की कल्पना करें
एनोटेशन यूजर इंटरफ़ेस
हम एक नया उपयोग करते हैं कस्टम वर्कर कार्य टेम्पलेट मौजूदा SQuAD डेटासेट में नए एनोटेशन जोड़ने के लिए ग्राउंड ट्रुथ के साथ। यह समाधान एक वर्कर टास्क टेम्प्लेट के साथ-साथ एक प्री-एनोटेशन लैम्ब्डा फ़ंक्शन (जो उपयोगकर्ता इंटरफ़ेस में डेटा डालने का काम संभालता है) और पोस्ट-एनोटेशन लैम्ब्डा फ़ंक्शन (जो लेबलिंग पूरा होने के बाद उपयोगकर्ता इंटरफ़ेस से परिणाम निकालता है) प्रदान करता है।
यह कस्टम वर्कर कार्य टेम्पलेट आपको दाएं फलक में टेक्स्ट को हाइलाइट करने की क्षमता देता है, फिर बाएं फलक में एक संबंधित प्रश्न जोड़ें जो हाइलाइट किए गए टेक्स्ट से संबंधित हो। दाएँ फलक पर हाइलाइट किया गया टेक्स्ट पहले से बनाए गए किसी भी प्रश्न में भी जोड़ा जा सकता है। इसके अलावा, आप इसके अनुसार असंभव प्रश्न भी जोड़ सकते हैं दस्ते 2.0 प्रारूप। असंभव प्रश्न मॉडलों को अविश्वसनीय झूठे सकारात्मक अनुमानों की संख्या को कम करने की अनुमति देते हैं जब अनुच्छेद किसी प्रश्न का उत्तर देने में असमर्थ होता है।
यह उपयोगकर्ता इंटरफ़ेस SQuAD 2.0 डेटासेट के समान JSON स्कीमा का उपयोग करता है, जिसका अर्थ है कि यह कई लेखों और पैराग्राफों पर काम कर सकता है, एक समय में एक पैराग्राफ का उपयोग करके प्रदर्शित कर सकता है। पूर्व और अगला बटन। उपयोगकर्ता इंटरफ़ेस उस लेबलिंग कार्य की निगरानी करना और निर्धारित करना आसान बनाता है जिसे प्रत्येक एनोटेटर को कार्य सबमिशन चरण के दौरान पूरा करने की आवश्यकता होती है।
क्योंकि एनोटेशन यूआई एक ही में समाहित है तरल HTML फ़ाइल, आप बुनियादी जावास्क्रिप्ट के ज्ञान के साथ लेबलिंग अनुभव को अनुकूलित कर सकते हैं। आप संशोधित भी कर सकते हैं तरल टैग लेबलिंग यूआई में अतिरिक्त जानकारी भेजने के लिए, और आप अधिक विस्तृत कार्यकर्ता निर्देशों को शामिल करने के लिए टेम्पलेट को ही संशोधित कर सकते हैं।
अनुमानित लागत
इस समाधान को तैनात करने में मानव लेबलिंग लागत को छोड़कर, लगभग $20 की अधिकतम लागत आ सकती है। Amazon S3, Lambda, SageMaker, और ग्राउंड ट्रुथ सभी ऑफ़र करते हैं AWS फ्री टियर, अतिरिक्त उपयोग के लिए शुल्क के साथ। अधिक जानकारी के लिए, निम्नलिखित मूल्य निर्धारण पृष्ठ देखें:
- अमेज़न S3 मूल्य निर्धारण
- AWS लैंबडा मूल्य निर्धारण
- अमेज़न SageMaker मूल्य निर्धारण
- अमेज़ॅन सेजमेकर डेटा लेबलिंग मूल्य निर्धारण - यह शुल्क आपके द्वारा उपयोग किए जाने वाले कार्यबल के प्रकार पर निर्भर करता है। यदि आप ग्राउंड ट्रुथ के नए उपयोगकर्ता हैं, तो हम अपने लेबलिंग कार्य कॉन्फ़िगरेशन का परीक्षण करने के लिए एक निजी कार्यबल का उपयोग करने और खुद को एक कार्यकर्ता के रूप में शामिल करने का सुझाव देते हैं।
.. पूर्वापेक्षाएँ
इस समाधान को लागू करने के लिए, आपके पास निम्नलिखित शर्तें होनी चाहिए:
- An AWS खाता.
- जमीनी सच्चाई से परिचय. अधिक जानकारी के लिए देखें डेटा लेबल करने के लिए अमेज़ॅन सेजमेकर ग्राउंड ट्रुथ का उपयोग करें.
- AWS क्लाउडफ़ॉर्मेशन से परिचित होना। अधिक जानकारी के लिए, देखें एडब्ल्यूएस क्लाउडफॉर्मेशन यूजर गाइड.
- एक सेजमेकर कर्मचारियों की संख्या. इस प्रदर्शन के लिए, हम एक निजी कार्यबल का उपयोग करते हैं। आप सेजमेकर कंसोल पर एक कार्यबल बना सकते हैं।
निम्नलिखित GIF दर्शाता है कि निजी कार्यबल कैसे बनाया जाए। निर्देशों के लिए देखें लेबलिंग वर्कफोर्स पेज का उपयोग करके अमेज़ॅन कॉग्निटो वर्कफोर्स बनाएं.
क्लाउडफॉर्मेशन स्टैक लॉन्च करें
अब जब आपने समाधान की संरचना देख ली है, तो आप इसे अपने खाते में तैनात कर दें ताकि आप एक उदाहरण वर्कफ़्लो चला सकें। लेबलिंग पाइपलाइन से संबंधित सभी परिनियोजन चरण AWS क्लाउडफ़ॉर्मेशन द्वारा प्रबंधित किए जाते हैं। इसका मतलब है कि AWS CloudFormation आपके प्री-एनोटेशन और एनोटेशन समेकन लैम्ब्डा फ़ंक्शन, साथ ही इनपुट और आउटपुट डेटा को स्टोर करने के लिए एक S3 बकेट बनाता है।
आप स्टैक को AWS क्षेत्र में लॉन्च कर सकते हैं us-east-1
AWS CloudFormation कंसोल का उपयोग कर स्टैक लॉन्च करें बटन। स्टैक को किसी भिन्न क्षेत्र में लॉन्च करने के लिए, के README में मिले निर्देशों का उपयोग करें गिटहब भंडार.
नोटबुक संचालित करें
आपके खाते में समाधान लागू होने के बाद, एक नोटबुक इंस्टेंस नाम दिया गया है gt-hf-squad-notebook
आपके खाते में उपलब्ध है. नोटबुक का संचालन शुरू करने के लिए, निम्नलिखित चरणों को पूरा करें:
- अमेज़ॅन सेजमेकर कंसोल पर, नोटबुक इंस्टेंस पेज पर जाएँ।
- चुनें जुपिटरलैब खोलें उदाहरण खोलने के लिए.
- उदाहरण के अंदर, रिपॉजिटरी में ब्राउज़ करें
hf-gt-custom-qa
और नोटबुक खोलेंhf_squad_finetuning.ipynb
. - चुनें
conda_pytorch_p38
आपके कर्नेल के रूप में।
अब जब आपने एक नोटबुक इंस्टेंस बना लिया है और नोटबुक खोल लिया है, तो आप समाधान को संचालित करने के लिए नोटबुक में सेल चला सकते हैं। जैसे-जैसे आप आगे बढ़ते हैं, इस पोस्ट का शेष भाग नोटबुक में प्रत्येक अनुभाग के लिए अतिरिक्त विवरण प्रदान करता है।
डेटा डाउनलोड करें और उसका निरीक्षण करें
RSI दस्ते डाटासेट इसमें प्रशिक्षण डेटासेट के साथ-साथ परीक्षण और विकास डेटासेट भी शामिल हैं। नोटबुक आपके लिए SQuAD2.0 डेटासेट डाउनलोड करता है, लेकिन आप नोटबुक सेल को संशोधित करके यह चुन सकते हैं कि SQuAD का कौन सा संस्करण उपयोग करना है डेटा डाउनलोड करें और उसका निरीक्षण करें.
SQuAD का निर्माण प्रणव राजपुरकर, जियान झांग, कॉन्स्टेंटिन लोप्प्रेव और पर्सी लियांग द्वारा किया गया था। अधिक जानकारी के लिए, देखें मूल पेपर और डाटासेट. SQuAD को इसके तहत लेखकों द्वारा लाइसेंस दिया गया है क्रिएटिव कॉमन्स एट्रिब्यूशन-शेयरअलाइक 4.0 इंटरनेशनल पब्लिक लाइसेंस.
आइए SQuAD से एक उदाहरण प्रश्न और उत्तर जोड़ी देखें:
अनुच्छेद शीर्षक: प्रतिरक्षा_प्रणाली
प्रतिरक्षा प्रणाली एक जीव के भीतर कई जैविक संरचनाओं और प्रक्रियाओं की एक प्रणाली है जो बीमारी से बचाती है। ठीक से काम करने के लिए, एक प्रतिरक्षा प्रणाली को वायरस से लेकर परजीवी कीड़े तक विभिन्न प्रकार के एजेंटों का पता लगाना चाहिए, जिन्हें रोगज़नक़ के रूप में जाना जाता है, और उन्हें जीव के स्वयं के स्वस्थ ऊतकों से अलग करना चाहिए। कई प्रजातियों में, प्रतिरक्षा प्रणाली को उप-प्रणालियों में वर्गीकृत किया जा सकता है, जैसे जन्मजात प्रतिरक्षा प्रणाली बनाम अनुकूली प्रतिरक्षा प्रणाली, या हास्य प्रतिरक्षा बनाम कोशिका-मध्यस्थ प्रतिरक्षा। मनुष्यों में, रक्त-मस्तिष्क बाधा, रक्त-मस्तिष्कमेरु द्रव बाधा, और समान तरल-मस्तिष्क बाधाएं परिधीय प्रतिरक्षा प्रणाली को न्यूरोइम्यून प्रणाली से अलग करती हैं जो मस्तिष्क की रक्षा करती हैं।
प्रश्न: प्रतिरक्षा प्रणाली जीवों को किससे बचाती है?
उत्तर: रोग
मॉडल लोड करें
अब जब आपने SQuAD में एक उदाहरण प्रश्न और उत्तर युग्म देख लिया है, तो आप एक मॉडल डाउनलोड कर सकते हैं जिसे आप प्रश्न उत्तर के लिए ठीक कर सकते हैं। हगिंग फेस आपको आसानी से एक बेस मॉडल डाउनलोड करने की अनुमति देता है जो बड़े पैमाने पर पूर्व-प्रशिक्षण से गुजर चुका है और इसे एक अलग डाउनस्ट्रीम कार्य के लिए पुन: प्रारंभ करता है। इस स्थिति में, आप डाउनलोड करें distilbert-base-uncased
मॉडल बनाएं और इसका उपयोग करके प्रश्न उत्तर देने के लिए इसका पुन: उपयोग करें AutoModelForQuestionAnswering
हगिंग फेस से कक्षा। आप भी इसका उपयोग करें AutoTokenizer
मॉडल के पूर्व-प्रशिक्षित टोकननाइज़र को पुनः प्राप्त करने के लिए क्लास। हम उस मॉडल के बारे में गहराई से विचार करते हैं जिसका उपयोग हम बाद में पोस्ट में करेंगे।
BERT इनपुट देखें
BERT के लिए आपको टेक्स्ट डेटा को एक संख्यात्मक प्रतिनिधित्व में बदलने की आवश्यकता होती है जिसे कहा जाता है टोकन. विभिन्न प्रकार के टोकनाइज़र उपलब्ध हैं; निम्नलिखित टोकन विशेष रूप से BERT के लिए डिज़ाइन किए गए एक टोकननाइज़र द्वारा बनाए गए थे जिन्हें आप एक सेट शब्दावली के साथ इंस्टेंट करते हैं। प्रत्येक टोकन शब्दावली में एक शब्द को दर्शाता है। आइए परिवर्तित प्रतिरक्षा प्रणाली प्रश्न और संदर्भ को देखें जिसे आप अनुमान के लिए BERT प्रदान करते हैं।
मॉडल अनुमान
अब जब आपने देख लिया है कि BERT इनपुट के रूप में क्या लेता है, तो आइए देखें कि आप मॉडल से अनुमान परिणाम कैसे प्राप्त कर सकते हैं। निम्नलिखित कोड दर्शाता है कि पहले जेनरेट किए गए टोकनयुक्त इनपुट का उपयोग कैसे करें और मॉडल से अनुमान परिणाम कैसे लौटाएं। जिस प्रकार BERT कच्चे पाठ को इनपुट के रूप में स्वीकार नहीं कर सकता, उसी प्रकार यह कच्चे पाठ को आउटपुट के रूप में भी उत्पन्न नहीं करता है। आप पैराग्राफ में आरंभ और अंत बिंदुओं की पहचान करके बीईआरटी के आउटपुट का अनुवाद करते हैं जिसे बीईआरटी ने उत्तर के रूप में पहचाना है। फिर आप उस आउटपुट को हमारे टोकन पर मैप करें और वापस अंग्रेजी टेक्स्ट पर मैप करें।
अनुवादित परिणाम इस प्रकार हैं:
प्रश्न: प्रतिरक्षा प्रणाली जीवों को किससे बचाती है?
उत्तर: रोग
स्क्वैड को संवर्धित करें
इसके बाद, अतिरिक्त लेबल डेटा प्राप्त करने के लिए, हम a का उपयोग करते हैं कस्टम वर्कर कार्य टेम्पलेट जमीनी सच्चाई में. हम सबसे पहले SQuAD प्रारूप में एक नया लेख बना सकते हैं। नोटबुक इस फ़ाइल को रेपो से अमेज़ॅन S3 पर कॉपी करता है, लेकिन चलाने से पहले कोई भी संपादन करने में संकोच न करें स्क्वैड को संवर्धित करें कक्ष। SQuAD का प्रारूप निम्नलिखित कोड में दिखाया गया है। प्रत्येक SQuAD JSON फ़ाइल में एकाधिक लेख संग्रहीत होते हैं data
चाबी। प्रत्येक लेख में एक है title
फ़ील्ड और एक या अधिक पैराग्राफ़. इन अनुच्छेदों में पाठ के खंड होते हैं जिन्हें कहा जाता है context
और इससे संबंधित कोई भी प्रश्न qas
सूची। क्योंकि हम शुरुआत से व्याख्या कर रहे हैं, हम इसे छोड़ सकते हैं qas
सूची खाली है और केवल संदर्भ प्रदान करें। उपयोगकर्ता इंटरफ़ेस पैराग्राफ और आलेख दोनों में लूप करने में सक्षम है, जिससे आप प्रत्येक कार्यकर्ता के कार्य को इच्छानुसार बड़ा या छोटा बना सकते हैं।
एक नमूना SQuAD डेटा फ़ाइल तैयार करने के बाद, हमें एक ग्राउंड ट्रुथ बनाने की आवश्यकता है संवर्धित मेनिफेस्ट फ़ाइल यह हमारे इनपुट डेटा को संदर्भित करता है। हम "के साथ एक JSON लाइन-स्वरूपित फ़ाइल तैयार करके ऐसा करते हैंsource
अमेज़ॅन S3 में उस स्थान के अनुरूप कुंजी जहां हमने अपना इनपुट SQuAD डेटा संग्रहीत किया है:
एक्सेस लेबलिंग पोर्टल
ग्राउंड ट्रुथ पर जॉब भेजने के बाद, आप ग्राउंड ट्रुथ कंसोल पर उत्पन्न लेबलिंग जॉब देख सकते हैं।
लेबलिंग करने के लिए, आपको आवश्यक चरणों के एक भाग के रूप में बनाए गए कर्मचारी पोर्टल खाते में लॉग इन करना होगा। प्री-प्रोसेसिंग के कुछ मिनटों के बाद आपकी नौकरी वर्कर पोर्टल पर उपलब्ध हो जाती है। कार्य खोलने के बाद, आपको Q&A एनोटेशन के लिए कस्टम वर्कर टेम्पलेट प्रस्तुत किया जाएगा। आप संदर्भ में पाठ के अनुभागों को हाइलाइट करके, फिर चुनकर प्रश्न जोड़ सकते हैं प्रश्न जोड़ें.
लेबलिंग कार्य की स्थिति जांचें
सबमिट करने के बाद आप इसे चला सकते हैं लेबलिंग कार्य की स्थिति जांचें यह देखने के लिए सेल करें कि आपका लेबलिंग कार्य पूरा हो गया है या नहीं। आगे की कोशिकाओं पर जाने से पहले पूरा होने की प्रतीक्षा करें।
लेबल किया गया डेटा लोड करें
लेबलिंग के बाद, आउटपुट मेनिफेस्ट में आपके लेबल विशेषता नाम के साथ एक प्रविष्टि होती है (इस मामले में)। squad-1626282229
) जिसमें S3 URI से SQuAD-स्वरूपित डेटा शामिल है जिसे आप प्रशिक्षण के दौरान उपयोग कर सकते हैं। निम्नलिखित आउटपुट मेनिफेस्ट सामग्री देखें:
मैनिफ़ेस्ट की प्रत्येक पंक्ति एकल कार्यकर्ता कार्य से मेल खाती है।
SQuAD ट्रेन सेट लोड करें
हगिंग फेस में एक है डेटासेट पैकेज जो आपको SQuAD को डाउनलोड करने और प्रीप्रोसेस करने की क्षमता प्रदान करता है, लेकिन हमारे कस्टम प्रश्न और उत्तर जोड़ने के लिए, हमें थोड़ी प्रोसेसिंग करने की आवश्यकता है। SQuAD विषयों के सेट के आसपास संरचित है। प्रत्येक विषय में विभिन्न संदर्भ कथन होते हैं और प्रत्येक संदर्भ कथन में प्रश्न और उत्तर जोड़े होते हैं। क्योंकि हम प्रशिक्षण के लिए अपने स्वयं के प्रश्न बनाना चाहते हैं, हमें अपने प्रश्नों को SQuAD के साथ संयोजित करने की आवश्यकता है। हमारे लिए सौभाग्य से, हमारे एनोटेशन पहले से ही SQuAD प्रारूप में हैं, इसलिए हम अपने उदाहरण लेबल ले सकते हैं और उन्हें मौजूदा SQuAD डेटा में एक नए विषय के रूप में जोड़ सकते हैं।
हगिंग फेस डेटासेट ऑब्जेक्ट बनाएं
अपने डेटा को हगिंग फेस के डेटासेट प्रारूप में लाने के लिए, हमारे पास कई विकल्प हैं। हम इसका उपयोग कर सकते हैं लोड_डेटासेट विकल्प, जिस स्थिति में हम एक CSV, JSON, या टेक्स्ट फ़ाइल की आपूर्ति कर सकते हैं जिसे डेटासेट ऑब्जेक्ट के रूप में लोड किया गया है। आप भी सप्लाई कर सकते हैं load_dataset
अपनी फ़ाइल को वांछित प्रारूप में परिवर्तित करने के लिए एक प्रोसेसिंग स्क्रिप्ट के साथ। इस पोस्ट के लिए, हम इसके बजाय का उपयोग करते हैं Dataset.from_dict()
विधि, जो हमें डेटासेट ऑब्जेक्ट बनाने के लिए इन-मेमोरी डिक्शनरी प्रदान करने की अनुमति देती है। हम अपनी डेटासेट सुविधाओं को भी परिभाषित करते हैं। हम उपयोग करके सुविधाओं को देख सकते हैं हगिंग फेस का डेटासेट व्यूअर, जैसा कि निम्नलिखित स्क्रीनशॉट में दिखाया गया है।
हमारी विशेषताएं इस प्रकार हैं:
- ID - पाठ की आईडी
- शीर्षक - विषय के लिए संबद्ध शीर्षक
- प्रसंग - उत्तर खोजने के लिए मॉडल को संदर्भ कथन खोजना होगा
- प्रश्न - मॉडल से जो सवाल पूछा जा रहा है
- जवाब - स्वीकृत उत्तर पाठ और संदर्भ कथन में स्थान
हगिंग फेस डेटासेट हमें आसानी से इस स्कीमा को परिभाषित करने की अनुमति देते हैं:
अपना डेटासेट ऑब्जेक्ट बनाने के बाद, हमें यह करना होगा tokenize टेक्स्ट। क्योंकि मॉडल कच्चे पाठ को इनपुट के रूप में स्वीकार नहीं कर सकते हैं, हमें अपने पाठ को एक संख्यात्मक इनपुट में परिवर्तित करने की आवश्यकता है जिसे वह समझ सके, अन्यथा इसे कहा जाता है tokenization. टोकनाइजेशन मॉडल विशिष्ट है, तो आइए उस मॉडल को समझें जिसे हम ठीक करने जा रहे हैं। हम एक का उपयोग कर रहे हैं डिस्टिलबर्ट-बेस-अनकेस्ड नमूना। यह BERT के समान दिखता है: यह इनपुट एम्बेडिंग, मल्टी-हेड अटेंशन का उपयोग करता है (इस ऑपरेशन के बारे में अधिक जानकारी के लिए, देखें) इलस्ट्रेटेड ट्रांसफार्मर), और आगे की परतों को फ़ीड करें, लेकिन इसमें मूल BERT बेस मॉडल के आधे पैरामीटर हैं। निम्नलिखित प्रारंभिक मॉडल परतें देखें:
आइए मॉडल के शीर्षक के प्रत्येक घटक का विश्लेषण करें। नाम distilbert
इस तथ्य को दर्शाता है कि यह BERT बेस मॉडल का एक आसुत संस्करण है, जिसे एक प्रक्रिया के माध्यम से प्राप्त किया जाता है ज्ञान आसवन. ज्ञान आसवन हमें न केवल प्रशिक्षण डेटा पर एक छोटे छात्र मॉडल को प्रशिक्षित करने की अनुमति देता है, बल्कि एक बड़े पूर्व-प्रशिक्षित शिक्षक मॉडल से उसी प्रशिक्षण सेट की प्रतिक्रियाओं को भी प्रशिक्षित करता है। base
मॉडल के आकार को संदर्भित करता है, इस मामले में मॉडल को BERT बेस मॉडल (BERT बड़े मॉडल के विपरीत) से डिस्टिल्ड किया गया था। uncased
उस पाठ को संदर्भित करता है जिस पर इसे प्रशिक्षित किया गया था। इस मामले में पाठ में मामले का उल्लेख नहीं था; जिस सभी पाठ पर इसे प्रशिक्षित किया गया था वह लोअरकेस था। uncased
पहलू सीधे तौर पर हमारे पाठ को टोकनाइज़ करने के तरीके को प्रभावित करता है। शुक्र है, ट्रांसफॉर्मर मॉडल डाउनलोड करने की आसान पहुंच प्रदान करने के अलावा, हगिंग फेस मॉडल के साथ टोकननाइज़र भी प्रदान करता है। हमने अपने लिए एक अनुकूलित टोकनाइज़र भी डाउनलोड किया distilbert-base-uncased model
जिसका उपयोग अब हम अपने पाठ को रूपांतरित करने के लिए करते हैं:
डेटासेट क्लास की एक अन्य विशेषता यह है कि यह हमें इसके मैप फ़ंक्शन के समानांतर प्रीप्रोसेसिंग और टोकनाइजेशन चलाने की अनुमति देता है। हम एक प्रोसेसिंग फ़ंक्शन को परिभाषित करते हैं और फिर इसे मैप विधि में पास करते हैं।
प्रश्न का उत्तर देने के लिए, हगिंग फेस को कई घटकों की आवश्यकता होती है (जिन्हें इसमें भी परिभाषित किया गया है)। शब्दकोष):
- ध्यान मुखौटा - मॉडल को इंगित करने वाला एक मुखौटा, जिस पर ध्यान देना है, मुख्य रूप से वास्तविक पाठ और पैडिंग टोकन के बीच अंतर करने के लिए उपयोग किया जाता है
- प्रारंभ_स्थिति – पाठ में उत्तर की आरंभिक स्थिति
- अंत_पद – पाठ में उत्तर की अंतिम स्थिति
- इनपुट_आईडी - टोकन सूचकांक, टोकन को शब्दावली में मैप करते हैं
हमारा टोकननाइज़र टेक्स्ट को टोकनाइज़ करेगा, लेकिन हमें अपने उत्तर की शुरुआत और अंत स्थिति को स्पष्ट रूप से कैप्चर करने की आवश्यकता है, यही कारण है कि हमने एक कस्टम प्रीप्रोसेसिंग फ़ंक्शन को परिभाषित किया है। अब जब हमारे पास हमारे इनपुट तैयार हैं, तो आइए प्रशिक्षण शुरू करें!
प्रशिक्षण कार्य प्रारंभ करें
हम अपनी नोटबुक में प्रशिक्षण चला सकते हैं, लेकिन हमारे Q&A मॉडल को उचित समय में प्रशिक्षित करने के लिए हमें जिस प्रकार के उदाहरणों की आवश्यकता होती है, p3 और p4 उदाहरण, वे काफी शक्तिशाली हैं। नोटबुक चलाने या लगातार चलाने के लिए ये उदाहरण अत्यधिक होते हैं अमेज़ॅन इलास्टिक कम्प्यूट क्लाउड (अमेज़ॅन EC2) उदाहरण। यहीं पर सेजमेकर प्रशिक्षण आता है। सेजमेकर प्रशिक्षण आपको एक निर्दिष्ट उदाहरण या ऐसे उदाहरणों पर प्रशिक्षण कार्य शुरू करने की अनुमति देता है जो केवल प्रशिक्षण कार्य की अवधि के लिए हैं। यह हमें 4 NVIDIA A24 GPU के साथ p8d.100xlarge जैसे बड़े इंस्टेंस पर चलने की अनुमति देता है, लेकिन अगर हम इसे बंद करना भूल जाते हैं तो भारी बिल खर्च होने की चिंता किए बिना। यह हमें अन्य सेजमेकर कार्यात्मकताओं तक आसान पहुंच भी प्रदान करता है, जैसे SageMaker प्रयोग अपने एमएल प्रशिक्षण रन को ट्रैक करने के लिए और सेजमेकर डिबगर अपने प्रशिक्षण कार्यों को समझने और उनकी रूपरेखा तैयार करने के लिए।
स्थानीय प्रशिक्षण
आइए यह समझकर शुरुआत करें कि हगिंग फेस में एक मॉडल का प्रशिक्षण स्थानीय स्तर पर कैसे काम करता है, फिर सेजमेकर में इसे चलाने के लिए हम जो समायोजन करते हैं, उन पर गौर करें।
हगिंग फेस अपने प्रशिक्षक वर्ग के उपयोग के माध्यम से प्रशिक्षण को आसान बनाता है। ट्रेनर वर्ग हमें अपने मॉडल, हमारी ट्रेन और सत्यापन डेटासेट, हमारे हाइपरपैरामीटर और यहां तक कि हमारे टोकननाइज़र को पास करने की अनुमति देता है। क्योंकि हमारे पास पहले से ही हमारे मॉडल के साथ-साथ हमारे प्रशिक्षण और सत्यापन सेट हैं, हमें केवल अपने हाइपरपैरामीटर को परिभाषित करने की आवश्यकता है। हम इसके माध्यम से ऐसा कर सकते हैं TrainingArguments
कक्षा। यह हमें सीखने की दर, बैच आकार, युगों की संख्या और वजन घटाने या सीखने की दर शेड्यूलिंग रणनीति जैसे अधिक गहन मापदंडों जैसी चीजों को निर्दिष्ट करने की अनुमति देता है। हम अपना परिभाषित करने के बाद TrainingArguments
, हम अपने प्रशिक्षक वर्ग को त्वरित करने के लिए अपने मॉडल, प्रशिक्षण सेट, सत्यापन सेट और तर्कों को पारित कर सकते हैं। तब हम बस कॉल कर सकते हैं trainer.train()
हमारे मॉडल का प्रशिक्षण शुरू करने के लिए। निम्नलिखित कोड ब्लॉक दर्शाता है कि स्थानीय प्रशिक्षण कैसे चलाया जाए:
S3 पर डेटा भेजें
सेजमेकर प्रशिक्षण में वही काम करना सीधा है। पहला कदम हमारे डेटा को Amazon S3 में डाल रहा है ताकि हमारा मॉडल उस तक पहुंच सके। सेजमेकर प्रशिक्षण आपको डेटा स्रोत निर्दिष्ट करने की अनुमति देता है; आप Amazon S3 जैसे स्रोतों का उपयोग कर सकते हैं, अमेज़ॅन इलास्टिक फ़ाइल सिस्टम (अमेज़ॅन ईएफएस), या चमक के लिए अमेज़न FSx उच्च-प्रदर्शन डेटा अंतर्ग्रहण के लिए। हमारे मामले में, हमारा संवर्धित SQuAD डेटासेट विशेष रूप से बड़ा नहीं है, इसलिए Amazon S3 एक अच्छा विकल्प है। हम अपने प्रशिक्षण डेटा को अमेज़ॅन एस3 में एक फ़ोल्डर में अपलोड करते हैं और जब सेजमेकर हमारे प्रशिक्षण उदाहरण को स्पिन करता है, तो यह हमारे निर्दिष्ट स्थान से डेटा डाउनलोड करता है।
मॉडल को इंस्टेंट करें
अपना प्रशिक्षण कार्य शुरू करने के लिए, हम इसमें अंतर्निहित हगिंग फेस अनुमानक का उपयोग कर सकते हैं सेजमेकर एसडीके. सेजमेकर प्रशिक्षण कार्य के लिए मापदंडों के साथ-साथ प्रशिक्षण के लिए उपयोग किए जाने वाले उदाहरणों की संख्या और प्रकार को परिभाषित करने के लिए अनुमानक वर्ग का उपयोग करता है। सेजमेकर प्रशिक्षण डॉकर कंटेनरों के उपयोग के आधार पर बनाया गया है। आप सेजमेकर में डिफ़ॉल्ट कंटेनरों का उपयोग कर सकते हैं या प्रशिक्षण के लिए अपने स्वयं के कस्टम कंटेनर की आपूर्ति कर सकते हैं। हगिंग फेस मॉडल के मामले में, सेजमेकर के पास हगिंग फेस प्रशिक्षण कार्य चलाने के लिए आवश्यक सभी निर्भरताओं के साथ अंतर्निहित हगिंग फेस कंटेनर हैं। हमें बस अपनी प्रशिक्षण स्क्रिप्ट को परिभाषित करने की आवश्यकता है, जिसे हमारा हगिंग फेस कंटेनर अपने प्रवेश बिंदु के रूप में उपयोग करता है।
इस प्रशिक्षण स्क्रिप्ट में, हम अपने तर्कों को परिभाषित करते हैं, जिन्हें हम हाइपरपैरामीटर के सेट के साथ-साथ अपने प्रशिक्षण कोड के रूप में अपने प्रवेश बिंदु पर भेजते हैं। हमारा प्रशिक्षण कोड वैसा ही है जैसे कि हम इसे स्थानीय स्तर पर चला रहे हों; हम बस इसका उपयोग कर सकते हैं TrainingArguments
और फिर उन्हें एक ट्रेनर ऑब्जेक्ट में पास करें। एकमात्र अंतर यह है कि हमें अपने मॉडल के लिए आउटपुट स्थान निर्दिष्ट करने की आवश्यकता है /opt/ml/model
ताकि सेजमेकर प्रशिक्षण इसे ले सके, इसे पैकेज कर सके और इसे अमेज़ॅन एस3 पर भेज सके। निम्नलिखित कोड ब्लॉक दिखाता है कि हमारे हगिंग फेस अनुमानक को कैसे चालू किया जाए:
मॉडल को फाइन-ट्यून करें
अपने विशिष्ट प्रशिक्षण कार्य के लिए, हम 3.8 V4 GPU से युक्त एक p100xlarge उदाहरण का उपयोग करते हैं। ट्रेनर क्लास स्वचालित रूप से मल्टी-जीपीयू इंस्टेंसेस पर प्रशिक्षण का समर्थन करता है, इसलिए हमें इसके लिए किसी अतिरिक्त सेटअप की आवश्यकता नहीं है। हम अपने मॉडल को दो युगों के लिए प्रशिक्षित करते हैं, जिसमें 16 का बैच आकार और 4e5 की सीखने की दर होती है। हम मिश्रित परिशुद्धता प्रशिक्षण भी सक्षम कर रहे हैं, जो उन क्षेत्रों में मिश्रित परिशुद्धता का उपयोग करता है जहां हम अपने मॉडल की सटीकता को प्रभावित किए बिना संख्यात्मक परिशुद्धता को कम कर सकते हैं। इससे हमारी उपलब्ध स्मृति और प्रशिक्षण गति बढ़ जाती है। प्रशिक्षण कार्य शुरू करने के लिए, हम कॉल करते हैं fit
हमारी ओर से विधि huggingface_estimator
वर्ग.
जब हमारे मॉडल का प्रशिक्षण पूरा हो जाता है, तो हम मॉडल को स्थानीय रूप से डाउनलोड कर सकते हैं और इसका परीक्षण करने के लिए इसे अपनी नोटबुक की मेमोरी में लोड कर सकते हैं, जिसे नोटबुक में प्रदर्शित किया गया है। हम एक अन्य विकल्प पर ध्यान केंद्रित करेंगे, इसे सेजमेकर एंडपॉइंट के रूप में तैनात करेंगे!
प्रशिक्षित मॉडल तैनात करें
प्रशिक्षण के लिए उपयोगिताएँ प्रदान करने के अलावा, सेजमेकर डेटा वैज्ञानिकों और एमएल इंजीनियरों को अपने प्रशिक्षित मॉडलों के लिए REST एंडपॉइंट को आसानी से तैनात करने की अनुमति भी दे सकता है। आप सेजमेकर में या उसके बाहर प्रशिक्षित मॉडल तैनात कर सकते हैं। अधिक जानकारी के लिए देखें Amazon SageMaker में एक मॉडल परिनियोजित करें.
क्योंकि हमारे मॉडल को सेजमेकर में प्रशिक्षित किया गया था, यह एंडपॉइंट के रूप में तैनात करने के लिए पहले से ही सही प्रारूप में है। प्रशिक्षण के समान, हम एक सेजमेकर मॉडल वर्ग को परिभाषित करते हैं जो मॉडल, सर्विंग कोड और उन उदाहरणों की संख्या और प्रकार को परिभाषित करता है जिन्हें हम एंडपॉइंट के रूप में तैनात करना चाहते हैं। प्रशिक्षण के समान, सेवा डॉकर कंटेनरों पर आधारित है, और हम अंतर्निहित सेजमेकर कंटेनरों में से किसी एक का उपयोग कर सकते हैं या अपनी आपूर्ति कर सकते हैं। इस पोस्ट के लिए, हम एक अंतर्निहित PyTorch सर्विंग कंटेनर का उपयोग करते हैं, इसलिए हमें अपने एंडपॉइंट को चालू करने और चलाने के लिए बस कुछ चीजों को परिभाषित करने की आवश्यकता है। हमारे सर्विंग कोड को चार कार्यों की आवश्यकता है:
- मॉडल_एफएन - परिभाषित करता है कि एंडपॉइंट मॉडल को कैसे लोड करता है (यह केवल एक बार ऐसा करता है, और फिर इसे बाद की भविष्यवाणियों के लिए मेमोरी में रखता है)
- इनपुट_एफएन - यह परिभाषित करता है कि इनपुट को डीसेरिएलाइज़ और संसाधित कैसे किया जाता है
- भविष्यवाणी_fn - परिभाषित करता है कि हमारा मॉडल हमारे इनपुट पर कैसे पूर्वानुमान लगाता है
- आउटपुट_एफएन - परिभाषित करता है कि एंडपॉइंट कैसे प्रारूपित करता है और अनुरोध करने वाले क्लाइंट को आउटपुट डेटा वापस भेजता है
इन कार्यों को परिभाषित करने के बाद, हम अपने समापन बिंदु को तैनात कर सकते हैं और इसे संदर्भ कथन और प्रश्न पास कर सकते हैं और इसका अनुमानित उत्तर लौटा सकते हैं:
मॉडल परिणामों को विज़ुअलाइज़ करें
क्योंकि हमने एक सेजमेकर एंडपॉइंट तैनात किया है जो हमें संदर्भ विवरण भेजने और उत्तर प्राप्त करने की अनुमति देता है, हम वापस जा सकते हैं और मूल SQuAD व्यूअर के भीतर परिणामी निष्कर्षों की कल्पना कर सकते हैं ताकि बेहतर ढंग से कल्पना की जा सके कि हमारे मॉडल को अनुच्छेद संदर्भ में क्या मिला। हम अनुमान के परिणामों को वापस SQuAD प्रारूप में पुन: स्वरूपित करके, फिर वर्कर टेम्पलेट में लिक्विड टैग को SQuAD-स्वरूपित JSON के साथ प्रतिस्थापित करके ऐसा करते हैं। फिर हम एक ही नोटबुक के संदर्भ में परिणामों की पुनरावृत्तीय समीक्षा करने के लिए अपने वर्कर टेम्पलेट के अंदर परिणामी यूआई को आईफ्रेम कर सकते हैं, जैसा कि निम्नलिखित स्क्रीनशॉट में दिखाया गया है। क्वेरी से मेल खाने वाले दाईं ओर के टेक्स्ट के विस्तार को हाइलाइट करने के लिए बाईं ओर के प्रत्येक प्रश्न पर क्लिक किया जा सकता है। कोई भी प्रश्न चयनित न होने पर, सभी पाठ विस्तार दाईं ओर हाइलाइट किए गए हैं जैसा कि नीचे दिखाया गया है।
क्लीन अप
भविष्य के शुल्कों से बचने के लिए, चलाएँ क्लीन अप सेजमेकर एंडपॉइंट्स, कच्चे और संसाधित डेटासेट वाले एस3 ऑब्जेक्ट्स और क्लाउडफॉर्मेशन स्टैक सहित सभी संसाधनों को हटाने के लिए नोटबुक का अनुभाग। जब विलोपन पूरा हो जाए, तो उस नोटबुक इंस्टेंस को रोकना और हटाना सुनिश्चित करें जो वर्तमान नोटबुक स्क्रिप्ट को होस्ट कर रहा है।
निष्कर्ष
इस पोस्ट में, आपने सीखा कि ग्राउंड ट्रुथ का उपयोग करके अपना स्वयं का प्रश्न उत्तर डेटासेट कैसे बनाएं और इसे SQuAD के साथ जोड़कर SageMaker का उपयोग करके अपने स्वयं के प्रश्न उत्तर मॉडल को प्रशिक्षित और तैनात करें। नोटबुक पूरा करने के बाद, आपके पास एक तैनात सेजमेकर एंडपॉइंट है जिसे आपके कस्टम प्रश्नोत्तर डेटासेट पर प्रशिक्षित किया गया था। यह एंडपॉइंट आपके उत्पादन एनएलयू वर्कफ़्लो में एकीकरण के लिए तैयार है, क्योंकि सेजमेकर एंडपॉइंट मानक REST API के माध्यम से उपलब्ध हैं। आपके पास SQuAD 2.0 प्रारूप में एक एनोटेटेड कस्टम डेटासेट भी है, जो आपको अपने मौजूदा मॉडल को फिर से प्रशिक्षित करने या अन्य प्रश्न उत्तर देने वाले मॉडल आर्किटेक्चर को प्रशिक्षित करने का प्रयास करने की अनुमति देता है। अंत में, आपके पास अपने स्थानीय नोटबुक में वर्कर टेम्पलेट लोड करके अपने अनुमान से परिणामों को तुरंत देखने के लिए एक तंत्र है।
कोशिश करें किताब, इसे अपने स्वयं के प्रश्नों के साथ संवर्धित करें, और अपने एनएलयू उपयोग मामलों के लिए अपने स्वयं के कस्टम प्रश्न उत्तर मॉडल को प्रशिक्षित और तैनात करें!
हैप्पी बिल्डिंग!
लेखक के बारे में
जेरेमी फेल्टरको अमेज़ॅन वेब सर्विसेज में अमेज़न एमएल सॉल्यूशंस लैब के साथ एक सॉफ्टवेयर डेवलपमेंट इंजीनियर है। वह कंप्यूटर पृष्ठभूमि, रोबोटिक्स और मशीन लर्निंग में अपनी पृष्ठभूमि का उपयोग करता है, जिससे AWS ग्राहकों को अपने AI गोद लेने में तेजी लाने में मदद मिलती है।
विद्या सागर रविपति में Manager है अमेज़न एमएल सॉल्यूशंस लैब, जहां वह बड़े पैमाने पर वितरित प्रणालियों में अपने विशाल अनुभव का लाभ उठाता है और विभिन्न उद्योग कार्यक्षेत्रों में AWS ग्राहकों की मदद करने के लिए मशीन लर्निंग के लिए उनका जुनून उनके AI और क्लाउड अपनाने में तेजी लाता है। पहले, वह अमेज़ॅन में कनेक्टिविटी सर्विसेज में मशीन लर्निंग इंजीनियर थे, जिन्होंने निजीकरण और भविष्य कहनेवाला रखरखाव प्लेटफार्मों का निर्माण करने में मदद की।
इसहाक प्रिविटेरा अमेज़ॅन मशीन लर्निंग सॉल्यूशंस लैब में एक वरिष्ठ डेटा वैज्ञानिक हैं, जहां वह ग्राहकों की व्यावसायिक समस्याओं के समाधान के लिए विशेष मशीन लर्निंग और गहन शिक्षण समाधान विकसित करते हैं। वह मुख्य रूप से कंप्यूटर विज़न क्षेत्र में काम करता है, और वितरित प्रशिक्षण और सक्रिय शिक्षण के साथ AWS ग्राहकों को सक्षम करने पर ध्यान केंद्रित करता है।
- कॉइनस्मार्ट। यूरोप का सर्वश्रेष्ठ बिटकॉइन और क्रिप्टो एक्सचेंज।
- प्लेटोब्लॉकचैन। Web3 मेटावर्स इंटेलिजेंस। ज्ञान प्रवर्धित। नि: शुल्क प्रवेश।
- क्रिप्टोहॉक। Altcoin रडार। मुफ्त परीक्षण।
- स्रोत: https://aws.amazon.com/blogs/machine-learning/build-a-custom-qa-dataset-using-amazon-sagemaker-ground-truth-to-train-a-hugging-face-qa-nlu-model/
- "
- &
- 000
- 10
- 100
- 116
- 28
- 39
- 3d
- 7
- 9
- About
- में तेजी लाने के
- पहुँच
- अनुसार
- लेखा
- लेखांकन
- सही
- के पार
- सक्रिय
- इसके अलावा
- अतिरिक्त
- पता
- दत्तक ग्रहण
- एजेंटों
- AI
- सब
- की अनुमति दे
- पहले ही
- वीरांगना
- अमेज़ॅन वेब सेवा
- राशि
- अन्य
- जवाब
- एपीआई
- स्थापत्य
- क्षेत्र
- तर्क
- चारों ओर
- लेख
- लेख
- सहायक
- ध्यान
- आडिट
- संवर्धित
- लेखकों
- स्वचालित
- स्वचालित
- उपलब्ध
- एडब्ल्यूएस
- पृष्ठभूमि
- अवरोध
- बाधाओं
- शुरू
- जा रहा है
- नीचे
- बिल
- बिट
- खंड
- परिवर्तन
- सीमा
- निर्माण
- में निर्मित
- व्यापार
- कॉल
- पा सकते हैं
- कब्जा
- मामलों
- चुनौती
- चुनौतीपूर्ण
- प्रभार
- चुनें
- कक्षा
- बादल
- कोड
- एकत्रित
- अंग
- गणना करना
- कंप्यूटर
- विन्यास
- कनेक्टिविटी
- कंसोल
- समेकन
- कंटेनर
- कंटेनरों
- शामिल हैं
- अंतर्वस्तु
- ठेकेदारों
- इसी
- लागत
- बनाना
- बनाया
- बनाता है
- बनाना
- वर्तमान
- रिवाज
- ग्राहक
- ग्राहक सहयोग
- ग्राहक
- तिथि
- आँकड़े वाला वैज्ञानिक
- और गहरा
- पहुंचाने
- दिखाना
- साबित
- निर्भर करता है
- तैनात
- तैनात
- तैनाती
- तैनाती
- बनाया गया
- विस्तृत
- विवरण
- निर्धारित करना
- विकास
- विभिन्न
- मुश्किल
- सीधे
- रोग
- वितरित
- डाक में काम करनेवाला मज़दूर
- नहीं करता है
- नीचे
- डाउनलोड
- डाउनलोड
- ड्राइविंग
- दौरान
- आसानी
- समर्थकारी
- endpoint
- इंजीनियर
- इंजीनियर्स
- अंग्रेज़ी
- मूल्यांकन
- उदाहरण
- मौजूदा
- अनुभव
- अर्क
- चेहरा
- Feature
- विशेषताएं
- अंत में
- प्रथम
- फोकस
- ध्यान केंद्रित
- निम्नलिखित
- प्रपत्र
- प्रारूप
- आगे
- पाया
- मुक्त
- समारोह
- आगे
- भविष्य
- उत्पन्न
- सृजन
- पीढ़ी
- GitHub
- जा
- अच्छा
- मदद
- मदद करता है
- उच्च गुणवत्ता
- हाइलाइट
- हाइलाइट
- अत्यधिक
- होस्टिंग
- कैसे
- How To
- HTTPS
- विशाल
- मानव
- मनुष्य
- सैकड़ों
- पहचान करना
- पहचान
- पहचान
- की छवि
- लागू करने के
- कार्यान्वित
- असंभव
- में सुधार
- इंक
- शामिल
- शामिल
- सहित
- तेजी
- उद्योग
- करें-
- इंफ्रास्ट्रक्चर
- निवेश
- एकीकरण
- बुद्धिमान
- ब्याज
- इंटरफेस
- अंतरराष्ट्रीय स्तर पर
- सहज ज्ञान युक्त
- IT
- खुद
- जावास्क्रिप्ट
- काम
- नौकरियां
- कुंजी
- ज्ञान
- जानने वाला
- प्रयोगशाला
- लेबलिंग
- लेबल
- भाषा
- बड़ा
- बड़ा
- लांच
- सीखा
- सीख रहा हूँ
- छोड़ना
- leverages
- लाइसेंस - प्राप्त
- संभावित
- लाइन
- तरल
- सूची
- भार
- लोड हो रहा है
- स्थानीय
- स्थानीय स्तर पर
- स्थान
- मशीन
- यंत्र अधिगम
- बनाता है
- निर्माण
- कामयाब
- प्रबंधक
- नक्शा
- मानचित्रण
- मैप्स
- विपणन (मार्केटिंग)
- मुखौटा
- मिलान
- अर्थ
- साधन
- याद
- मिश्रित
- ML
- आदर्श
- मॉडल
- मॉनिटर
- अधिक
- अधिकांश
- विभिन्न
- प्राकृतिक
- नोटबुक
- संख्या
- प्राप्त
- प्रस्ताव
- ऑफर
- ऑनलाइन
- खुला
- उद्घाटन
- संचालित
- परिचालन
- आपरेशन
- ऑप्टिमाइज़ करें
- के अनुकूलन के
- विकल्प
- ऑप्शंस
- आदेश
- संगठन
- अन्य
- अन्यथा
- अपना
- भाग
- विशेष
- विशेष रूप से
- वेतन
- प्रदर्शन
- निजीकरण
- प्लेटफार्म
- बिन्दु
- अंक
- द्वार
- स्थिति
- सकारात्मक
- शक्तिशाली
- भविष्यवाणी करना
- भविष्यवाणियों
- कीमत निर्धारण
- निजी
- मुसीबत
- समस्याओं
- प्रक्रिया
- प्रक्रियाओं
- प्रसंस्करण
- एस्ट्रो मॉल
- उत्पादन
- उत्पाद
- रूपरेखा
- प्रदान करना
- प्रदान करता है
- प्रदान कर
- सार्वजनिक
- क्यू एंड ए
- गुणवत्ता
- प्रश्न
- जल्दी से
- कच्चा
- पढ़ना
- उचित
- प्राप्त करना
- को कम करने
- कोष
- प्रतिनिधित्व
- उपयुक्त संसाधन चुनें
- बाकी
- परिणाम
- वापसी
- राजस्व
- की समीक्षा
- रोबोटिक्स
- दौर
- रन
- दौड़ना
- अनुमापकता
- वैज्ञानिक
- वैज्ञानिकों
- एसडीके
- Search
- सुरक्षा
- खंड
- विभाजन
- खंड
- चयनित
- सेवाएँ
- सेवारत
- सेट
- व्यवस्था
- कम
- दिखाया
- समान
- सरल
- आकार
- कौशल
- छोटा
- So
- सॉफ्टवेयर
- सॉफ्टवेयर विकास
- ठोस
- समाधान
- समाधान ढूंढे
- कुछ
- अंतरिक्ष
- विशेष
- विशेषीकृत
- विशेष रूप से
- धुआँरा
- मानक
- प्रारंभ
- कथन
- बयान
- भंडारण
- की दुकान
- स्ट्रेटेजी
- संरचित
- छात्र
- सफल
- आपूर्ति
- समर्थन
- समर्थन करता है
- प्रणाली
- सिस्टम
- कार्य
- परीक्षण
- यहाँ
- पहर
- बहुत समय लगेगा
- शीर्षक
- टोकन
- tokenization
- tokenized
- टोकन
- विषय
- मशाल
- ट्रैकिंग
- प्रशिक्षण
- बदालना
- प्रकार
- ui
- समझना
- समझ
- us
- उपयोग
- उपयोग
- सत्यापन
- मूल्य
- विविधता
- विक्रेताओं
- सत्यापन
- बनाम
- कार्यक्षेत्र
- वीडियो
- देखें
- वायरस
- दृष्टि
- आवाज़
- प्रतीक्षा
- वेब
- वेब सेवाओं
- क्या
- जब
- कौन
- विकिपीडिया
- अंदर
- बिना
- काम
- श्रमिकों
- कार्यबल
- कार्य
- कीड़े
- साल