मितव्ययता सटीकता से मिलती है: AWS ट्रेनियम के साथ GPT NeoX और पायथिया मॉडल का लागत-कुशल प्रशिक्षण | अमेज़न वेब सेवाएँ

मितव्ययता सटीकता से मिलती है: AWS ट्रेनियम के साथ GPT NeoX और पायथिया मॉडल का लागत-कुशल प्रशिक्षण | अमेज़न वेब सेवाएँ

बड़े भाषा मॉडल (या एलएलएम) दैनिक बातचीत का विषय बन गए हैं। उनकी त्वरित स्वीकार्यता 100 मिलियन उपयोगकर्ताओं तक पहुंचने के लिए आवश्यक समय से स्पष्ट है, जो "फेसबुक द्वारा 4.5 वर्ष" से अब तक के सबसे निचले स्तर "चैटजीपीटी द्वारा 2 महीने" तक पहुंच गई है। एक जेनरेटिव पूर्व-प्रशिक्षित ट्रांसफार्मर (जीपीटी) भविष्यवाणी करने के लिए कारणात्मक ऑटोरेग्रेसिव अपडेट का उपयोग करता है। इन मॉडल आर्किटेक्चर द्वारा भाषण पहचान, पाठ निर्माण और प्रश्न उत्तर जैसे विभिन्न कार्यों का शानदार प्रदर्शन प्रदर्शित किया गया है। कई हालिया मॉडल जैसे NEOX, बाज़, लामा GPT आर्किटेक्चर को रीढ़ की हड्डी के रूप में उपयोग करें। एलएलएम के प्रशिक्षण के लिए भारी मात्रा में गणना समय की आवश्यकता होती है, जिसकी लागत लाखों डॉलर होती है। इस पोस्ट में, हम GPT की प्रशिक्षण प्रक्रिया का सारांश देंगे NEOX on एडब्ल्यूएस ट्रेनियम, एक उद्देश्य-निर्मित मशीन लर्निंग (एमएल) त्वरक जो गहन शिक्षण प्रशिक्षण के लिए अनुकूलित है। हम इस बात की रूपरेखा तैयार करेंगे कि कैसे हमने किसी भी मॉडल की गुणवत्ता खोए बिना AWS ट्रेनियम के साथ लागत-प्रभावी ढंग से (3.2 मिलियन टोकन/$) ऐसे मॉडलों को प्रशिक्षित किया।

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

GPT NeoX और पायथिया मॉडल

जीपीटी नियोएक्स और पाइथिया NeoX में लगभग 20 बिलियन पैरामीटर और पायथिया में 6.9 बिलियन पैरामीटर के साथ Eleuther-AI द्वारा ओपन-सोर्स कॉज़ल लैंग्वेज मॉडल हैं। दोनों डिकोडर मॉडल हैं जो चैट जीपीटी3 के समान वास्तुशिल्प डिजाइन का अनुसरण करते हैं। हालाँकि, उनमें कई अतिरिक्त चीजें भी हैं, जिन्हें लामा जैसे हाल के मॉडलों में भी व्यापक रूप से अपनाया गया है। विशेष रूप से, उनके पास सिर के आयामों में आंशिक घुमाव के साथ घूर्णी स्थितिगत एम्बेडिंग (आरओपीई) है। मूल मॉडल (नियोएक्स और पाइथिया 6.9बी) को खुले तौर पर उपलब्ध होने पर प्रशिक्षित किया जाता है ढेर डेटासेट डिडुप्लीकेशन के साथ और मेगेट्रॉन और डीपस्पीड बैकएंड का उपयोग करके।

हम AWS ट्रेनियम-आधारित Trn1 इंस्टेंसेस का उपयोग करके इन मॉडलों के पूर्व-प्रशिक्षण और फाइन-ट्यूनिंग का प्रदर्शन करते हैं न्यूरॉन निमो पुस्तकालय। प्रूफ-ऑफ-कॉन्सेप्ट और त्वरित पुनरुत्पादन स्थापित करने के लिए, हम GPT2 बाइट-पेयर एन्कोडिंग (बीपीई) टोकननाइज़र का उपयोग करके टोकनयुक्त एक छोटे विकिपीडिया डेटासेट सबसेट का उपयोग करेंगे।

Walkthrough

दिखाए गए अनुसार पूर्व-टोकनयुक्त विकिपीडिया डेटासेट डाउनलोड करें:

export DATA_DIR=~/examples_datasets/gpt2 mkdir -p ${DATA_DIR} && cd ${DATA_DIR} wget https://s3.amazonaws.com/models.huggingface.co/bert/gpt2-vocab.json
wget https://s3.amazonaws.com/models.huggingface.co/bert/gpt2-merges.txt
aws s3 cp s3://neuron-s3/training_datasets/gpt/wikipedia/my-gpt2_text_document.bin . --no-sign-request
aws s3 cp s3://neuron-s3/training_datasets/gpt/wikipedia/my-gpt2_text_document.idx . --no-sign-request
aws s3 cp s3://neuron-s3/training_datasets/gpt/wikipedia/license.txt . --no-sign-request

NeoX 20B और पायथिया 6.9B दोनों आंशिक रोटेशन के साथ ROPE का उपयोग करते हैं, उदाहरण के लिए, सिर के 25% आयामों को घुमाना और बाकी को बिना घुमाए रखना। AWS ट्रेनियम त्वरक पर आंशिक रोटेशन को कुशलतापूर्वक लागू करने के लिए, घूर्णन और गैर-घूर्णन आयामों को संयोजित करने के बजाय, हम गैर-घूर्णन आयामों के लिए शून्य आवृत्तियों को जोड़ते हैं और फिर हेड आयामों के पूरे सेट को घुमाते हैं। इस सरल ट्रिक ने हमें AWS ट्रेनियम पर थ्रूपुट (प्रति सेकंड संसाधित अनुक्रम) को बेहतर बनाने में मदद की।

प्रशिक्षण चरण

प्रशिक्षण चलाने के लिए, हम SLURM प्रबंधित मल्टी-नोड अमेज़ॅन इलास्टिक कंप्यूट क्लाउड का उपयोग करते हैं (अमेज़ॅन EC2) Trn1 क्लस्टर, प्रत्येक नोड में एक trn1.32xl उदाहरण होता है। प्रत्येक trn1.32xl इसमें 16 त्वरक हैं और प्रत्येक त्वरक पर दो कर्मचारी हैं। नवीनतम डाउनलोड करने के बाद न्यूरॉन निमो पैकेज, दिए गए का उपयोग करें नियोक्स और पाइथिया अनुकूलित हाइपर-पैरामीटर के साथ पूर्व-प्रशिक्षण और फाइन-ट्यूनिंग स्क्रिप्ट और चार नोड प्रशिक्षण के लिए निम्नलिखित को निष्पादित करें।

  1. संकलित करें: ग्राफ़ बनाने और सहेजने के लिए तीन ट्रेन पुनरावृत्तियों के साथ मॉडल को पूर्व-संकलित करें:
    sbatch --nodes 4 compile.slurm ./neoX_20B_slurm.sh

  2. चलाएँ: पहले चरण से कैश्ड ग्राफ़ लोड करके प्रशिक्षण निष्पादित करें
    sbatch --nodes 4 run.slurm ./neoX_20B_slurm.sh

  3. मॉनिटर परिणाम
    tensorboard --logdir=nemo_experiments/megatron_neox

पाइथिया 6.9बी मॉडल को बदलने के साथ चलाने के लिए समान चरणों का पालन करना होगा neox_20B_slurm.sh by pythia_6.9B_slurm.sh.

पूर्व-प्रशिक्षण और फाइन-ट्यूनिंग प्रयोग

हम AWS ट्रेनियम का उपयोग करके GPT-NeoX और पायथिया मॉडल के पूर्व-प्रशिक्षण का प्रदर्शन करते हैं न्यूरॉन निमो 10k पुनरावृत्तियों के लिए लाइब्रेरी, और 1k चरणों के लिए इन मॉडलों की फाइन-ट्यूनिंग भी दिखाती है। पूर्व-प्रशिक्षण के लिए, हम NeMo के अंदर GPT2 BPE टोकनाइज़र का उपयोग करते हैं और उसी का पालन करते हैं विन्यास जैसा कि मूल मॉडल में उपयोग किया गया था। AWS ट्रेनियम पर फ़ाइन-ट्यूनिंग के लिए कुछ मापदंडों में बदलाव की आवश्यकता होती है (जैसे शब्दावली आकार विभाजन कारक), जो मेगेट्रॉन बनाम नेमो अंतर और जीपीयू बनाम एडब्ल्यूएस ट्रेनियम परिवर्तनों को समायोजित करने के लिए फाइन-ट्यूनिंग स्क्रिप्ट में प्रदान किए गए हैं। अलग-अलग संख्या में नोड्स के साथ बहु-नोड वितरित प्रशिक्षण थ्रूपुट तालिका-1 में दिखाया गया है।

आदर्श टेंसर समानांतर पाइपलाइन समानांतर उदाहरणों की संख्या लागत ($/घंटा) अनुक्रम लंबाई वैश्विक बैच आकार थ्रूपुट (सेकंड/सेकंड) लागत-थ्रूपुट अनुपात (टोकन/$)
पाइथिया 6.9B 8 1 1 7.59 2048 256 10.4 10,102,387
8 1 4 30.36 2048 256 35.8 8,693,881
नियोएक्स 20बी 8 4 4 30.36 2048 16384 13.60 3,302,704
8 4 8 60.72 2048 16384 26.80 3,254,134
8 4 16 121.44 2048 16384 54.30 3,296,632
8 4 32 242.88 2048 16384 107.50 3,263,241
8 4 64 485.76 2048 16384 212.00 3,217,708

टेबल 1. नोड्स की बदलती संख्या के साथ 500 चरणों तक प्रशिक्षण के लिए GPT NeoX और पायथिया मॉडल के माध्य थ्रूपुट की तुलना करना। Trn1.32xl का मूल्य निर्धारण 3-वर्षीय आरक्षित प्रभावी प्रति घंटे की दर पर आधारित है।

इसके बाद, हम AWS ट्रेनियम पर मॉडल प्रशिक्षण के हानि प्रक्षेपवक्र का भी मूल्यांकन करते हैं और इसकी तुलना P4d (Nvidia A100 GPU कोर) क्लस्टर पर संबंधित रन से करते हैं। प्रशिक्षण हानि के साथ, हम ग्रेडिएंट मानदंड जैसे उपयोगी संकेतक की भी तुलना करते हैं, जो प्रशिक्षण प्रगति की निगरानी के लिए प्रत्येक प्रशिक्षण पुनरावृत्ति पर गणना किए गए मॉडल ग्रेडिएंट के 2-मानक हैं। प्रशिक्षण परिणाम चित्र-1, 2 में दिखाए गए हैं और NeoX 20B की फाइन-ट्यूनिंग चित्र-3 में दिखाई गई है।

प्रत्येक चरण के प्रशिक्षण में सभी श्रमिकों (बाएं) और ग्रेडिएंट मानदंड (दाएं) में प्रशिक्षण हानि का औसत।

आकृति 1। प्रत्येक चरण के प्रशिक्षण में सभी श्रमिकों (बाएं) और ग्रेडिएंट मानदंड (दाएं) में प्रशिक्षण हानि का औसत। NeoX 20B को समान प्रशिक्षण हाइपर-पैरामीटर (वैश्विक बैच आकार = 4) के साथ GPU और ट्रेनियम पर छोटे विकी डेटासेट के साथ 256 नोड्स पर प्रशिक्षित किया जाता है। GPU BF16 और डिफ़ॉल्ट मिश्रित-परिशुद्धता का उपयोग कर रहा है जबकि AWS ट्रेनियम स्टोकेस्टिक राउंडिंग के साथ पूर्ण BF16 का उपयोग कर रहा है। हानि और ग्रेडिएंट मानक प्रक्षेप पथ GPU और AWS ट्रेनियम के लिए मेल खाते हैं।

प्रत्येक चरण (पायथिया) के प्रशिक्षण में सभी श्रमिकों (बाएं) और ग्रेडिएंट मानदंड (दाएं) में प्रशिक्षण हानि का औसत।

आकृति 2। प्रत्येक चरण के प्रशिक्षण में सभी श्रमिकों (बाएं) और ग्रेडिएंट मानदंड (दाएं) में प्रशिक्षण हानि का औसत। चित्र-1 में GPT NeoX के समान, पायथिया 6.9B को समान प्रशिक्षण हाइपर-पैरामीटर (वैश्विक बैच आकार = 4) के साथ GPU और ट्रेनियम पर छोटे विकी डेटासेट के साथ 256 नोड्स पर प्रशिक्षित किया जाता है। जीपीयू और ट्रेनियम के लिए हानि और ग्रेडिएंट मानदंड प्रक्षेपवक्र मेल खाते हैं।

सभी श्रमिकों (बाएं) और ग्रेडिएंट नॉर्म (दाएं) में प्रशिक्षण हानि के औसत के साथ जीपीटी नियोएक्स 20बी मॉडल को जीपीयू और एडब्ल्यूएस ट्रेनियम पर फाइन-ट्यूनिंग।

आकृति 3। सभी श्रमिकों (बाएं) और ग्रेडिएंट नॉर्म (दाएं) में प्रशिक्षण हानि के औसत के साथ जीपीटी नियोएक्स 20बी मॉडल को जीपीयू और एडब्ल्यूएस ट्रेनियम पर फाइन-ट्यूनिंग। फाइन-ट्यूनिंग प्रदर्शन के लिए एक छोटे विकी डेटासेट का उपयोग किया जाता है। हानि और ग्रेडिएंट मानक प्रक्षेप पथ GPU और AWS ट्रेनियम के लिए मेल खाते हैं।

इस पोस्ट में, हमने AWS डीप लर्निंग हार्डवेयर पर एलएलएम का लागत-कुशल प्रशिक्षण दिखाया। हमने न्यूरॉन NeMo लाइब्रेरी के साथ AWS Trn20 पर GPT NeoX 6.9B और Pythia 1B मॉडल को प्रशिक्षित किया। AWS ट्रेनियम के साथ 20 बिलियन मॉडल के लिए लागत सामान्यीकृत थ्रूपुट लगभग 3.2M टोकन/$ खर्च किया गया है। एडब्ल्यूएस ट्रेनियम पर लागत-कुशल प्रशिक्षण के साथ, हम समान मॉडल सटीकता प्राप्त करते हैं, जो प्रशिक्षण चरण हानि और ग्रेडिएंट मानक प्रक्षेपवक्र से स्पष्ट है। हमने AWS ट्रेनियम पर NeoX 20B मॉडल के लिए उपलब्ध चेकपॉइंट्स को भी ठीक किया है। AWS ट्रेनियम पर NeMo मेगेट्रॉन के साथ वितरित प्रशिक्षण पर अतिरिक्त जानकारी के लिए देखें निमो मेगेट्रॉन के लिए एडब्ल्यूएस न्यूरॉन संदर्भ. लामा मॉडल की फाइन-ट्यूनिंग शुरू करने के लिए एक अच्छा संसाधन यहां पाया जा सकता है, Llama2 फाइन-ट्यूनिंग. प्रबंधित AWS ट्रेनियम के साथ आरंभ करने के लिए अमेज़न SageMakerदेखते हैं, अपने एमएल मॉडल को एडब्ल्यूएस ट्रेनियम और अमेज़ॅन सेजमेकर के साथ प्रशिक्षित करें.


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

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

मितव्ययता सटीकता से मिलती है: AWS ट्रेनियम के साथ GPT NeoX और पायथिया मॉडल का लागत-कुशल प्रशिक्षण | अमेज़ॅन वेब सेवाएँ प्लेटोब्लॉकचेन डेटा इंटेलिजेंस। लंबवत खोज. ऐ.बेन स्नाइडर AWS डीप लर्निंग के साथ एक व्यावहारिक वैज्ञानिक हैं। उनकी शोध रुचियों में मूलभूत मॉडल, सुदृढीकरण सीखना और अतुल्यकालिक अनुकूलन शामिल हैं। काम के अलावा, वह साइकिल चलाना और बैककंट्री कैंपिंग का आनंद लेते हैं।

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

मितव्ययता सटीकता से मिलती है: AWS ट्रेनियम के साथ GPT NeoX और पायथिया मॉडल का लागत-कुशल प्रशिक्षण | अमेज़ॅन वेब सेवाएँ प्लेटोब्लॉकचेन डेटा इंटेलिजेंस। लंबवत खोज. ऐ.जून (ल्यूक) हुआन AWS AI लैब्स में एक प्रमुख वैज्ञानिक हैं। डॉ. हुआन एआई और डेटा साइंस पर काम करते हैं। उन्होंने प्रमुख सम्मेलनों और पत्रिकाओं में 180 से अधिक सहकर्मी-समीक्षा पत्र प्रकाशित किए हैं। वह 2009 में NSF फैकल्टी अर्ली करियर डेवलपमेंट अवार्ड के प्राप्तकर्ता थे। AWS में शामिल होने से पहले, उन्होंने Baidu अनुसंधान में एक प्रतिष्ठित वैज्ञानिक और Baidu बिग डेटा प्रयोगशाला के प्रमुख के रूप में काम किया था। उन्होंने स्टाइलिंगएआई इंक, एक एआई स्टार्ट-अप की स्थापना की और 2019-2021 में सीईओ और मुख्य वैज्ञानिक के रूप में काम किया। उद्योग में शामिल होने से पहले, वह कैनसस विश्वविद्यालय में ईईसीएस विभाग में चार्ल्स ई. और मैरी जेन स्पाहर प्रोफेसर थे।

मितव्ययता सटीकता से मिलती है: AWS ट्रेनियम के साथ GPT NeoX और पायथिया मॉडल का लागत-कुशल प्रशिक्षण | अमेज़ॅन वेब सेवाएँ प्लेटोब्लॉकचेन डेटा इंटेलिजेंस। लंबवत खोज. ऐ.श्रुति कोपरकरी AWS में वरिष्ठ उत्पाद विपणन प्रबंधक हैं। वह ग्राहकों को उनकी मशीन सीखने की जरूरतों के लिए अमेज़ॅन ईसी2 त्वरित कंप्यूटिंग बुनियादी ढांचे का पता लगाने, मूल्यांकन करने और अपनाने में मदद करती है।

समय टिकट:

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