تنظیم سریع و مقرون به صرفه LLaMA 2 با AWS Trainium | خدمات وب آمازون

تنظیم سریع و مقرون به صرفه LLaMA 2 با AWS Trainium | خدمات وب آمازون

مدل‌های زبان بزرگ (LLM) تخیل و توجه توسعه‌دهندگان، دانشمندان، فن‌آوران، کارآفرینان و مدیران اجرایی در چندین صنعت را به خود جلب کرده‌اند. این مدل‌ها را می‌توان برای پاسخ‌گویی به سؤال، خلاصه‌سازی، ترجمه و موارد دیگر در برنامه‌هایی مانند نمایندگی‌های مکالمه برای پشتیبانی مشتری، ایجاد محتوا برای بازاریابی و دستیاران کدنویسی استفاده کرد.

اخیرا متا منتشر شده است لاما 2 هم برای محققان و هم برای نهادهای تجاری، افزودن به لیست سایر LLMها، از جمله MosaicML MPT و شاهین. در این پست، نحوه تنظیم دقیق Llama 2 را توضیح می دهیم AWS Trainiumیک شتاب دهنده هدفمند برای آموزش LLM، برای کاهش زمان و هزینه های آموزش. ما اسکریپت های تنظیم دقیق ارائه شده توسط را بررسی می کنیم نورون AWS SDK (با استفاده از NeMo Megatron-LM)، پیکربندی‌های مختلفی که استفاده کردیم، و نتایج خروجی که دیدیم.

در مورد مدل Llama 2

مشابه قبلی لاما 1 مدل و مدل‌های دیگر مانند GPT، Llama 2 از معماری فقط رمزگشای Transformer استفاده می‌کند. این در سه اندازه وجود دارد: 7 میلیارد، 13 میلیارد و 70 میلیارد پارامتر. در مقایسه با Llama 1، Llama 2 طول زمینه را از 2,000 به 4,000 دوبرابر می کند و از توجه جستجوی گروهی (فقط برای 70B) استفاده می کند. مدل های از پیش آموزش دیده Llama 2 بر روی 2 تریلیون توکن آموزش داده شده اند و مدل های دقیق آن بر روی بیش از 1 میلیون حاشیه نویسی انسانی آموزش دیده اند.

آموزش توزیع شده Llama 2

برای قرار دادن Llama 2 با طول سکانس های 2,000 و 4,000، اسکریپت را با استفاده از NeMo Megatron برای Trainium که از موازی سازی داده ها (DP)، موازی سازی تانسوری (TP) و موازی خط لوله (PP) پشتیبانی می کند. به طور خاص، با اجرای جدید برخی از ویژگی ها مانند untie word embedding، rotary embedding، RMSNorm و فعال سازی Swiglu، از اسکریپت عمومی استفاده می کنیم. نورون GPT Megatron-LM برای پشتیبانی از اسکریپت آموزشی Llama 2.

روش آموزش سطح بالا ما به شرح زیر است: برای محیط آموزشی خود، از یک خوشه چند نمونه ای که توسط سیستم SLURM مدیریت می شود برای آموزش توزیع شده و زمان بندی تحت چارچوب NeMo استفاده می کنیم.

ابتدا مجموعه داده های آموزشی و مدل Llama 2 را دانلود کرده و با استفاده از توکنایزر Llama 2 آنها را پیش پردازش کنید. به عنوان مثال، برای استفاده از مجموعه داده RedPajama، از دستور زیر استفاده کنید:

wget https://data.together.xyz/redpajama-data-1T/v1.0.0/book/book.jsonl python nemo/scripts/nlp_language_modeling/preprocess_data_for_megatron.py

برای راهنمایی دقیق در مورد دانلود مدل ها و استدلال اسکریپت پیش پردازش به ادامه مطلب مراجعه کنید مجموعه داده و توکنایزر LlamaV2 را دانلود کنید.

سپس مدل را کامپایل کنید:

sbatch --nodes 4 compile.slurm ./llama_7b.sh

پس از کامپایل شدن مدل، کار آموزشی را با اسکریپت زیر اجرا کنید که از قبل با بهترین پیکربندی و هایپرپارامترها برای Llama 2 بهینه شده است (که در کد مثال موجود است):

sbatch --nodes 4 run.slurm ./llama_7b.sh

در نهایت، ما TensorBoard را برای پیگیری پیشرفت آموزش نظارت می کنیم:

tensorboard --logdir ./

برای مثال کامل کد و اسکریپت هایی که ذکر کردیم، به Llama 7B مراجعه کنید آموزش و کد NeMo در Neuron SDK برای طی مراحل دقیق تر.

آزمایش های تنظیم دقیق

ما مدل 7B را روی مجموعه داده‌های OSCAR (Open Super-large Crawled ALMAnaCH Corpus) و QNLI (NLI پاسخ‌گوی پرسش) در یک محیط Neuron 2.12 (PyTorch) به‌خوبی تنظیم کردیم. برای هر 2,000 و 4,000 طول دنباله، برخی از تنظیمات را بهینه کردیم، مانند batchsize و gradient_accumulation، برای کارایی آموزش به‌عنوان یک استراتژی تنظیم دقیق، تنظیم دقیق تمام پارامترها (حدود 500 مرحله) را اتخاذ کردیم، که می‌توان آن را به پیش‌آموزش با مراحل طولانی‌تر و مجموعه داده‌های بزرگ‌تر (مثلاً 1T RedPajama) گسترش داد. همچنین می‌توان توازی توالی را فعال کرد تا به NeMo Megatron اجازه دهد تا مدل‌های با طول دنباله بزرگ‌تر 4,000 را با موفقیت تنظیم کند. جدول زیر نتایج پیکربندی و توان عملیات تنظیم دقیق Llama 7B را نشان می دهد. با افزایش تعداد نمونه ها تا 4، توان عملیاتی تقریباً به صورت خطی مقیاس می شود.

کتابخانه توزیع شده مجموعه داده ها طول دنباله تعداد موارد تانسور موازی داده موازی خط لوله موازی اندازه دسته جهانی توان عملیاتی (ثانیه در ثانیه)
نورون نمو مگاترون اسکار 4096 1 8 4 1 256 3.7
. . 4096 2 8 4 1 256 7.4
. . 4096 4 8 4 1 256 14.6
. QNLI 4096 4 8 4 1 256 14.1

آخرین مرحله بررسی دقت با مدل پایه است. ما یک اسکریپت مرجع برای آزمایش‌های GPU پیاده‌سازی کردیم و منحنی‌های آموزشی برای GPU و Trainium مطابق شکل زیر را تأیید کردیم. شکل منحنی‌های ضرر را در تعداد مراحل آموزشی در مجموعه داده QNLI نشان می‌دهد. دقت ترکیبی برای GPU (آبی) و bf16 با گرد کردن تصادفی پیش‌فرض برای Trainium (نارنجی) به کار گرفته شد.

منحنی آموزش

نتیجه

در این پست، ما نشان دادیم که Trainium عملکرد بالا و تنظیم دقیق مقرون به صرفه Llama 2 را ارائه می‌دهد. برای اطلاعات بیشتر در مورد استفاده از Trainium برای پیش‌آموزش توزیع شده و تنظیم دقیق مدل‌های هوش مصنوعی تولیدی خود با استفاده از NeMo Megatron، به ادامه مطلب مراجعه کنید. مرجع نورون AWS برای NeMo Megatron.


درباره نویسنده

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.هائو ژو یک دانشمند محقق با Amazon SageMaker است. قبل از آن، او روی توسعه روش‌های یادگیری ماشینی برای تشخیص تقلب برای Amazon Fraud Detector کار می‌کرد. او مشتاق به کارگیری تکنیک‌های یادگیری ماشین، بهینه‌سازی و هوش مصنوعی برای مشکلات مختلف دنیای واقعی است. او دارای مدرک دکترای مهندسی برق از دانشگاه نورث وسترن است.

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.کارتیک گوپالسوامی یک دانشمند کاربردی با AWS است. قبل از AWS، او به عنوان یک دانشمند در آزمایشگاه‌های Uber و Walmart با تمرکز عمده روی بهینه‌سازی اعداد صحیح مختلط کار می‌کرد. در اوبر، او بر بهینه سازی شبکه حمل و نقل عمومی با محصولات SaaS درخواستی و سواری های مشترک تمرکز کرد. او در آزمایشگاه والمارت روی قیمت گذاری و بهینه سازی بسته بندی کار می کرد. Karthick دارای مدرک دکترا در مهندسی صنایع و سیستم ها با مدرک تحصیلی جزئی در تحقیقات عملیاتی از دانشگاه ایالتی کارولینای شمالی است. تحقیقات او بر روی مدل‌ها و روش‌هایی متمرکز است که تحقیقات عملیاتی و یادگیری ماشین را ترکیب می‌کنند.

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.شین هوانگ یک دانشمند کاربردی ارشد برای آمازون SageMaker JumpStart و آمازون SageMaker الگوریتم های داخلی است. او بر توسعه الگوریتم‌های یادگیری ماشینی مقیاس‌پذیر تمرکز دارد. علایق تحقیقاتی او در زمینه پردازش زبان طبیعی، یادگیری عمیق قابل توضیح بر روی داده های جدولی، و تجزیه و تحلیل قوی خوشه بندی ناپارامتری فضا-زمان است. او مقالات زیادی را در کنفرانس‌های ACL، ICDM، KDD، و انجمن آماری سلطنتی: سری A منتشر کرده است.

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.پارک یانگسوک Sr. یک دانشمند کاربردی در آزمایشگاه AWS Annapurna است که بر روی توسعه و آموزش مدل های پایه بر روی شتاب دهنده های هوش مصنوعی کار می کند. قبل از آن، دکتر پارک روی تحقیق و توسعه برای آمازون Forecast در آزمایشگاه هوش مصنوعی AWS به عنوان دانشمند اصلی کار می کرد. تحقیقات او در تعامل بین یادگیری ماشین، مدل‌های بنیادی، بهینه‌سازی و یادگیری تقویتی نهفته است. او بیش از 20 مقاله بررسی شده را در مکان های برتر از جمله ICLR، ICML، AISTATS و KDD با خدمات سازماندهی کارگاه آموزشی و ارائه آموزش در زمینه سری های زمانی و آموزش LLM منتشر کرده است. قبل از پیوستن به AWS، دکترای مهندسی برق را از دانشگاه استنفورد دریافت کرد.

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.یدا وانگ یک دانشمند اصلی در تیم AWS AI آمازون است. علاقه تحقیقاتی او در سیستم ها، محاسبات با کارایی بالا و تجزیه و تحلیل داده های بزرگ است. او در حال حاضر روی سیستم‌های یادگیری عمیق، با تمرکز بر گردآوری و بهینه‌سازی مدل‌های یادگیری عمیق برای آموزش کارآمد و استنتاج، به‌ویژه مدل‌های پایه در مقیاس بزرگ، کار می‌کند. ماموریت این است که مدل‌های سطح بالا را از چارچوب‌های مختلف و پلت‌فرم‌های سخت‌افزاری سطح پایین از جمله پردازنده‌ها، پردازنده‌های گرافیکی و شتاب‌دهنده‌های هوش مصنوعی ایجاد کند تا مدل‌های مختلف بتوانند با عملکرد بالا در دستگاه‌های مختلف اجرا شوند.

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.جون (لوک) هوان دانشمند اصلی در آزمایشگاه هوش مصنوعی AWS است. دکتر هوان روی هوش مصنوعی و علم داده کار می کند. او بیش از 160 مقاله با داوری در کنفرانس ها و مجلات برجسته منتشر کرده است و 11 دانشجوی دکترا فارغ التحصیل شده است. او در سال 2009 جایزه توسعه شغلی اولیه دانشکده NSF را دریافت کرد. قبل از پیوستن به AWS، او در تحقیقات Baidu به عنوان یک دانشمند برجسته و رئیس آزمایشگاه داده های بزرگ بایدو کار می کرد. او StylingAI Inc.، یک استارت‌آپ هوش مصنوعی را تأسیس کرد و در سال‌های 2019-2021 به عنوان مدیر عامل و دانشمند ارشد کار کرد. او قبل از پیوستن به این صنعت، استاد چارلز ای و مری جین اسپاهر در بخش EECS در دانشگاه کانزاس بود. از سال 2015 تا 2018، او به عنوان مدیر برنامه در NSF ایالات متحده مسئول برنامه کلان داده آن کار کرد.

Fast and cost-effective LLaMA 2 fine-tuning with AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.شروتی کپرکار مدیر ارشد بازاریابی محصول در AWS است. او به مشتریان کمک می‌کند تا زیرساخت‌های محاسباتی شتاب‌دهی آمازون EC2 را برای نیازهای یادگیری ماشین خود کاوش، ارزیابی و استفاده کنند.

تمبر زمان:

بیشتر از آموزش ماشین AWS