کتاب Accelerate Model Training with PyTorch 2.X: Build more accurate models by boosting the model training process (تسریع آموزش مدل با PyTorch 2.X: با تقویت فرآیند آموزش مدل، مدلهای دقیقتر بسازید) جهت یادگیری مدلهای یادگیری عمیق با استفاده از کتابخانه پایتون در 3 بخش مختلف خواهد بود.
در ادامه مقدمهای از کتاب Accelerate Model Training with PyTorch 2.X را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Accelerate Model Training with PyTorch 2.X:
سلام! من یک تحلیلگر سیستم و استاد دانشگاهی متخصص در محاسبات با عملکرد بالا (HPC) هستم. بله درست خواندید! من یک دانشمند داده نیستم. بنابراین، احتمالاً از خود میپرسید که چرا من تصمیم گرفتم کتابی درباره یادگیری ماشین بنویسم. نگران نباشید؛ توضیح خواهم داد.
سیستمهای HPC شامل منابع محاسباتی قدرتمندی هستند که برای حل مشکلات پیچیده کاملاً یکپارچه شدهاند. هدف اصلی HPC به کارگیری منابع، تکنیکها و روشها برای تسریع در اجرای وظایف محاسباتی بسیار فشرده است. به طور سنتی، محیطهای HPC برای اجرای برنامههای علمی از زیستشناسی، فیزیک، شیمی و بسیاری از زمینههای دیگر استفاده میشود.
اما این در چند سال گذشته تغییر کرده است. امروزه سیستمهای HPC وظایفی فراتر از کاربردهای علمی را انجام میدهند. در واقع، برجستهترین حجم کاری غیرعلمی اجرا شده در محیطهای HPC دقیقاً موضوع کتاب Accelerate Model Training with PyTorch 2.X است: فرآیند ساخت مدلهای شبکه عصبی پیچیده.
به عنوان یک دانشمند داده، شما بهتر از هر کس دیگری میدانید که آموزش مدلهای پیچیده چقدر طول میکشد و چند بار نیاز به آموزش مجدد مدل برای ارزیابی سناریوهای مختلف دارید. به همین دلیل، استفاده از سیستمهای HPC برای تسریع برنامههای هوش مصنوعی (AI) (نه تنها برای آموزش، بلکه برای استنتاج) منطقهای است که نیاز به رشد دارد.
این رابطه نزدیک بین هوش مصنوعی و HPC باعث علاقه من به غواصی در زمینههای یادگیری ماشین و هوش مصنوعی شد. با انجام این کار، میتوانم بهتر بفهمم که چگونه HPC برای تسریع این برنامهها اعمال شده است.
بنابراین، ما اینجا هستیم. کتاب Accelerate Model Training with PyTorch 2.X را برای به اشتراک گذاشتن آنچه در مورد این موضوع آموختهام نوشتم. ماموریت من در اینجا این است که با استفاده از تکنیکها و روشهای بهینهسازی با استفاده از منابع محاسباتی منفرد یا چندگانه، دانش لازم را برای آموزش سریعتر مدل خود به شما بدهم.
با تسریع در روند آموزش، میتوانید روی آنچه واقعاً مهم است تمرکز کنید: ساخت مدلهای خیرهکننده!
کتاب Accelerate Model Training with PyTorch 2.X برای چه کسی است؟
این کتاب برای دانشمندان داده سطح متوسط، مهندسان و توسعهدهندگانی است که میخواهند بدانند چگونه از PyTorch برای تسریع روند آموزش مدلهای یادگیری ماشین خود استفاده کنند. اگرچه آنها مخاطبان اصلی این مطالب نیستند، اما تحلیلگران سیستم مسئول مدیریت و ارائه زیرساخت برای بارهای کاری هوش مصنوعی نیز اطلاعات ارزشمندی را در کتاب Accelerate Model Training with PyTorch 2.X خواهند یافت.
دانش اولیه یادگیری ماشین، PyTorch و Python برای استفاده حداکثری از این مطالب مورد نیاز است. با این حال، هیچ الزامی برای داشتن درک قبلی از محاسبات توزیع شده، شتاب دهندهها یا پردازندههای چند هستهای وجود ندارد.
آنچه کتاب Accelerate Model Training with PyTorch 2.X پوشش میدهد:
فصل ۱، ساختارشکنی فرآیند آموزش، یک نمای کلی از نحوه عملکرد فرآیند آموزش در زیر هود ارائه میدهد، الگوریتم آموزشی را توصیف میکند و مراحل اجرا شده توسط این فرآیند را پوشش میدهد. این فصل همچنین توضیح میدهد که چگونه عواملی مانند فراپارامترها، عملیات و پارامترهای شبکه عصبی بر بار محاسباتی فرآیند آموزش تأثیر میگذارند.
فصل ۲، مدلهای آموزشی سریعتر، یک نمای کلی از رویکردهای ممکن برای تسریع روند آموزش ارائه میکند. در این فصل چگونگی اصلاح لایههای کاربردی و محیطی پشته نرمافزار برای کاهش زمان آموزش بحث میشود. علاوه بر این، مقیاسپذیری عمودی و افقی را به عنوان گزینه دیگری برای بهبود عملکرد با افزایش تعداد منابع توضیح میدهد.
فصل ۳، کامپایل مدل، مروری بر کامپایل API جدید معرفی شده در PyTorch ۲.۰ ارائه میدهد. این فصل تفاوتهای بین حالتهای مشتاق و گراف را پوشش میدهد و نحوه استفاده از Compile API برای تسریع فرآیند ساخت مدل را شرح میدهد. این فصل همچنین گردش کار کامپایل و اجزای درگیر در فرآیند کامپایل را توضیح میدهد.
فصل ۴، استفاده از کتابخانههای تخصصی، یک نمای کلی از کتابخانههای استفاده شده توسط PyTorch برای اجرای وظایف تخصصی ارائه میدهد. این فصل نحوه نصب و پیکربندی OpenMP را برای مقابله با multithreading و IPEX برای بهینهسازی فرآیند آموزش در CPU اینتل توضیح میدهد.
فصل ۵، ساخت یک خط لوله داده کارآمد، یک نمای کلی از نحوه ایجاد یک خط لوله داده کارآمد برای حفظ کارکرد GPU تا حد امکان ارائه میدهد. علاوه بر توضیح مراحل اجرا شده در خط لوله داده، این فصل از کتاب Accelerate Model Training with PyTorch 2.X، چگونگی تسریع فرآیند بارگذاری داده با بهینهسازی انتقال داده GPU و افزایش تعداد کارگران در خط لوله داده را شرح میدهد.
فصل ۶، سادهسازی مدل، مروری بر چگونگی سادهسازی یک مدل با کاهش تعداد پارامترهای شبکه عصبی بدون به خطر انداختن کیفیت مدل ارائه میکند. این فصل تکنیکهای مورد استفاده برای کاهش پیچیدگی مدل، مانند هرس و فشردهسازی مدل را توضیح میدهد و نحوه استفاده از جعبه ابزار Microsoft NNI را برای سادهسازی آسان مدل توضیح میدهد.
فصل ۷، اتخاذ دقت ترکیبی، مروری بر چگونگی اتخاذ یک استراتژی دقیق ترکیبی برای شکستن فرآیند آموزش مدل بدون جریمه کردن دقت مدل ارائه میکند. این فصل به طور خلاصه نمایش عددی را در سیستمهای کامپیوتری توضیح میدهد و نحوه استفاده از رویکرد دقیق ترکیبی خودکار PyTorch را شرح میدهد.
فصل ۸، آموزش توزیع شده در یک نگاه، نمای کلی از مفاهیم اساسی آموزش توزیع شده را ارائه میدهد. این فصل از کتاب Accelerate Model Training with PyTorch 2.X، بیشترین استراتژیهای موازی اتخاذ شده را ارائه میکند و گردش کار اساسی برای پیادهسازی آموزش توزیعشده در PyTorch را توصیف میکند.
فصل ۹، آموزش با چندین CPU، یک نمای کلی از نحوه کدنویسی و اجرای آموزش توزیع شده در چندین CPU روی یک ماشین واحد با استفاده از یک رویکرد کلی و اینتل oneCCL برای بهینهسازی اجرا در پلتفرمهای اینتل ارائه میدهد.
فصل ۱۰، آموزش با پردازندههای گرافیکی چندگانه، یک نمای کلی از نحوه کدنویسی و اجرای آموزش توزیعشده در یک محیط چند GPU روی یک دستگاه ارائه میدهد. این فصل از کتاب Accelerate Model Training with PyTorch 2.X، ویژگیهای اصلی یک محیط چند GPU را ارائه میکند و نحوه کدنویسی و راهاندازی آموزش توزیعشده روی چندین GPU با استفاده از NCCL، پیشفرض ارتباط پیشفرض برای GPUهای NVIDIA را توضیح میدهد.
فصل ۱۱، آموزش با چندین ماشین، یک نمای کلی از نحوه کدنویسی و اجرای آموزش توزیع شده در چندین GPU در چندین ماشین ارائه میدهد. علاوه بر توضیح مقدماتی خوشههای محاسباتی، این فصل نحوه کدنویسی و راهاندازی آموزش توزیعشده در بین چندین ماشین را با استفاده از Open MPI بهعنوان راهانداز و NCCL بهعنوان پشتوانه ارتباطی نشان میدهد.
سرفصلهای کتاب Accelerate Model Training with PyTorch 2.X:
- Accelerate Model Training with PyTorch 2.X
- Foreword
- Contributors
- About the author
- About the reviewer
- Preface
- Part 1: Paving the Way
- Chapter 1: Deconstructing the Training Process
- Chapter 2: Training Models Faster
- Part 2: Going Faster
- Chapter 3: Compiling the Model
- Chapter 4: Using Specialized Libraries
- Chapter 5: Building an Efficient Data Pipeline
- Chapter 6: Simplifying the Model
- Chapter 7: Adopting Mixed Precision
- Part 3: Going Distributed
- Chapter 8: Distributed Training at a Glance
- Chapter 9: Training with Multiple CPUs
- Chapter 10: Training with Multiple GPUs
- Chapter 11: Training with Multiple Machines
- Index
- Other Books You May Enjoy
جهت دانلود کتاب Accelerate Model Training with PyTorch 2.X میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.