ایکسالنت
| نویسنده(های) اصلی | گوگل ایآی |
|---|---|
| انتشار اولیه | ۱۹ June ۲۰۱۹ |
| مخزن | https://github.com/zihangdai/xlnet/ |
| نوع | |
| مجوز | پروانه آپاچی ۲٫۰ |
ایکسالنت (به انگلیسی: XLNet) یک ترنسفورمر خودهمبسته است که به عنوان روش بهبود یافته نسبت به برت طراحی و معرفی شد. این مدل حداکثر دارای ۳۴۰ میلیون پارامتر است و بر روی ۳۳ میلیارد واژه آموزش داده شدهاست. ایکسالنت در ۱۹ ژوئن ۲۰۱۹ تحت مجوز آپاچی ۲٫۰ منتشر شد.[۱] این مدل در طیف گستردهای از وظایف پردازش زبان طبیعی، از جمله مدلسازی زبان، پاسخگویی به پرسش و استنتاج زبان طبیعی، به نتایج پیشرفته در زمان خود دست یافت.
ساختار
ایده اصلی ایکسالنت این است که زبان را به صورت خودهمبسته و مشابه مدلهای جیپیتی مدلسازی کند، اما در عین حال اجازه دهد که تمامی جایگشتهای ممکن یک جمله نیز در نظر گرفته شوند.[۲] به طور مشخص، جمله زیر را در نظر بگیرید:
سگ من بامزه است.
در مدلسازی زبانی خودهمبسته استاندارد، مدل وظیفه دارد با قرار دادن واژههای قبلی به عنوان زمینه موضوع کاری (به انگلیسی: context) احتمال هر واژه را پیشبینی کند:
احتمال توأم دنبالهای از واژههای با استفاده از قاعده زنجیرهای به شکل زیر خواهد بود:برای مثال، جمله «سگ من بامزه است.» به صورت زیر تجزیه میشود:به صورت شماتیک، میتوان این فرایند را به شکل زیر نوشت:با این حال، در اکسالنت مدل ملزم است واژهها را در یک ترتیب تصادفی تولیدشده پیشبینی کند. فرض کنید یک ترتیب تصادفی برابر با ۳۲۴۱ نمونهبرداری شده باشد؛ در این صورت، مدل باید به صورت شماتیک وظیفه پیشبینی زیر را انجام دهد:با در نظر گرفتن تمامی جایگشتها، اکسالنت قادر است وابستگیهای دوربردتر را بهتر ثبت کند و زمینه دوسویه واژهها را به طور مؤثرتری مدلسازی نماید.
خود-توجهی دو-جریانی
برای پیادهسازی مدلسازی زبانی مبتنی بر جایگشت، ایکسالنت از سازوکار «خود-توجهی دو-جریانی»[الف] استفاده میکند. این دو جریان عبارتاند از:
- جریان محتوا[ب]: این جریان محتوای هر واژه را، مشابه خودتوجهی ماسکشده علیّتی استاندارد[پ]، کُدگذاری میکند.
- جریان پرسش[ت]: این جریان محتوای هر واژه را در زمینه آنچه پیشتر آمده است کُدگذاری میکند. به طور دقیقتر، این جریان یک سازوکار توجه متقاطعِ ماسکشده[ث] است که در آن، پرسشها از جریان پرسش و همچنین جفتهای کلید–مقدار از جریان محتوا گرفته میشوند.
جریان محتوا از ماسک علیّتی زیر استفاده میکند:
که توسط یک ماتریس جایگشت تصادفی به شکل جایگشت داده میشود.
جریان پرسش از ماسک توجه متقاطع استفاده میکند که در آن، مؤلفههای روی قطر به طور خاص حذف شدهاند تا از «تقلب» مدل جلوگیری شود؛ یعنی حالتی که مدل بتواند با نگاه کردن به جریان محتوا، توکن ماسکشده فعلی را مستقیماً تشخیص دهد.
مشابه ماسکگذاری علیّتی در مدلهای جیپیتی، این معماری ماسکشده دو-جریانی به مدل اجازه میدهد که تمامی توکنها را در یک گذر رو به جلو[ج] آموزش دهد.
آموزش
- XLNet-Large، حساس به حروف بزرگ و کوچک[چ]: دارای ۱۱۰ میلیون پارامتر، ۲۴ لایه، بُعد پنهان ۱۰۲۴ و ۱۶ سر توجه
- XLNet-Base، حساس به حروف بزرگ و کوچک: دارای ۳۴۰ میلیون پارامتر، ۱۲ لایه، بُعد پنهان ۷۶۸ و ۱۲ سر توجه
این مدل بر روی مجموعه دادهای آموزش داده شد که پس از توکنسازی با استفاده از سنتنسپیس[ح]، شامل ۳۲٫۸۹ میلیارد توکن بود. این مجموعهداده از بوککورپوس، ویکیپدیای انگلیسی، Giga5، ClueWeb 2012-B و کامن کرال تشکیل شده بود.
آموزش مدل بر روی ۵۱۲ تراشه تیپییو نسخه ۳ و بهمدت ۵٫۵ روز انجام شد. در پایان فرایند آموزش، مدل همچنان نسبت به دادهها کمبرازش[خ] بود؛ به این معنا که با آموزش بیشتر میتوانست به مقدار خطای کمتری دست یابد. آموزش در مجموع شامل ۰٫۵ میلیون گام با استفاده از بهینهساز آدام، کاهش خطی نرخ یادگیری و اندازه بچ برابر با ۸۱۹۲ بود.[۳]
جستارهای وابسته
یادداشتها
منابع
- 1 2 "xlnet". GitHub. Retrieved 2 January 2024.
- 1 2 "Pretrained models — transformers 2.0.0 documentation". huggingface.co. Retrieved 2024-08-05.
- ↑ Yang, Zhilin; Dai, Zihang; Yang, Yiming; Carbonell, Jaime; Salakhutdinov, Ruslan; Le, Quoc V. (2 January 2020). "XLNet: Generalized Autoregressive Pretraining for Language Understanding". arXiv:1906.08237 [cs.CL].
