T5 (Text-to-Text Transfer Transformer) (FA)
T5 (Text-to-Text Transfer Transformer) — خانوادهای از مدلهای زبانی بزرگ است که توسط پژوهشگران Google AI توسعه یافته و در سال ۲۰۱۹ معرفی شده است[1]. نوآوری کلیدی T5، چارچوب یکپارچهی «text-to-text» است که هر مسئلهی پردازش زبان طبیعی (NLP) را بهصورت تبدیل یک دنبالهی متنی به دنبالهی متنی دیگر در نظر میگیرد. این رویکرد امکان استفاده از یک مدل واحد، یک تابع زیان واحد و یک روش آموزش واحد را برای طیف گستردهای از وظایف، از جمله ترجمه، خلاصهسازی، پاسخ به سؤال و طبقهبندی، فراهم کرد[2].
این مدل بر پایهی معماری استاندارد transformer از نوع «encoder-decoder» بنا شده است که آن را از مدلهایی مانند BERT (فقط encoder) و GPT (فقط decoder) متمایز میسازد. پژوهش T5 بهعنوان یک بررسی تجربی گسترده طراحی شد تا روشهای مختلف transfer learning در NLP را بهصورت سیستماتیک مطالعه و مقایسه کند، نه اینکه یک روش کاملاً جدید ارائه دهد[1].
پارادایم «Text-to-Text»
ایدهی محوری T5 این است که تمام وظایف در یک قالب یکسان فرموله میشوند. مدل یک متن بهعنوان ورودی دریافت میکند و یک متن بهعنوان خروجی تولید میکند. برای اینکه مدل بتواند وظایف مختلف را از هم تشخیص دهد، یک پیشوند-دستورالعمل متنی خاص به دنبالهی ورودی افزوده میشود[2].
- ترجمه: `translate English to German: That is good.` → `Das ist gut.`
- طبقهبندی احساسات: `sst2 sentence: a very exciting film.` → `positive`
- خلاصهسازی: `summarize: [متن بلند مقاله]` → `[خلاصهی متن]`
این رویکرد فرآیند بهکارگیری مدل را بهشکل چشمگیری ساده میکند و نیاز به طراحی «سرهای» تخصصی (task-specific heads) برای هر وظیفهی جداگانه را از بین میبرد؛ چیزی که در معماریهایی مانند BERT رایج بود[3].
معماری و مقیاسبندی
معماری encoder-decoder
T5 از معماری استاندارد transformer استفاده میکند که از دو بخش تشکیل شده است[1]:
- Encoder: تمام دنبالهی ورودی را بهطور همزمان پردازش میکند و یک بازنمایی غنی و زمینهآگاه میسازد. همانند BERT، encoder در T5 دوطرفه است.
- Decoder: متن خروجی را token به token (بهشکل خودبازگشتی) تولید میکند و از بازنمایی دریافتشده از encoder بهره میبرد.
این ساختار ترکیبی به T5 امکان میدهد هم وظایف درک زبان و هم وظایف تولید متن را بهطور مؤثر انجام دهد[4].
بهبودهای کلیدی
معماری T5 شامل چندین تغییر نسبت به مدل اصلی transformer است:
- embeddingهای موقعیتی نسبی: بهجای embeddingهای مطلق سینوسی، T5 از شکل سادهشده اما مؤثری از کدگذاری موقعیت نسبی استفاده میکند؛ در این روش، یک انحراف (bias) اسکالر قابلیادگیری که تنها به فاصلهی نسبی میان tokenها وابسته است، به logitهای attention افزوده میشود[1].
- نرمالسازی لایه (Layer Norm) اصلاحشده: نرمالسازی از residual connection خارج شده و انحراف جمعی (bias) از آن حذف شده است تا پایداری آموزش افزایش یابد.
مقیاسهای مدل
در مقالهی اصلی، مدل در چندین پیکربندی با تعداد پارامترهای متفاوت ارائه شد که امکان مطالعهی سیستماتیک تأثیر مقیاس را فراهم کرد[5]:
- T5-Small: حدود ۶۰ میلیون پارامتر
- T5-Base: حدود ۲۲۰ میلیون پارامتر
- T5-Large: حدود ۷۷۰ میلیون پارامتر
- T5-3B: حدود ۳ میلیارد پارامتر
- T5-11B: حدود ۱۱ میلیارد پارامتر
پژوهش نشان داد که افزایش مقیاس مدل یکی از مطمئنترین روشها برای بهبود عملکرد آن است[1].
پیشآموزش: dataset C4 و وظیفهی Span Corruption
وظیفهی Span Corruption
برای پیشآموزش T5، وظیفهی noise-reduction (denoising) انتخاب شد؛ بهطور مشخص، نوع خاصی از آن به نام خرابی قطعه (span corruption)[6]. این روش به شکل زیر عمل میکند:
- ۱۵٪ از tokenهای متن ورودی بهصورت تصادفی ماسک میشوند.
- برخلاف روش MLM در BERT که tokenهای منفرد را ماسک میکند، در T5 قطعههای پیوستهی کامل (spans) ماسک میشوند.
- هر قطعهی خرابشده با یک token ماسک منحصربهفرد جایگزین میشود (مثلاً `<X>`، `<Y>`).
- مدل آموزش میبیند تا دنبالهای از قطعههای حذفشده را که با ماسکهای مربوطه از هم جدا شدهاند، در خروجی تولید کند.
این رویکرد مدل را مجبور میکند تا دنبالههای کامل متنی را پیشبینی کند، که در مقایسه با مدلسازی زبانی ساده، وظیفهی مؤثرتری برای پیشآموزش بود[1].
Dataset C4 (Colossal Clean Crawled Corpus)
برای بهرهگیری از ظرفیت transfer learning، پژوهشگران مجموعه دادهی متنی بزرگ و با کیفیت پاکسازیشدهای به نام C4 با حجم حدود ۷۵۰ گیگابایت ایجاد کردند[2]. این مجموعه از طریق پاکسازی و فیلترینگ گستردهی corpus وب عمومی Common Crawl به دست آمد[7]. فرآیند پاکسازی شامل حذف موارد تکراری، متنهای قالبی («Lorem ipsum»)، جملات ناقص و همچنین فیلترینگ کلمات رکیک بود[8].
انتقادات به dataset C4
علیرغم هدف اعلامشده برای ایجاد یک corpus «پاک»، فرآیند فیلترینگ C4 به دلیل سوگیریهای سیستماتیک مورد انتقاد قرار گرفت. پژوهشها نشان دادند که فیلتر کلمات رکیک بهطور نامتناسبی متون مرتبط با جوامع LGBTQ+ و همچنین متون به زبان انگلیسی آفریقاییآمریکایی (AAE) را حذف کرد[8]. علاوه بر این، مقدار قابلتوجهی از محتوای توهینآمیز و دارای حق مؤلف در این dataset کشف شد. این مشکلات پیچیدگی ایجاد مجموعه دادههای «باکیفیت» بهشکل عینی و نحوهی بروز سوگیریهای اجتماعی ناخواسته از طریق تصمیمات فنی فیلترینگ را به تصویر میکشند.
نتایج و عملکرد
در زمان انتشار، T5 رکوردهای عملکردی جدیدی (state-of-the-art) در بسیاری از benchmarkها، از جمله GLUE، SuperGLUE، SQuAD و وظایف خلاصهسازی، ثبت کرد[2]. بهویژه مدل T5-11B در SuperGLUE به نتیجهای نزدیک به سطح انسانی دست یافت و توانایی خود را در انجام وظایف نیازمند استدلال پیچیده نشان داد[9]. این نتایج فرضیهی محوری پژوهش را تأیید کرد: ترکیب یک چارچوب یکپارچه، مقیاس بزرگ و مجموعه دادهی باکیفیت، استراتژی بسیار قدرتمندی برای دستیابی به نتایج پیشرفته در NLP است.
تکامل و انواع T5
رویکرد T5 پایهای برای بسیاری از مدلهای بعدی شد:
- mT5: نسخهی چندزبانهی T5 که روی corpus mC4 با پوشش ۱۰۱ زبان آموزش دیده است[10].
- ByT5: نسخهای آزمایشی که بهطور کامل از tokenization صرفنظر میکند و مستقیماً با بایتهای خام UTF-8 کار میکند. این ویژگی آن را در برابر اشتباهات تایپی مقاوم میسازد و امکان پردازش هر زبانی را «بدون نیاز به تنظیمات اضافی» فراهم میکند[11].
- Switch Transformer: نسخهی مقیاسپذیر T5 که معماری Mixture-of-Experts (MoE) را معرفی کرد و امکان افزایش تعداد پارامترها تا تریلیونها را با حفظ هزینههای محاسباتی معقول فراهم ساخت[12].
- FLAN-T5: این مدل معماری جدیدی نیست، بلکه همان T5 استاندارد است که یک مرحلهی اضافی fine-tuning روی صدها وظیفهی فرمولهشده بهصورت دستورالعمل (instruction tuning) را پشت سر گذاشته است. این امر توانایی مدل برای تعمیم به وظایف جدید و ناآشنا در حالت zero-shot (بدون نمونه) را بهطور قابلتوجهی افزایش داده است[13].
- UL2: مدلی که ایدههای T5 را توسعه میدهد و از یک هدف پیشآموزش جدید به نام Mixture of Denoisers استفاده میکند؛ این هدف طرحهای مختلف ماسکگذاری متن را برای بهبود جهانشمولی ترکیب میکند[14].
پیوندها
- مخزن رسمی T5 در GitHub
- مقالهی وبلاگ Google Research دربارهی پژوهش T5
منابع
- Vaswani, A. et al. (2017). Attention Is All You Need. arXiv:1706.03762.
- Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683.
- Xue, L. et al. (2021). mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer. arXiv:2010.11934.
- Dodge, J. et al. (2021). Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus. arXiv:2104.08758.
- Fedus, W. et al. (2021). Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity. arXiv:2101.03961.
- Ni, J. et al. (2021). Sentence-T5: Scalable Sentence Encoders from Pre-trained Text-to-Text Models. arXiv:2108.08877.
- Guo, M. et al. (2021). LongT5: Efficient Text-To-Text Transformer for Long Sequences. arXiv:2112.07916.
- Xue, L. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
- Tay, Y. et al. (2022). UL2: Unifying Language Learning Paradigms. arXiv:2205.05131.
- Chung, H. W. et al. (2022). Scaling Instruction-Finetuned Language Models. arXiv:2210.11416.
- Longpre, S. et al. (2023). The Flan Collection: Designing Data and Methods for Effective Instruction Tuning. arXiv:2301.13688.
یادداشتها
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 Raffel, Colin; Shazeer, Noam; Roberts, Adam; et al. «Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer». Journal of Machine Learning Research. [۱]
- ↑ 2.0 2.1 2.2 2.3 «Exploring Transfer Learning with T5: the Text-To-Text Transfer Transformer». Google Research Blog. [۲]
- ↑ «A Detailed Look At Google's T5 Model in NLP». DhiWise Blog. [۳]
- ↑ «T5 (Text-to-Text Transfer Transformer)». GeeksforGeeks. [۴]
- ↑ «T5». Hugging Face Transformers Documentation. [۵]
- ↑ «T5 (language model)». In Wikipedia. [۶]
- ↑ «C4 Dataset». Papers With Code. [۷]
- ↑ 8.0 8.1 Dodge, J.; Sap, M.; Marasović, A.; et al. «Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus». arXiv. [۸]
- ↑ «Google T5 algorithm scores 88.9 on SuperGLUE languge benchmark, compared to 89.8 human baseline». Reddit, r/linguistics. [۹]
- ↑ Xue, Linting; Constant, Noah; Roberts, Adam; et al. «mT5: A massively multilingual pre-trained text-to-text transformer». arXiv. [۱۰]
- ↑ Xue, Linting; Barua, Aditya; Constant, Noah; et al. «ByT5: Towards a token-free future with pre-trained byte-to-byte models». arXiv. [۱۱]
- ↑ Fedus, William; Zoph, Barret; Shazeer, Noam. «Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity». arXiv. [۱۲]
- ↑ Chung, Hyung Won; et al. «Scaling Instruction-Finetuned Language Models». arXiv. [۱۳]
- ↑ Tay, Yi; Dehghani, Mostafa; Tran, Vinh; et al. «UL2: Unifying Language Learning Paradigms». arXiv. [۱۴]