अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.

अमेज़ॅन सेजमेकर पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल

आज लगभग 7,000 भाषाएँ उपयोग में हैं। 19वीं शताब्दी के अंत में वोलापुक या एस्पेरान्तो जैसी निर्मित भाषाओं का आविष्कार करने के प्रयासों के बावजूद, एकीकरण का कोई संकेत नहीं है। लोग अभी भी नई भाषाएं बनाना चुनते हैं (अपने पसंदीदा फिल्म चरित्र के बारे में सोचें जो क्लिंगन, दोथराकी या एल्विश बोलता है)।

आज, प्राकृतिक भाषा प्रसंस्करण (एनएलपी) के उदाहरणों में अंग्रेजी भाषा का बोलबाला है, जो मानव आबादी के केवल 5% के लिए मूल भाषा है और केवल 17% बोली जाती है।

RSI डिजिटल डिवाइड डिजिटल तकनीकों तक पहुंच बनाने वालों और नहीं करने वालों के बीच अंतर के रूप में परिभाषित किया गया है। भाषा की बाधाओं के कारण ज्ञान या शिक्षा तक पहुंच की कमी भी डिजिटल विभाजन में योगदान करती है, न केवल अंग्रेजी बोलने वाले लोगों के बीच, बल्कि अंग्रेजी बोलने वाले लोगों के लिए भी, जिनके पास गैर-अंग्रेजी सामग्री तक पहुंच नहीं है, जो विचार और ज्ञान की विविधता को कम करता है। परस्पर सीखने के लिए बहुत कुछ है।

इस पोस्ट में, हम कम-संसाधन वाली भाषाओं की चुनौतियों का सारांश प्रस्तुत करते हैं और अमेज़ॅन सेजमेकर पर हगिंग फेस ट्रांसफॉर्मर का उपयोग करके 100 से अधिक भाषाओं को कवर करने वाले विभिन्न समाधान दृष्टिकोणों के साथ प्रयोग करते हैं।

हम एक प्रश्न और उत्तर कार्य के लिए विभिन्न पूर्व-प्रशिक्षित ट्रांसफॉर्मर-आधारित भाषा मॉडल को फाइन-ट्यून करते हैं। हम अपने उदाहरण में तुर्की का उपयोग करते हैं, लेकिन आप इस दृष्टिकोण को अन्य समर्थित भाषा पर लागू कर सकते हैं। हमारा ध्यान BERT [1] वेरिएंट पर है, क्योंकि BERT की एक बड़ी विशेषता विभिन्न कार्यों में इसकी एकीकृत वास्तुकला है।

हम हगिंग फेस ट्रांसफॉर्मर का उपयोग करने के कई लाभों को प्रदर्शित करते हैं अमेज़न SageMaker, जैसे बड़े पैमाने पर प्रशिक्षण और प्रयोग, और उत्पादकता और लागत-दक्षता में वृद्धि।

एनएलपी का अवलोकन

2017 के बाद से एनएलपी में कई प्रमुख विकास हुए हैं। ट्रांसफॉर्मर जैसे गहन शिक्षण आर्किटेक्चर के उद्भव [2], अत्यधिक बड़े डेटासेट पर ऐसे मॉडलों को प्रशिक्षित करने के लिए अप्रशिक्षित सीखने की तकनीक, और स्थानांतरण सीखने ने राज्य की स्थिति में काफी सुधार किया है- प्राकृतिक भाषा समझ में कला। पूर्व-प्रशिक्षित मॉडल हब के आगमन ने एनएलपी समुदाय के सामूहिक ज्ञान तक पहुंच को और अधिक लोकतांत्रिक बना दिया है, जिससे खरोंच से शुरू करने की आवश्यकता समाप्त हो गई है।

एक भाषा मॉडल एक एनएलपी मॉडल है जो अनुक्रम में अगले शब्द (या किसी नकाबपोश शब्द) की भविष्यवाणी करना सीखता है। प्रारंभिक बिंदु के रूप में भाषा मॉडल की वास्तविक सुंदरता तीन गुना है: सबसे पहले, शोध से पता चला है कि बड़े टेक्स्ट कॉर्पस डेटा पर प्रशिक्षित भाषा मॉडल पिछले तरीकों की तुलना में शब्दों के अधिक जटिल अर्थ सीखते हैं। उदाहरण के लिए, एक वाक्य में अगले शब्द की भविष्यवाणी करने में सक्षम होने के लिए, भाषा मॉडल को संदर्भ, शब्दार्थ और व्याकरण को समझने में अच्छा होना चाहिए। दूसरा, एक भाषा मॉडल को प्रशिक्षित करने के लिए, पूर्व-प्रशिक्षण के दौरान लेबल किए गए डेटा-जो दुर्लभ और महंगा है-की आवश्यकता नहीं है। यह महत्वपूर्ण है क्योंकि वेब पर बहुत सारी भाषाओं में बिना लेबल वाला टेक्स्ट डेटा सार्वजनिक रूप से उपलब्ध है। तीसरा, यह प्रदर्शित किया गया है कि एक बार भाषा मॉडल किसी दिए गए वाक्य के लिए अगले शब्द की भविष्यवाणी करने के लिए पर्याप्त स्मार्ट है, तो अन्य एनएलपी कार्यों जैसे भावना विश्लेषण या बहुत कम लेबल वाले डेटा के साथ प्रश्न का उत्तर देना अपेक्षाकृत आसान है, क्योंकि फ़ाइन-ट्यूनिंग पुन: उपयोग करता है एक पूर्व-प्रशिक्षित भाषा मॉडल [3] से प्रतिनिधित्व।

पूरी तरह से प्रबंधित एनएलपी सेवाओं ने भी एनएलपी को अपनाने में तेजी लाई है। Amazon Comprehend एक पूरी तरह से प्रबंधित सेवा है जो टेक्स्ट एनालिटिक्स को दस्तावेज़ों की सामग्री से अंतर्दृष्टि निकालने में सक्षम बनाती है, और यह विभिन्न भाषाओं का समर्थन करती है। अमेज़ॅन कॉम्प्रिहेंड कस्टम वर्गीकरण और कस्टम इकाई पहचान का समर्थन करता है और आपको कस्टम एनएलपी मॉडल बनाने में सक्षम बनाता है जो आपकी आवश्यकताओं के लिए विशिष्ट हैं, बिना किसी एमएल विशेषज्ञता की आवश्यकता के।

कम संसाधन वाली भाषाओं के लिए चुनौतियाँ और समाधान

बड़ी संख्या में भाषाओं के लिए मुख्य चुनौती यह है कि उनके पास प्रशिक्षण के लिए अपेक्षाकृत कम डेटा उपलब्ध है। इन्हें कहा जाता है कम संसाधन वाली भाषाएं. एम-बीईआरटी पेपर [4] और एक्सएलएम-आर पेपर [7] उर्दू और स्वाहिली को कम संसाधन वाली भाषाओं के रूप में संदर्भित करते हैं।

निम्नलिखित आंकड़ा 80 से अधिक भाषाओं के आईएसओ कोड और दो प्रमुख पूर्व-प्रशिक्षणों के बीच आकार में अंतर (लॉग-स्केल में) निर्दिष्ट करता है [7]। विकिपीडिया (नारंगी) में केवल 18 भाषाएँ हैं जिनमें 1 मिलियन से अधिक लेख हैं और 52 भाषाएँ हैं जिनमें 1,000 से अधिक लेख हैं, लेकिन 164 भाषाओं में केवल 1-10,000 लेख हैं [9]। CommonCrawl corpus (नीला) निम्न-संसाधन वाली भाषाओं के लिए डेटा की मात्रा को परिमाण के दो क्रमों से बढ़ाता है। फिर भी, वे अंग्रेजी, रूसी या जर्मन जैसी उच्च-संसाधन भाषाओं की तुलना में अभी भी अपेक्षाकृत छोटे हैं।

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.

विकिपीडिया लेख संख्या के संदर्भ में, तुर्की 100,000 से अधिक लेखों (28वें) के समूह में उर्दू (54वें) के साथ एक अन्य भाषा है। उर्दू की तुलना में, तुर्की को मध्य-संसाधन भाषा के रूप में माना जाएगा। तुर्की में कुछ दिलचस्प विशेषताएं हैं, जो भाषा विज्ञान और टोकन में कुछ चुनौतियों का निर्माण करके भाषा मॉडल को और अधिक शक्तिशाली बना सकती हैं। यह एक सामूहिक भाषा है। इसमें एक बहुत ही मुक्त शब्द क्रम, एक जटिल आकारिकी, या अंग्रेजी समकक्षों के बिना काल है। अंग्रेजी जैसी भाषाओं में कई शब्दों से बने वाक्यांशों को एक शब्द के रूप में व्यक्त किया जा सकता है, जैसा कि निम्नलिखित उदाहरण में दिखाया गया है।

तुर्की अंग्रेज़ी
बिल्ली बिल्ली
बिल्लीरों बिल्लीs
बिल्लीगिलरों का परिवार बिल्ली की
केडिगिलरदिन से संबंधित बिल्लियों का परिवार
बिल्लीलेस्टिरेबिलेसेक्लेरिमिज़डेनमीसेसिनेकेन जब ऐसा लगता है कि वह एक है जिसे हम बना सकते हैं बिल्ली

दो मुख्य समाधान दृष्टिकोण भाषा-विशिष्ट मॉडल या बहुभाषी मॉडल हैं (क्रॉस-लैंग्वेज पर्यवेक्षण के साथ या बिना):

  • मोनोलिंगुअल भाषा मॉडल - पहला तरीका एक विशिष्ट लक्ष्य भाषा के लिए BERT संस्करण लागू करना है। प्रशिक्षण डेटा जितना अधिक होगा, मॉडल का प्रदर्शन उतना ही बेहतर होगा।
  • बहुभाषी नकाबपोश भाषा मॉडल - दूसरा तरीका कई भाषाओं में बड़े ट्रांसफॉर्मर मॉडल को प्री-ट्रेन करना है। बहुभाषी भाषा मॉडलिंग का उद्देश्य बड़ी संख्या में भाषाओं पर पूर्व-प्रशिक्षण द्वारा कम संसाधन वाली भाषाओं के लिए डेटा चुनौती की कमी को हल करना है ताकि एक भाषा से सीखे गए एनएलपी कार्यों को अन्य भाषाओं में स्थानांतरित किया जा सके। बहुभाषी नकाबपोश भाषा मॉडल (एमएलएम) ने क्रॉस-लिंगुअल समझ कार्यों पर अत्याधुनिक को आगे बढ़ाया है। दो उदाहरण हैं:
    • बहुभाषी बर्ट - बहुभाषी BERT मॉडल को विकिपीडिया कॉर्पस का उपयोग करके 104 विभिन्न भाषाओं में प्रशिक्षित किया गया था। हालांकि, यह दिखाया गया है कि यह केवल समान भाषाई संरचनाओं और टाइपोलॉजिकल विशेषताओं (उदाहरण के लिए, समान शब्द क्रम वाली भाषाएं) में अच्छी तरह से सामान्यीकरण करता है। विशेष रूप से अलग-अलग शब्द क्रम वाली भाषाओं के लिए इसकी बहुभाषा कम हो गई है (उदाहरण के लिए, विषय/वस्तु/क्रिया) [4]।
    • एक्सएलएम-आर - क्रॉस-लिंगुअल लैंग्वेज मॉडल (XLM) को समानांतर डेटासेट (दो अलग-अलग भाषाओं में एक ही टेक्स्ट) का उपयोग करके या मोनोलिंगुअल डेटासेट [6] का उपयोग करके क्रॉस-लिंगुअल उद्देश्य के बिना क्रॉस-लिंगुअल उद्देश्य के साथ प्रशिक्षित किया जाता है। शोध से पता चलता है कि कम-संसाधन वाली भाषाओं को स्केलिंग से अधिक भाषाओं में लाभ होता है। XLM-RoBERta एक ट्रांसफॉर्मर-आधारित मॉडल है जो RoBERTa [5] से प्रेरित है, और इसका प्रारंभिक बिंदु यह प्रस्ताव है कि बहुभाषी BERT और XLM अंडर-ट्यून हैं। यह विकिपीडिया और कॉमनक्रॉल कॉर्पस दोनों का उपयोग करके 100 भाषाओं पर प्रशिक्षित है, इसलिए कम-संसाधन वाली भाषाओं के लिए प्रशिक्षण डेटा की मात्रा m-BERT [7] की तुलना में बड़े परिमाण के लगभग दो क्रम हैं।

कम संसाधन वाली भाषाओं के लिए बहुभाषी भाषा मॉडल की एक और चुनौती शब्दावली का आकार और टोकन है। क्योंकि सभी भाषाएं बहुभाषी भाषा मॉडल में समान साझा शब्दावली का उपयोग करती हैं, शब्दावली के आकार में वृद्धि (जो गणना आवश्यकताओं को बढ़ाता है) बनाम इसे कम करने के बीच एक व्यापार-बंद है (शब्दावली में मौजूद नहीं होने वाले शब्दों को अज्ञात के रूप में चिह्नित किया जाएगा, या वर्णों का उपयोग करना) शब्दों के बजाय टोकन किसी भी संरचना की उपेक्षा करेंगे)। शब्द-टुकड़ा टोकननाइजेशन एल्गोरिदम दोनों दृष्टिकोणों के लाभों को जोड़ता है। उदाहरण के लिए, यह शब्दावली में मौजूद होने तक या व्यक्तिगत चरित्र तक पहुंचने तक शब्द को उप-शब्दों में विभाजित करके आउट-ऑफ-वोकैबुलरी शब्दों को प्रभावी ढंग से संभालता है। चीनी जैसी कुछ भाषाओं को छोड़कर, वर्ण-आधारित टोकननाइज़ेशन बहुत उपयोगी नहीं है। कम-संसाधन वाली भाषाओं के लिए चुनौतियों का समाधान करने के लिए तकनीकें मौजूद हैं, जैसे कि कुछ वितरणों के साथ नमूनाकरण [6]।

निम्न तालिका दर्शाती है कि "केडिलेरी" (जिसका अर्थ है "इसकी बिल्लियाँ") शब्द के लिए तीन अलग-अलग टोकन कैसे व्यवहार करते हैं। कुछ भाषाओं और एनएलपी कार्यों के लिए, इससे फर्क पड़ेगा। उदाहरण के लिए, प्रश्न का उत्तर देने वाले कार्य के लिए, मॉडल प्रारंभ टोकन अनुक्रमणिका और अंत टोकन अनुक्रमणिका की अवधि लौटाता है; "केडिलर" ("बिल्लियाँ") या "केडिलेरी" ("इसकी बिल्लियाँ") लौटने से कुछ संदर्भ खो जाएगा और कुछ मीट्रिक के लिए अलग-अलग मूल्यांकन परिणाम प्राप्त होंगे।

पूर्व प्रशिक्षित मॉडल शब्दावली का आकार "केडिलेरी" के लिए टोकनकरण*
dbmdz/बर्ट-बेस-तुर्की-बिना आवरण 32,000 टोकन [सीएलएस] बिल्ली की ##मैं [सितंबर]
इनपुट आईडी 2 23714 1023 3
बर्ट-बेस-बहुभाषी-बिना आवरण 105,879 टोकन [सीएलएस] ked ##इलर ##मैं [सितंबर]
इनपुट आईडी 101 30210 33719 10116 102
डीपसेट/एक्सएलएम-रॉबर्टा-बेस-स्क्वाड2 250,002 टोकन के di Leri
इनपुट आईडी 0 1345 428 1341 .
*अंग्रेजी में: (इसकी) बिल्लियाँ

इसलिए, हालांकि कम-संसाधन वाली भाषाओं को बहुभाषी भाषा मॉडल से लाभ होता है, एक साझा शब्दावली में टोकन प्रदर्शन करना कुछ भाषाओं के लिए कुछ भाषाई विशेषताओं को अनदेखा कर सकता है।

अगले भाग में, हम तुर्की के लिए क्यूए डेटासेट का उपयोग करके प्रश्न उत्तर कार्य के लिए तीन दृष्टिकोणों की तुलना करते हैं: बर्टर्क [8], बहुभाषी बीईआरटी [4], और एक्सएलएम-आर [7]।

समाधान अवलोकन

हमारा वर्कफ़्लो इस प्रकार है:

  1. में डेटासेट तैयार करें अमेज़ॅन सैजमेकर स्टूडियो नोटबुक वातावरण और इसे अपलोड करें अमेज़न सरल भंडारण सेवा (अमेज़न S3)।
  2. फाइन-ट्यूनिंग स्क्रिप्ट प्रदान करके सेजमेकर प्रशिक्षण गहन शिक्षण कंटेनरों पर समानांतर प्रशिक्षण कार्य शुरू करें।
  3. प्रत्येक प्रयोग से मेटाडेटा एकत्र करें।
  4. परिणामों की तुलना करें और सबसे उपयुक्त मॉडल की पहचान करें।

निम्नलिखित चित्र समाधान वास्तुकला को दर्शाता है।

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.

स्टूडियो नोटबुक के बारे में अधिक जानकारी के लिए, देखें अमेज़ॅन सेजमेकर स्टूडियो नोटबुक आर्किटेक्चर में गहराई से गोता लगाएँ. हगिंग फेस को सेजमेकर के साथ कैसे एकीकृत किया जाता है, इस बारे में अधिक जानकारी के लिए देखें AWS और हगिंग फेस नेचुरल लैंग्वेज प्रोसेसिंग मॉडल को अपनाने को सरल और तेज करने के लिए सहयोग किया.

डेटासेट तैयार करें

हगिंग फेस डेटासेट लाइब्रेरी एक गहन शिक्षण मॉडल में प्रशिक्षण के लिए डेटासेट को जल्दी से तैयार करने के लिए शक्तिशाली डेटा प्रोसेसिंग विधियाँ प्रदान करती है। निम्नलिखित कोड तुर्की क्यूए डेटासेट को लोड करता है और यह पता लगाता है कि अंदर क्या है:

data_files = {}
data_files["train"] = 'data/train.json'
data_files["validation"] = 'data/val.json' ds = load_dataset("json", data_files=data_files) print("Number of features in dataset: n Train = {}, n Validation = {}".format(len(ds['train']), len(ds['validation'])))

लगभग 9,000 नमूने हैं।

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.

इनपुट डेटासेट थोड़ा पूर्व-प्रशिक्षित मॉडल द्वारा अपेक्षित प्रारूप में बदल जाता है और इसमें निम्नलिखित कॉलम होते हैं:

df = pd.DataFrame(ds['train'])
df.sample(1)

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.
आउटपुट का अंग्रेजी अनुवाद इस प्रकार है:

  • प्रसंग - रेसिट एमरे कोंगर (बी। 13 अक्टूबर 1941, इस्तांबुल), तुर्की समाजशास्त्री, प्रोफेसर।
  • प्रश्न - एम्रे कोंगर का अकादमिक शीर्षक क्या है?
  • जवाब - प्रोफेसर

फाइन-ट्यूनिंग स्क्रिप्ट

हगिंग फेस ट्रांसफॉर्मर्स लाइब्रेरी एक प्रश्न उत्तर कार्य के लिए एक मॉडल को फाइन-ट्यून करने के लिए एक उदाहरण कोड प्रदान करती है, जिसे कहा जाता है run_qa.py. निम्नलिखित कोड ट्रेनर को इनिशियलाइज़ करता है:

 # Initialize our Trainer trainer = QuestionAnsweringTrainer( model=model, args=training_args, train_dataset=train_dataset, eval_dataset=eval_dataset, eval_examples=eval_examples, tokenizer=tokenizer, data_collator=data_collator, post_process_function=post_processing_function, compute_metrics=compute_metrics, )

आइए उच्च स्तर पर बिल्डिंग ब्लॉक्स की समीक्षा करें।

टोकन लेने वाला

स्क्रिप्ट का उपयोग करके एक टोकननाइज़र लोड करता है AutoTokenizer कक्षा। AutoTokenizer वर्ग मॉडल से मेल खाने वाले सही टोकननाइज़र को वापस करने का ध्यान रखता है:

tokenizer = AutoTokenizer.from_pretrained( model_args.model_name_or_path, cache_dir=model_args.cache_dir, use_fast=True, revision=model_args.model_revision, use_auth_token=None, )

निम्नलिखित एक उदाहरण है कि टोकननाइज़र कैसे काम करता है:

from transformers import AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("deepset/xlm-roberta-base-squad2") input_ids = tokenizer.encode('İstanbulun en popüler hayvanı hangisidir? Kedileri', return_tensors="pt")
tokens = tokenizer('İstanbulun en popüler hayvanı hangisidir? Kedileri').tokens()

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.

आदर्श

स्क्रिप्ट एक मॉडल लोड करती है। AutoModel कक्षाएं (उदाहरण के लिए, AutoModelForQuestionAnswering) पूर्व-प्रशिक्षित मॉडल को नाम और पथ दिए गए प्रासंगिक आर्किटेक्चर के वज़न, कॉन्फ़िगरेशन और शब्दावली के साथ सीधे एक वर्ग बनाएं। हगिंग फेस द्वारा अमूर्तता के लिए धन्यवाद, आप केवल मॉडल का नाम प्रदान करके, समान कोड का उपयोग करके आसानी से किसी भिन्न मॉडल पर स्विच कर सकते हैं। निम्नलिखित उदाहरण कोड देखें:

 model = AutoModelForQuestionAnswering.from_pretrained( model_args.model_name_or_path, config=config, cache_dir=model_args.cache_dir, revision=model_args.model_revision, )

प्रीप्रोसेसिंग और प्रशिक्षण

RSI prepare_train_features() और prepare_validation_features() विधियाँ क्रमशः प्रशिक्षण डेटासेट और सत्यापन डेटासेट को प्रीप्रोसेस करती हैं। कोड इनपुट डेटासेट पर पुनरावृति करता है और सही मॉडल-विशिष्ट टोकन प्रकार आईडी (टोकन के संख्यात्मक प्रतिनिधित्व) और ध्यान मास्क के साथ संदर्भ और वर्तमान प्रश्न से एक अनुक्रम बनाता है। अनुक्रम तब मॉडल के माध्यम से पारित किया जाता है। यह निम्न तालिका में दिखाए गए अनुसार, प्रारंभ और अंत दोनों स्थितियों के लिए स्कोर की एक श्रृंखला को आउटपुट करता है।

इनपुट डेटासेट फ़ील्ड प्रीप्रोसेस्ड ट्रेनिंग डेटासेट फील्ड्स फॉर क्वेश्चन आंसरिंगट्रेनर
id इनपुट_आईडी
शीर्षक अटेंशन_मास्क
प्रसंग प्रारंभ_स्थिति
प्रश्न अंत_पद
उत्तर { answer_start, answer_text } .

मूल्यांकन

RSI compute_metrics() विधि मेट्रिक्स की गणना का ध्यान रखती है। प्रश्न उत्तर कार्यों के लिए हम निम्नलिखित लोकप्रिय मीट्रिक का उपयोग करते हैं:

  • सटीक मिलान - भविष्यवाणियों के प्रतिशत को मापता है जो किसी एक जमीनी सच्चाई के उत्तर से बिल्कुल मेल खाता है।
  • एफ 1 का स्कोर - भविष्यवाणी और जमीनी सच्चाई के जवाब के बीच औसत ओवरलैप को मापता है। F1 स्कोर सटीक और रिकॉल का हार्मोनिक माध्य है:
    • शुद्धता - भविष्यवाणी में शब्दों की कुल संख्या के लिए साझा किए गए शब्दों की संख्या का अनुपात।
    • वापस बुलाना - जमीनी सच्चाई में साझा शब्दों की संख्या और शब्दों की कुल संख्या का अनुपात।

सेजमेकर पर प्रबंधित प्रशिक्षण

कस्टम मशीन लर्निंग (एमएल) वातावरण की स्थापना और प्रबंधन समय लेने वाली और बोझिल हो सकती है। साथ एडब्ल्यूएस डीप लर्निंग कंटेनर (डीएलसी) हगिंग फेस ट्रांसफॉर्मर पुस्तकालयों के लिए, हमारे पास पहले से पैक किए गए और अनुकूलित गहन शिक्षण ढांचे तक पहुंच है, जो न्यूनतम अतिरिक्त कोड के साथ कई प्रशिक्षण नौकरियों में हमारी स्क्रिप्ट को चलाना आसान बनाता है।

हमें बस का उपयोग करने की आवश्यकता है आलिंगन चेहरा अनुमानक निम्नलिखित इनपुट के साथ सेजमेकर पायथन एसडीके में उपलब्ध है:

# Trial configuration
config['model'] = 'deepset/xlm-roberta-base-squad2'
config['instance_type'] = 'ml.p3.16xlarge'
config['instance_count'] = 2 # Define the distribution parameters in the HuggingFace Estimator config['distribution'] = {'smdistributed':{'dataparallel':{ 'enabled': True }}}
trial_configs.append(config) # We can specify a training script that is stored in a GitHub repository as the entry point for our Estimator, # so we don’t have to download the scripts locally.
git_config = {'repo': 'https://github.com/huggingface/transformers.git'} hyperparameters_qa={ 'model_name_or_path': config['model'], 'train_file': '/opt/ml/input/data/train/train.json', 'validation_file': '/opt/ml/input/data/val/val.json', 'do_train': True, 'do_eval': True, 'fp16': True, 'per_device_train_batch_size': 16, 'per_device_eval_batch_size': 16, 'num_train_epochs': 2, 'max_seq_length': 384, 'pad_to_max_length': True, 'doc_stride': 128, 'output_dir': '/opt/ml/model' } huggingface_estimator = HuggingFace(entry_point='run_qa.py', source_dir='./examples/pytorch/question-answering', git_config=git_config, instance_type=config['instance_type'], instance_count=config['instance_count'], role=role, transformers_version='4.12.3', pytorch_version='1.9.1', py_version='py38', distribution=config['distribution'], hyperparameters=hyperparameters_qa, metric_definitions=metric_definitions, enable_sagemaker_metrics=True,) nlp_training_job_name = f"NLPjob-{model}-{instance}-{int(time.time())}" training_input_path = f's3://{sagemaker_session_bucket}/{s3_prefix_qa}/' test_input_path = f's3://{sagemaker_session_bucket}/{s3_prefix_qa}/' huggingface_estimator.fit( inputs={'train': training_input_path, 'val': test_input_path}, job_name=nlp_training_job_name, experiment_config={ "ExperimentName": nlp_experiment.experiment_name, "TrialName": nlp_trial.trial_name, "TrialComponentDisplayName": nlp_trial.trial_name,}, wait=False, )

परिणामों का मूल्यांकन करें

जब तुर्की प्रश्न उत्तर कार्य के लिए फ़ाइन-ट्यूनिंग कार्य पूरा हो जाता है, तो हम तीन दृष्टिकोणों के मॉडल प्रदर्शन की तुलना करते हैं:

  • मोनोलिंगुअल भाषा मॉडल - तुर्की प्रश्न उत्तर पाठ पर पूर्व-प्रशिक्षित मॉडल को फाइन-ट्यून कहा जाता है बर्ट-बेस-तुर्की-बिना आवरण [8]। यह केवल दो युगों में और 1 लेबल वाली वस्तुओं के साथ 75.63 का F56.17 स्कोर और 9,000 का सटीक मिलान स्कोर प्राप्त करता है। हालांकि, जब पूर्व-प्रशिक्षित भाषा मॉडल मौजूद नहीं है, या खरोंच से प्रशिक्षण के लिए बहुत कम डेटा उपलब्ध है, तो यह दृष्टिकोण कम-संसाधन वाली भाषा के लिए उपयुक्त नहीं है।
  • बहुभाषी BERT के साथ बहुभाषी भाषा मॉडल - पूर्व-प्रशिक्षित मॉडल को कहा जाता है बर्ट-बेस-बहुभाषी-बिना आवरण. बहुभाषी BERT पेपर [4] ने दिखाया है कि यह सभी भाषाओं में अच्छी तरह से सामान्यीकरण करता है। मोनोलिंगुअल मॉडल की तुलना में, यह खराब प्रदर्शन करता है (F1 स्कोर 71.73, सटीक मिलान 50:45), लेकिन ध्यान दें कि यह मॉडल 100 से अधिक अन्य भाषाओं को संभालता है, जिससे तुर्की भाषा का प्रतिनिधित्व करने के लिए कम जगह बची है।
  • XLM-R . के साथ बहुभाषी भाषा मॉडल - पूर्व-प्रशिक्षित मॉडल को कहा जाता है xlm-roberta-base-squad2. एक्सएलएम-आर पेपर दिखाता है कि प्रति भाषा प्रदर्शन [100] का त्याग किए बिना 7 से अधिक भाषाओं के लिए एक बड़ा मॉडल होना संभव है। तुर्की प्रश्न उत्तर कार्य के लिए, यह बहुभाषी BERT और मोनोलिंगुअल BERT F1 स्कोर को क्रमशः 5% और 2% से बेहतर करता है, (F1 स्कोर 77.14, सटीक मिलान 56.39)।

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.

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

अतिरिक्त प्रयोग

प्रदान की गई नोटबुक में अतिरिक्त प्रयोग उदाहरण हैं।

सेजमेकर प्रशिक्षण उदाहरण प्रकारों की एक विस्तृत श्रृंखला प्रदान करता है। हमने XLM-R मॉडल को p3.2xlarge (GPU: Nvidia V100 GPU, GPU आर्किटेक्चर: Volta (2017)), p3.16xlarge (GPU: 8 Nvidia V100 GPUs), और g4dn.xlarge (GPU: Nvidia T4) पर फाइन-ट्यून किया है। GPU, GPU आर्किटेक्चर: ट्यूरिंग (2018)), और निम्नलिखित का अवलोकन किया:

  • प्रशिक्षण की अवधि - हमारे प्रयोग के अनुसार, XLM-R मॉडल को p24xlarge पर प्रशिक्षित करने में लगभग 3.2 मिनट और g30dn.xlarge पर 4 मिनट (लगभग 23% अधिक) का समय लगा। हमने दो p3.16xबड़े उदाहरणों पर वितरित फ़ाइन-ट्यूनिंग भी किया, और प्रशिक्षण का समय घटकर 10 मिनट हो गया। सेजमेकर पर ट्रांसफॉर्मर-आधारित मॉडल के वितरित प्रशिक्षण के बारे में अधिक जानकारी के लिए देखें अमेज़ॅन सेजमेकर पर हगिंग फेस ट्रांसफॉर्मर्स का उपयोग करके प्रश्न-उत्तर कार्य के लिए एक बीईआरटी बड़े मॉडल का वितरित फ़ाइन-ट्यूनिंग.
  • प्रशिक्षण लागत - हमने सेजमेकर ऑन-डिमांड कीमतों को फ्लाई पर गणना करने के लिए एडब्ल्यूएस प्राइसिंग एपीआई का इस्तेमाल किया। हमारे प्रयोग के अनुसार, p1.58xlarge पर प्रशिक्षण की लागत लगभग $3.2 है, और g4dn.xlarge ($0.37) पर लगभग चार गुना कम है। 3.16 GPU का उपयोग करके दो p16xबड़े उदाहरणों पर वितरित प्रशिक्षण की लागत $9.68 है।

संक्षेप में, हालांकि g4dn.xlarge सबसे कम खर्चीली मशीन थी, लेकिन हमारे द्वारा प्रयोग किए गए सबसे शक्तिशाली इंस्टेंस प्रकार (दो p3.16xlarge) की तुलना में इसे प्रशिक्षित करने में लगभग तीन गुना अधिक समय लगा। आपकी परियोजना प्राथमिकताओं के आधार पर, आप विभिन्न प्रकार के सेजमेकर प्रशिक्षण उदाहरण प्रकारों में से चुन सकते हैं।

निष्कर्ष

इस पोस्ट में, हमने मध्य-संसाधन भाषा (इस मामले में, तुर्की) के लिए एक प्रश्न उत्तर कार्य के लिए पूर्व-प्रशिक्षित ट्रांसफॉर्मर-आधारित भाषा मॉडल की फाइन ट्यूनिंग की खोज की। आप इस दृष्टिकोण को एक मॉडल का उपयोग करके 100 से अधिक अन्य भाषाओं में लागू कर सकते हैं। लेखन के समय, दुनिया की 7,000 भाषाओं में से सभी को कवर करने के लिए एक मॉडल का विस्तार करना अभी भी निषेधात्मक है, लेकिन एनएलपी का क्षेत्र हमारे क्षितिज को व्यापक बनाने का अवसर प्रदान करता है।

भाषा मानव संचार का प्रमुख तरीका है, और मूल्यों को संप्रेषित करने और सांस्कृतिक विरासत की सुंदरता को साझा करने का एक साधन है। भाषाई विविधता अंतरसांस्कृतिक संवाद को मजबूत करती है और समावेशी समाजों का निर्माण करती है।

एमएल एक अत्यधिक पुनरावृत्त प्रक्रिया है; एक ही परियोजना के दौरान, डेटा वैज्ञानिक अधिकतम सटीकता की तलाश में सैकड़ों विभिन्न मॉडलों, डेटासेट और मापदंडों को प्रशिक्षित करते हैं। सेजमेकर एमएल और डीप लर्निंग की शक्ति का उपयोग करने के लिए उपकरणों का सबसे पूरा सेट प्रदान करता है। यह आपको बड़े पैमाने पर एमएल प्रयोगों को व्यवस्थित, ट्रैक, तुलना और मूल्यांकन करने देता है।

हगिंग फेस को सेजमेकर के साथ एकीकृत किया गया है ताकि डेटा वैज्ञानिकों को अत्याधुनिक एनएलपी मॉडल विकसित करने, प्रशिक्षित करने और ट्यून करने में मदद मिल सके। हमने अमेज़ॅन सेजमेकर पर हगिंग फेस ट्रांसफॉर्मर का उपयोग करने के कई लाभों का प्रदर्शन किया, जैसे कि बड़े पैमाने पर प्रशिक्षण और प्रयोग, और उत्पादकता और लागत-दक्षता में वृद्धि।

आप सभी एडब्ल्यूएस क्षेत्रों में सेजमेकर में अपनी पसंदीदा भाषा पर एनएलपी कार्यों के साथ प्रयोग कर सकते हैं जहां सेजमेकर उपलब्ध है। उदाहरण नोटबुक कोड में उपलब्ध है GitHub.

यह जानने के लिए कि अमेज़ॅन सेजमेकर ट्रेनिंग कंपाइलर डीप लर्निंग मॉडल के प्रशिक्षण को 50% तक कैसे तेज कर सकता है, देखें नया - पेश है सेजमेकर ट्रेनिंग कंपाइलर.

लेखक मसौदे की समीक्षा करने और सलाह प्रदान करने के लिए मारियानो काम्प और एमिली वेबर के प्रति अपनी गहरी प्रशंसा व्यक्त करना चाहते हैं।

संदर्भ

  1. जे। डेवलिन एट अल।, "बीईआरटी: प्री-ट्रेनिंग ऑफ डीप बिडायरेक्शनल ट्रांसफॉर्मर्स फॉर लैंग्वेज अंडरस्टैंडिंग", (2018)।
  2. ए. वासवानी एट अल।, "अटेंशन इज़ ऑल यू नीड", (2017)।
  3. जे. हॉवर्ड और एस. रुडर, "यूनिवर्सल लैंग्वेज मॉडल फाइन-ट्यूनिंग फॉर टेक्स्ट क्लासिफिकेशन", (2018)।
  4. टी। पाइरेस एट अल।, "बहुभाषी BERT कितना बहुभाषी है?", (2019)।
  5. वाई। लियू एट अल।, "रॉबर्टा: ए रोबस्टली ऑप्टिमाइज्ड बीईआरटी प्रीट्रेनिंग अप्रोच", (2019)।
  6. जी। लैम्पल, और ए। कॉनौ, "क्रॉस-लिंगुअल लैंग्वेज मॉडल प्रीट्रेनिंग", (2019)।
  7. A. Conneau et al।, "अनसुपरवाइज्ड क्रॉस-लिंगुअल रिप्रेजेंटेशन लर्निंग एट स्केल", (2019)।
  8. स्टीफन श्वाइटर। BERTurk - तुर्की के लिए BERT मॉडल (2020)।
  9. बहुभाषी विकी सांख्यिकी https://en.wikipedia.org/wiki/Wikipedia:Multilingual_statistics

लेखक के बारे में

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.अर्णव खरे एडब्ल्यूएस में वैश्विक वित्तीय सेवाओं के लिए एक प्रमुख समाधान वास्तुकार है। उनका प्राथमिक ध्यान वित्तीय सेवा संस्थानों को क्लाउड में एनालिटिक्स और मशीन लर्निंग एप्लिकेशन बनाने और डिजाइन करने में मदद करना है। अर्नव ने एडिनबर्ग यूनिवर्सिटी से आर्टिफिशियल इंटेलिजेंस में एमएससी किया है और उनके पास छोटे स्टार्टअप से लेकर नोकिया और बैंक ऑफ अमेरिका जैसे बड़े उद्यमों तक का उद्योग का 18 साल का अनुभव है। काम के अलावा, अर्नव को अपनी दो बेटियों के साथ समय बिताना, नई स्वतंत्र कॉफी की दुकानें ढूंढना, पढ़ना और यात्रा करना पसंद है। आप मुझे ढूंढ सकते हैं लिंक्डइन और वास्तविक जीवन में सरे, यूके में।

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.हसन-बसरी अकीरमाकी (कंप्यूटर इंजीनियरिंग में बीएससी और एमएससी और ग्रेजुएट स्कूल ऑफ बिजनेस में कार्यकारी एमबीए) अमेज़ॅन वेब सर्विसेज में एक वरिष्ठ समाधान वास्तुकार हैं। वह एंटरप्राइज सेगमेंट के ग्राहकों को सलाह देने वाला एक बिजनेस टेक्नोलॉजिस्ट है। उनकी विशेषता का क्षेत्र बड़े पैमाने पर डेटा प्रोसेसिंग सिस्टम और मशीन लर्निंग सॉल्यूशंस पर आर्किटेक्चर और व्यावसायिक मामलों को डिजाइन करना है। हसन ने यूरोप, मध्य पूर्व और अफ्रीका में ग्राहकों के लिए बिजनेस डेवलपमेंट, सिस्टम इंटीग्रेशन, प्रोग्राम मैनेजमेंट दिया है। 2016 के बाद से उन्होंने स्टार्टअप इनक्यूबेशन कार्यक्रमों में सैकड़ों उद्यमियों को मुफ्त में सलाह दी।

अमेज़ॅन सेजमेकर प्लेटोब्लॉकचैन डेटा इंटेलिजेंस पर हगिंग फेस के साथ भाषाई विविधता के लिए फाइन-ट्यून ट्रांसफॉर्मर भाषा मॉडल। लंबवत खोज। ऐ.हाइको हॉट्ज़ो एआई और मशीन लर्निंग के लिए एक वरिष्ठ समाधान वास्तुकार है और एडब्ल्यूएस के भीतर प्राकृतिक भाषा प्रसंस्करण (एनएलपी) समुदाय का नेतृत्व करता है। इस भूमिका से पहले, वह Amazon की EU ग्राहक सेवा के लिए डेटा साइंस के प्रमुख थे। Heiko हमारे ग्राहकों को AWS पर उनकी AI/ML यात्रा में सफल होने में मदद करता है और बीमा, वित्तीय सेवाओं, मीडिया और मनोरंजन, हेल्थकेयर, उपयोगिताओं और विनिर्माण सहित कई उद्योगों में संगठनों के साथ काम किया है। अपने खाली समय में Heiko जितना संभव हो उतना यात्रा करता है।

समय टिकट:

से अधिक AWS मशीन लर्निंग

सेजमेकर कैनवस मॉडल लीडरबोर्ड | का उपयोग करके उन्नत कॉन्फ़िगरेशन के साथ मशीन लर्निंग मॉडल बनाएं और उनका मूल्यांकन करें अमेज़न वेब सेवाएँ

स्रोत नोड: 1920800
समय टिकट: नवम्बर 30, 2023