T5 (مدل زبان)

از testwiki
پرش به ناوبری پرش به جستجو

الگو:جعبه اطلاعات نرم‌افزارT5 (Text-to-Text Transfer Transformer) شامل مجموعه‌ای از مدل‌های زبان بزرگ است که توسط هوش مصنوعی گوگل در سال 2019 ارائه شد. این مدل‌ها بر پایه معماری ترانسفورمر طراحی شده‌اند و ساختاری رمزگذار-رمزگشا دارند. در این ساختار، بخش رمزگذار متن ورودی را تحلیل کرده و پردازش می‌کند، در حالی که بخش رمزگشا وظیفه تولید متن خروجی را بر عهده دارد. این طراحی برای حل طیف گسترده‌ای از مسائل پردازش زبان طبیعی (NLP) با عملکرد بالا توسعه یافته است.

مدل‌های T5 ابتدا با استفاده از مجموعه‌های عظیمی از داده‌های متنی و کد، پیش‌آموزش داده می‌شوند. این فرایند آنها را قادر می‌سازد وظایف مختلف مبتنی بر متن را که مشابه آموزش اولیه‌شان است، به‌خوبی انجام دهند. همچنین، این مدل‌ها انعطاف‌پذیر هستند و می‌توان با تنظیم دقیق آنها، برای وظایف جدید یا متفاوت نیز استفاده کرد. این ویژگی باعث می‌شود که T5 در بسیاری از حوزه‌های پردازش زبان طبیعی کاربرد داشته باشد.

مدل‌های T5 در زمینه‌های مختلفی کاربرد دارند، از جمله طراحی ربات‌های گفتگو، سیستم‌های پیشرفته ترجمه ماشینی، ابزارهای خلاصه‌سازی خودکار متن، تولید کدهای برنامه‌نویسی، و حتی در روباتیک. این تنوع کاربرد به دلیل معماری انعطاف‌پذیر و توانایی بالای این مدل در پردازش زبان طبیعی و درک متن است.

آموزش دادن

مدل‌های T5 ابتدا بر روی مجموعه داده C4 (Corpus Crawled Colossal Clean)، شامل متن و کد جمع‌آوری‌شده از اینترنت، پیش‌آموزش داده شدند. این فرایند به مدل توانایی درک زبان عمومی و تولید متن را می‌دهد. پس از پیش‌آموزش، مدل‌ها قابل تنظیم برای وظایف خاص هستند، به‌طوری‌که می‌توانند دانش آموخته‌شده را برای عملکرد بهتر در برنامه‌های خاص مانند ترجمه، خلاصه‌سازی یا تولید متن تطبیق دهند. این انعطاف‌پذیری، مدل‌های T5 را برای کاربردهای متنوعی مناسب می‌سازد.

مدل‌های T5 برای بسیاری از وظایف پردازش زبان طبیعی در قالبی ساده و یکپارچه طراحی شده‌اند. در این روش، هر وظیفه به صورت <متن ورودی> -> <متن خروجی> فرموله شده است. این رویکرد باعث شده تا مدل بتواند مسائل متنوعی را با یک ساختار مشترک حل کند، از جمله ترجمه، خلاصه‌سازی، و تولید پاسخ برای سوالات. این فرمت متن به متن، قابلیت استفاده و آموزش مدل را بسیار ساده‌تر کرده است.

چگونه یک T5 را می توان برای یک کار خلاصه سازی به خوبی تنظیم کرد.[۱]

چند نمونه عبارتند از:

بازیابی متن خراب: Thank you <X> me to your party <Y> week. -> <X> for inviting <Y> last <Z> ، که در آن <Z> به معنای "پایان خروجی" است، و <X> و <Y> نشان‌دهنده جاهای خالی هستند که در گزارش اصلی "سنتینل" نامیده می‌شوند. .

ترجمه: translate English to German: That is good. -> Das ist gut. .

قضاوت در مورد مقبولیت دستوری یک جمله (جمله CoLA ): The course is jumping well. -> not acceptable

ساختار رمزگذار-رمزگشا T5، ساختار توجه را نشان می دهد. در خود توجهی رمزگذار (مربع پایین)، همه نشانه های ورودی به یکدیگر توجه می کنند. در توجه متقابل رمزگذار-رمزگشا (مستطیل بالایی)، هر نشانه هدف به تمام نشانه های ورودی توجه می کند. در خودتوجهی رمزگشا (مثلث بالایی)، هر نشانه هدف فقط به نشانه های هدف فعلی و گذشته توجه می کند (علت).[۱]

سری T5 شامل چندین مدل با اندازه‌ها و قابلیت‌های متفاوت است، همه ترانسفورماتورهای رمزگذار-رمزگشا ، که در آن رمزگذار متن ورودی را پردازش می‌کند و رمزگشا متن خروجی را تولید می‌کند.

این مدل ها اغلب با تعداد پارامترهایشان متمایز می شوند که نشان دهنده پیچیدگی و ظرفیت بالقوه مدل است. مقاله اصلی [۲] 5 مدل زیر را گزارش کرد:

اسم همه پارامتر ها پارامتر های انکودر پارامتر های دکودر nlayer dmodel dff dkv nhead
کوچک 76,956,160 35,330,816 41,625,344 6 512 2048 64 8
پایه 247,577,856 109,628,544 137,949,312 12 768 3072 64 12
بزرگ 770,567,168 334,939,648 435,627,520 24 1024 4096 64 16
3B 2,884,497,408 1,240,909,824 1,643,587,584 24 1024 16384 128 32
11B 11,340,220,416 4,864,791,552 6,475,428,864 24 1024 65536 128 128

در جدول فوق،

  • nlayer : تعداد لایه ها در رمزگذار. همچنین تعداد لایه ها در رسیور. آنها همیشه تعداد لایه های یکسانی دارند.
  • nhead : تعداد سرهای توجه در هر بلوک توجه.
  • dmodel : ابعاد بردارهای تعبیه شده.
  • dff : ابعاد شبکه پیشخور در هر لایه رمزگذار و رمزگشا.
  • dkv : ابعاد بردارهای کلید و ارزش مورد استفاده در مکانیسم خودتوجهی.

توجه داشته باشید که بر خلاف ترانسفورماتورهای معمولی، مدل های 3B و 11B راضی نیستند dmodel=dkvnhead

در مقایسه با ترانسفورماتور اصلی، از چند تغییر جزئی استفاده می‌کند: نرمال‌سازی لایه‌ها بدون سوگیری افزودنی. قرار دادن نرمال سازی لایه در خارج از مسیر باقیمانده؛ تعبیه موقعیتی نسبی [۳]

برای همه آزمایش‌ها، آنها از توکنایزر WordPiece با اندازه واژگان 32000 استفاده کردند. توکنایزر در ورودی و خروجی هر مدل مشترک است. این بر روی ترکیبی از داده‌های انگلیسی ، آلمانی ، فرانسوی و رومانیایی از مجموعه داده‌های C4 با نسبت 10:1:1:1 آموزش داده شد.

انواع

چندین مدل بعدی از معماری T5 استفاده کردند که برای متمایز کردن آنها از قراردادهای نامگذاری غیر استاندارد استفاده شد. در این بخش سعی شده است موارد اصلی جمع آوری شود. لیست کاملی از انواع منتشر شده توسط Google Brain در مخزن GitHub برای T5X است.[۴]

برخی از مدل ها از ابتدا آموزش می بینند در حالی که برخی دیگر با شروع با یک مدل آموزش دیده قبلی آموزش می بینند. به طور پیش فرض، هر مدل از ابتدا آموزش داده می شود، مگر اینکه در غیر این صورت ذکر شده باشد.

  • T5 کوچک، پایه، بزرگ، 3B، 11B (2019): مدل های اصلی. خطای یادکرد: برچسب بازکنندهٔ <ref> بدشکل است یا نام بدی دارد
  • T5 1.1 کوچک، پایه، بزرگ، XL، XXL: نسخه های بهبود یافته سری اصلی T5. اینها پارامترهای تقریباً برابری دارند. تابع فعال‌سازی به جای ReLU، GEGLU خطای یادکرد: برچسب بازکنندهٔ <ref> بدشکل است یا نام بدی دارد است. 3B و 11B به "XL" و "XXL" تغییر یافتند و شکل آنها تغییر کرد: خطای یادکرد: برچسب بازکنندهٔ <ref> بدشکل است یا نام بدی دارد خطای یادکرد: برچسب بازکنندهٔ <ref> بدشکل است یا نام بدی دارد خطای یادکرد: برچسب بازکنندهٔ <ref> بدشکل است یا نام بدی دارد

خطای یادکرد: برچسب بازکنندهٔ <ref> بدشکل است یا نام بدی دارد

اسم همه پارامتر ها پارامتر های انکودر پارامتر های دکودر nlayer dmodel dff dkv nhead
کوچک 76,961,152 35,332,800 41,628,352 8 512 1024 64 6
پایه 247,577,856 109,628,544 137,949,312 12 768 2048 64 12
بزرگ 783,150,080 341,231,104 441,918,976 24 1024 2816 64 16
3B 2,849,757,184 1,223,527,424 1,626,229,760 24 2048 5120 64 32
11B 11,135,332,352 4,762,310,656 6,373,021,696 24 4096 10240 64 64
    • T5 سازگار با LM (2021): مجموعه‌ای از مدل‌ها (از کوچک تا XXL) که از پست‌های بازرسی سری T5 شروع شدند، اما بیشتر روی 100B توکن اضافی از C4 آموزش دیدند.[۵]
    • سوئیچ ترانسفورماتور (2021): یک نوع ترکیبی از متخصصان T5، با جایگزینی لایه‌های پیش‌خور در بلوک‌های رمزگذار و رمزگشا با مخلوطی از لایه‌های پیش‌خور خبره.[۶][۷]
    • T0 3B, 11B (2021): مجموعه‌ای از مدل‌هایی که از پست‌های بازرسی T5 سازگار با LM شروع می‌شوند و برای انجام وظایف فقط بر اساس دستور کار ( نفر شات ) آموزش داده می‌شوند.[۸] ورودی های مختلف در این سری از داده های تنظیم دقیق متفاوتی استفاده می کنند.[۹]
    • ByT5 (2021): نسخه سطح بایت T5، آموزش داده شده بر روی مجموعه داده mC4 (چند زبانه C4).[۱۰] بر روی متن کدگذاری شده به صورت UTF-8 بایت، بدون توکنایزر عمل می کند.
    • Flan-T5-XL (2022): مدلی که با یک ایست بازرسی T5 XL شروع شد و سپس بر روی مجموعه داده FLAN تنظیم شد .[۱۱][۱۲][۱۳][۱۴]
    • T5X (2022): یک پیاده‌سازی مجدد مبتنی بر JAX از پایگاه کد اصلی T5 . مدل نیست .[۱۵] پایگاه کد اصلی T5 در TensorFlow با MeshTF پیاده سازی شد.[۱۶]
    • UL2 20B (2022): مدلی با معماری مشابه سری T5 ، اما تا 20B مقیاس‌بندی شده و با هدف "مخلوط زدا" در C4 آموزش دیده است.[۱۷] این بر روی یک خوشه TPU به طور تصادفی آموزش داده شد، زمانی که یک دوره آموزشی به طور تصادفی به مدت یک ماه در حال اجرا ماند.[۱۸]
    • Flan-UL2 20B (2022): دستورالعمل UL2 20B بر روی مجموعه داده FLAN تنظیم شده است.[۱۳][۱۷]
    • Pile-T5 (2024): دارای همان معماری T5 است، با این تفاوت که از توکنایزر Llama استفاده می کند. در The Pile آموزش داده شد. این در اندازه های پایه، بزرگ، XL، XXL عرضه شد.[۱۹]

برنامه های کاربردی

مدل T5 خود یک مدل رمزگذار-رمزگشا است که به آن امکان می دهد برای دستورالعمل های زیر استفاده شود. رمزگذار دستورالعمل را رمزگذاری می کند و رمزگشا به صورت خودکار پاسخ را تولید می کند.

رمزگذار T5 را می توان به عنوان رمزگذار متن استفاده کرد، مانند BERT. این یک متن را به دنباله ای از بردارهای اعداد واقعی رمزگذاری می کند، که می تواند برای برنامه های کاربردی پایین دست استفاده شود. برای مثال، Google Imagen [۲۰] از T5-XXL به عنوان رمزگذار متن استفاده می‌کند، و بردارهای متن کدگذاری‌شده به عنوان شرطی‌سازی در مدل انتشار استفاده می‌شوند. به عنوان مثال دیگر، مدل انتشار AuraFlow [۲۱] از Pile-T5-XL استفاده می کند.

مراجع

HS & PG

Yan