کتاب Natural Language Processing with Transformers نسخه اول با نام کامل Building Language Applications with Hugging Face یک منبع فوقالعاده برای درک پلتفرم Transformers میباشد. این کتاب در 11 فصل به آموزش NLP با این ابزار قدرتمند میپردازد.
در ادامه مقدمهای از کتاب Natural Language Processing with Transformers را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Natural Language Processing with Transformers:
از زمان معرفی آنها در سال 2017، ترانسفورماتورها به عنوان استانداردی واقعی برای مقابله با طیف گستردهای از وظایف پردازش زبان طبیعی (NLP) در دانشگاه و صنعت تبدیل شدهاند. بدون توجه به آن، احتمالاً امروز با یک ترانسفورماتور ارتباط برقرار کردهاید: اکنون Google از BERT برای تقویت موتور جستجوی خود با درک بهتر پرس و جوهای کاربران استفاده میکند.
به طور مشابه، خانواده ترانسفورماتور GPT از OpenAI بارها و بارها به دلیل توانایی خود در ایجاد متن و تصاویر شبیه به انسان در سرتیتر رسانهها قرار گرفتهاند. این ترانسفورماتورها در حال حاضر برنامههای کاربردی مانند GitHub’s Copilot را تغذیه میکنند، که همانطور که در شکل بعدی نشان داده شده است میتواند یک نظر را به کد منبع تبدیل کند که به طور خودکار یک شبکه عصبی را برای شما آموزش میدهد!
بنابراین ترانسفورماتورها که تقریباً یک شبه زمینه را تغییر دادهاند، چیست؟ مانند بسیاری از پیشرفتهای علمی بزرگ، این نقطه اوج چندین ایده بود مانند توجه، انتقال یادگیری و افزایش شبکههای عصبی بود که در آن زمان در جامعه تحقیقاتی نفوذ کرده بود.
اما یک روش جدید فانتزی به تنهایی برای جلب توجه در صنعت کافی نیست – همچنین ابزارهایی را برای دسترسی به آن میطلبد. کتابخانه Hugging Face Transformers و اکوسیستم اطراف آن به این درخواست پاسخ دادند و به پزشکان کمک کردند تا به راحتی از مدلها استفاده کنند،
آموزش اشتراکگذاری استفاده از ترانسفورماتورها را در صنعت بسیار تسریع کرده است. امروزه بیش از 1000 شرکت از این کتابخانه برای ایجاد ترانسفورماتور در حال استفاده میباشند و در طول کتاب Natural Language Processing with Transformers ما شما را در مورد نحوه آموزش و بهینهسازی این مدلها برای کاربردهای عملی راهنمایی میکنیم.
داستان مبدأ Transformers
در سال 2017 محققان در گوگل مقالهای منتشر کردند که معماری شبکه عصبی جدیدی را برای مدلسازی توالی پیشنهاد میکرد. این معماری که Transformer نامیده میشود، از نظر کیفیت ترجمه و هزینه آموزش، در کارهای ترجمه ماشینی از شبکههای عصبی مکرر (RNNs) بهتر عمل میکند.
به موازات آن، یک روش یادگیری انتقال مؤثر به نام ULMFiT2 نشان داد که پیش آموزش شبکههای حافظه بلند مدت (LSTM) با هدف مدلسازی زبان در یک بدن بسیار بزرگ و متنوع، و سپس تنظیم دقیق بر روی یک کار هدف میتواند طبقهبندیکنندههای متنی قوی به همراه دادههای دارای برچسب اندک ایجاد کند.
این پیشرفتها کاتالیزور دو ترانسفورماتور شناخته شده امروزی بودند: GPT و BERT. با ترکیب معماری Transformer با پیش آموزش مدل زبان، این مدلها نیاز به آموزش معماریهای خاص وظیفه را از ابتدا برطرف کردند و تقریباً همه معیارهای NLP را با اختلاف قابل توجهی شکستند. از زمان انتشار GPT و BERT، یک باغ وحش واقعی از مدلهای ترانسفورماتور ظاهر شده است و جدول زمانی وقایع اخیر در شکل بعدی نشان داده شده است.
برای درک آنچه در مورد این رویکرد که با ترکیب مجموعه دادههای بسیار بزرگ و معماری جدید میباشد ما پا را فراتر میگذاریم:
- چارچوب رمزگذار-رمزگشا
- مکانیسمهای توجه
- انتقال یادگیری
همچنین شما میتوانید علاوه بر کتاب Natural Language Processing with Transformers، برای آشنایی بیشتر با NLP در زبان برنامهنویسی پایتون از کتاب Python Deep Learning نیز استفاده نمائید.
این کتاب برای چه افرادی است؟
کتاب Natural Language Processing with Transformers برای دانشمندان داده و مهندسین یادگیری ماشین نوشته شده است که ممکن است در مورد پیشرفتهای اخیر مربوط به ترانسفورماتورها شنیده باشند، اما فاقد یک راهنمای عمیق برای کمک به آنها برای تطبیق این مدلها با موارد استفاده خود هستند.
این کتاب قرار نیست مقدمهای برای یادگیری ماشینی باشد، و ما فرض میکنیم که شما در پایتون برنامهنویسی میکنید و درک اولیه از چارچوبهای یادگیری عمیق مانند PyTorch و TensorFlow دارید. ما همچنین فرض میکنیم که شما تجربه عملی با مدلهای آموزشی در GPU دارید. اگرچه این کتاب بر روی PyTorch API ترانسفورماتورها تمرکز دارد، فصل 2 به شما نشان میدهد که چگونه همه نمونهها را به TensorFlow ترجمه کنید.
منابع زیر پایه مناسبی برای موضوعات مطرح شده در این کتاب فراهم میکند. ما فرض میکنیم دانش فنی شما تقریباً در سطح آنها است:
- یادگیری ماشینی دستی با Scikit-Learn و TensorFlow، توسط Aurélien Géron (O’Reilly)
- آموزش عمیق برای کدنویسها با fastai و PyTorch، توسط جرمی هوارد و سیلوین گوگر (O’Reilly)
- پردازش زبان طبیعی با PyTorch، توسط Delip Rao و Brian McMahan (O’Reilly)
- دوره در آغوش گرفتن صورت، توسط تیم منبع باز در Hugging Face
آنچه شما یاد خواهید گرفت:
هدف کتاب Natural Language Processing with Transformers این است که شما را قادر سازد برنامههای کاربردی زبان خود را بسازید. برای این منظور، بر موارد استفاده عملی تمرکز میکند و تنها در صورت لزوم به تئوری میپردازد. سبک کتاب به صورت عملی است و ما به شما توصیه میکنیم که خودتان نمونههای کد را آزمایش کنید.
کتاب Natural Language Processing with Transformers تمام کاربردهای اصلی ترانسفورماتورها در NLP را با اختصاص هر فصل (به استثنای چند مورد) به یک کار، همراه با یک مورد استفاده واقعی و مجموعه داده، پوشش میدهد. هر فصل همچنین مفاهیم اضافی را معرفی میکند. در اینجا یک نمای کلی در سطح بالا از وظایف و موضوعاتی است که ما پوشش خواهیم داد:
فصل 1، Hello Transformers، ترانسفورماتورها را معرفی میکند و آنها را در متن قرار میدهد. همچنین مقدمهای بر اکوسیستم Hugging Face ارائه میکند.
فصل 2 کتاب Natural Language Processing with Transformers، طبقهبندی متن، بر وظیفه تحلیل احساسات (یک مشکل رایج طبقهبندی متن) تمرکز میکند و Trainer API را معرفی میکند.
فصل 3، آناتومی ترانسفورماتور، با عمق بیشتری به معماری ترانسفورماتور میپردازد تا شما را برای فصلهای بعدی آماده کند.
فصل 4 کتاب Natural Language Processing with Transformers، شناسایی موجودیت نامگذاری شده چند زبانه، بر وظیفه شناسایی موجودیتها در متون به زبانهای مختلف (یک مشکل طبقهبندی نشانه) تمرکز دارد.
فصل 5، تولید متن، توانایی مدلهای ترانسفورماتور برای تولید متن را بررسی میکند و استراتژیها و معیارهای رمزگشایی را معرفی میکند.
فصل 6 کتاب Natural Language Processing with Transformers، خلاصهسازی، کار پیچیده توالی به ترتیب خلاصهسازی متن را بررسی میکند و معیارهای مورد استفاده برای این کار را بررسی میکند.
فصل 7، پاسخ به سؤال، بر ایجاد یک سیستم پاسخگویی سؤال مبتنی بر مرور تمرکز دارد و بازیابی با Haystack را معرفی میکند.
فصل 8 کتاب Natural Language Processing with Transformers، ساخت ترانسفورماتورهای کارآمد در تولید، بر عملکرد مدل تمرکز دارد. ما به وظیفه تشخیص قصد (نوعی مسئله طبقهبندی توالی) نگاه میکنیم و تکنیکهایی مانند تقطیر دانش، کوانتیزاسیون و هرس را بررسی میکنیم.
فصل 9 کتاب Natural Language Processing with Transformers، «برخورد با برچسبهای کم یا بدون برچسب»، به راههایی برای بهبود عملکرد مدل در غیاب مقادیر زیادی از دادههای برچسبگذاری شده میپردازد. ما یک برچسبگذاری مسائل GitHub میسازیم و تکنیکهایی مانند طبقهبندی صفر شات و افزایش دادهها را بررسی میکنیم.
فصل 10 کتاب Natural Language Processing with Transformers، آموزش ترانسفورماتورها از ابتدا، به شما نشان میدهد که چگونه یک مدل برای تکمیل خودکار کد منبع پایتون از ابتدا بسازید و آموزش دهید. ما به پخش مجموعه داده و آموزش در مقیاس بزرگ نگاه خواهیم کرد و توکنایزر خود را خواهیم ساخت.
فصل 11، مسیرهای آینده، چالشهایی را که ترانسفورماتورها با آن روبرو هستند و برخی از مسیرهای هیجانانگیز جدید را که تحقیقات در این زمینه در حال انجام است، بررسی میکند.
Transformers چندین لایه انتزاعی را برای استفاده و آموزش مدلهای ترانسفورماتور ارائه میدهد. ما با خطوط لوله با استفاده آسان شروع میکنیم که به ما امکان میدهد نمونههای متنی را از طریق مدلها عبور دهیم و پیشبینیها را فقط در چند خط کد بررسی کنیم.
سپس به توکن سازها، کلاسهای مدل و API Trainer میرویم که به ما امکان میدهد مدلهایی را برای موارد استفاده خودمان آموزش دهیم. بعداً به شما نشان خواهیم داد که چگونه Trainer را با کتابخانه Accelerate جایگزین کنید، که به ما کنترل کامل بر حلقه آموزشی میدهد و به ما امکان میدهد ترانسفورماتورهای مقیاس بزرگ را کاملاً از ابتدا آموزش دهیم! اگرچه هر فصل عمدتاً مستقل است، اما دشواری کارها در فصلهای بعدی افزایش مییابد. به همین دلیل، توصیه میکنیم قبل از اینکه به موضوع مورد علاقه منشعب شوید، از فصلهای 1 و 2 شروع کنید.
علاوه بر Transformers و Accelerate، ما همچنین از مجموعه دادهها که بهطور یکپارچه با کتابخانههای دیگر ادغام میشوند، بهشدت استفاده خواهیم کرد. Datasets عملکردی مشابه Pandas برای پردازش داده ارائه میدهد، اما از ابتدا برای مقابله با مجموعه دادههای بزرگ و یادگیری ماشین طراحی شده است.
با استفاده از این ابزار، شما همه چیز مورد نیاز خود را برای مقابله با تقریباً هر چالش NLP دارید!
سرفصلهای کتاب Natural Language Processing with Transformers:
- Chapter 1. Hello Transformers
- Chapter 2. Text Classification
- Chapter 3. Transformer Anatomy
- Chapter 4. Question Answering
- Chapter 5. Making Transformers Efficient in Production
- Chapter 6. Multilingual Named Entity Recognition
- Chapter 7. Dealing With Few to No Labels
- Chapter 8. Text Generation
- Chapter 9. Summarization
- Chapter 10. Training Transformers from Scratch
- Chapter 11. Future Directions
فایل کتاب Natural Language Processing with Transformers را میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.