Telegram Web Link
اتحاد کانولووشن و ترنسفورمر برای بازشناسی گفتار

اگه اهل بازشناسی گفتار باشید باید حتما اسم conformer به گوش‌تون خورده باشه. این معماری که توسط گوگل و حدود یک سال پیش معرفی شد در زمان خودش پرچمدار بود و مرز‌های دانش رو جا‌به‌جا کرد. ایده‌اش هم خیلی ساده و زیبا بود. لایه‌های کانولووشنی خیلی خوب فیچر‌های لوکال رو استخراج می‌کنند و از طرفی بلوک‌های ترنسفورمر هم خیلی خوب کانتکست و فیچر‌ها رو به صورت گلوبال استخراج می‌کنند. خب عقل سلیم چی میگه؟ آقای Gulati و یه مینی‌بوس از همکاراش سریعا به این نتیجه رسیدند که چرا توی کاربرد صوت که هم به فیچر‌های لوکال و هم به کانتکست گلوبال نیاز داریم نیایم و این دوتا رو بریزیم روی هم؟ خلاصه که باز یه خارش جدید در حوزه دانش منجر به ایجاد یه معماری خوب و بهینه برای بازشناسی گفتار شد.

در واقع conformer یه بلوک انکودر هست که می‌تونه خیلی خوب اصوات رو برای مقاصد بازشناسی گفتار انکود کنه. هر بلاکش شامل چهار ماژول اصلی هست که به ترتیب عبارتند از: یه لایه feed forward، یه لایه multi-head self attention، یه لایه کانوولوشن و دوباره یه لایه feed forward. وجود لایه multi-head self-attention و لایه کانولووشنی باعث میشه که مدل همزمان بتونه هم فیچرهای لوکال رو خوب استخراج کنه (همون‌طور که می‌دونید وقتی شما حرف میزنید دهان‌تون پیوسته تکون میخوره و فرکانس تولیدی حروف به نرمی درون همدیگه ادغام میشند و تغییرات فرکانس به نرمی صورت می‌گیره. درست مثل تصاویر که در یک قسمت عکس با احتمال بالا، مقادیر RGB به هم نزدیک هستند مگر اینکه یه آبجکت جدید وجود داشته باشه و همین افزونگی می‌تونه فیچرهای خوبی به ما بده) و هم اینکه با استفاده از لایه attention کانتکست و فیچرهای گلوبال رو هم خوب بفهمه. نتیجه اینکه این مدل در سه سایز عرضه شده و در سایز متوسطش که تنها ۳۰ میلیون پارامتر داره تونسته مدل SOTA قبلی رو که ۱۱۸ میلیون پارامتر داره شکست بده و در حالتی که ۱۱۸ میلیون پارامتر داشته به WER بی‌نظیر ۱.۹ درصد بر روی دادگان LibriSpeech رسیده. حتما شاید براتون سوال شده باشه که آیا همه این ماژول‌های conformer لازم هست؟ برای این کار هم مطالعه Ablation انجام شده (در این مطالعه هر قسمت رو از مدل حذف می‌کنند تا ببینند آیا نتایج ثابت می‌مونه یا بدتر میشه درصورتی که بدتر بشه تاثیرگذار بودن اون قسمت اثبات می‌شه. توصیه میشه در کارهاتون همیشه ablation study داشته باشید تا جایی نخوابید که آب زیرتون بره و مثلا کلی پارامتر اضافی تولید کرده باشید!). معماری این مدل رو در تصاویر می‌تونید ببینید. توصیه می‌کنیم این مقاله کوتاه رو حتما مطالعه کنید. همچنین این معماری در ابزار OpenSpeech هم وجود داره که می‌تونید به راحتی ازش استفاده کنید.

لینک مقاله:
https://arxiv.org/abs/2005.08100

لینک OpenSpeech:
https://github.com/openspeech-team/openspeech

#read
#paper

@nlp_stuff
مدل MEND؛ ادیت سریع، فوری و انقلابی مدل‌های زبانی

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

بدیهی‌ترین چاره که به ذهن میرسه میتونه این باشه که این مدل‌ها رو هر از گاهی روی دادگان جدید فاین تیون کنیم. اما در عمل نشون داده شده که این کار باعث اورفیت مدل بر روی این اندک (در قیاس با داده‌های اولیه) داده‌های جدید میشه و عملکرد کلی مدل هم آسیب میبینه. از طرفی اگر بخوایم این داده‌ها رو هم به داده‌های قدیمی الحاق کنیم و مدل رو هر بار از اول روی همه این داده‌ها آموزش بدیم بایستی دارای عمر نوح باشیم که نشدنیه. برای این درد ادیت کردن مدل، تعدادی روش در سال‌های گذشته پیشنهاد شده‌اند. گیر اصلی این روش‌ها عدم مقیاس پذیریشون به مدل‌های بزرگی نظیر GPT است. حالا خانم چلسی فین که از کله گنده‌های متالرنینگ هستند اومدند و روشی تحت عنوان mend رو پیشنهاد دادند که حتی در مقیاس GPT هم قابل انجامه. به علاوه ایشون گفتند که این مدل بایستی سه خاصیت reliability و locality و generality رو ارضا کنه، به بیان ساده‌تر در مورد سوال‌های جدید درست جواب بده، در مورد سوال‌هایی که ربطی به این سوالات جدید ندارند پاسخش عوض نشه و همچنین روی سوالات جدید بتونه خاصیت generalization داشته باشه.

خانم فین برای حل این مساله پیشنهاد دادن که یک مدل عصبی به نام ادیتور داشته باشیم که وظیفه آموزش و تغییر دادن مدل پایه (همون GPTعه) رو داشته باشه. بر این اساس برای هر لایه L ام از وزن‌های شبکه پایه یک مدل ادیتور g_l داریم. فرض کنید حالا متن‌های جدید مربوط به این که بایدن رییس جمهور آمریکاست رو به مدل‌ پایه میدهیم و عمل forward و backward را روی مدل انجام میدهیم. در حالت عادی بهینه‌سازی این گونه عمل میکردیم که در خلاف جهت گرادیان خام برای بهینه‌سازی شبکه پایه حرکت کنیم ولی خب این کار موجب همان اشکالاتی میشه که تو قسمت قبل صحبت کردیم. وظیفه مدل g_l این هست که با ورودی گرفتن گرادیان‌‌های خام نسبت به وزن‌های لایه Lام مدل پایه، یک جهتی رو برای بهینه‌سازی این وزن‌های لایه Lام خروجی بده که سه خواسته ما در قسمت قبل رو برآورده کنه. در طی فرآیند آموزش این پکیج هم هر دور گرادیان تابع loss مدل پایه به ادیتور انتقال داده میشه و این شکلی ادیتور آموزش می‌بینه. (شهودش مثل اینه که چشمای دوستتون رو ببندید و ازش بخواید به سمت هدف تیراندازی کنه و در طول مسابقه با نتایج تیراندازیش یاد بگیرید چطوری به دوستتون راهنمایی برسونید و بهش بگید چه قدر مثلا به چه سمتی مایل بشه). حالا از طرفی چون که ماتریس وزن‌های هر لایه L از مدل پایه به قدر کافی بزرگ هست، فین اینجا هم طرحی زده و این ماتریس با ابعاد d*d رو با تجزیه‌‌ به فرم ضرب خارجی به رنک ۱ و نهایتا یک بردار با سایز d تبدیل کرده که همین باعث شده کلی از بار محاسباتی و زمانی قضیه خلاصی پیدا کنه (این تکه ریزجزییات زیادی داره اگه مشتاق هستید میتونید به مقاله مراجعه کنید)

اما بعد از توضیح معماری نوبت به ریزه‌کاری‌های آموزش مدله. هر نمونه آموزشی که برای آموزش ادیتور بکار میره رو میشه به شکل یک تاپل ۵ تایی دید. چهار تا از این پنجتا، دو جفت x,y هستند که مربوط به سوالات جدید (نظیر رییس جمهور آمریکا کیه: بایدن) و (نظیر پرزیدنت ایالات متحده؟: بایدن) هستند که برای ارضای reliability و generality هستند. اسم این دو تا رو edit example و equivalance example میگذاریم. پنجمین عنصر هم یک سوال رندوم از مجموعه سوالاتیه که مدل پایه روی اونها پیش آموزش دیده (نظیر رییس جمهور روسیه؟: پوتین) که با توجه به این که حجم این سوالات خیلی بیشتر از سوالات جدیده احتمال بی ربط بودن این سوال رندوم با سوالات جدید تقریبا یکه. حالا در فرآیند آموزش، اول edit example به مدل پایه داده می‌شه و گرادیان خام تولید میشه. در گام بعدی ادیتور گرادیان خام رو میگیره و روی مدل پایه یک آپدیت انجام میده و بعد equivalance example به مدل پایه داده میشه و بر حسب loss روی این نمونه ادیتور آپدیت میشه! یک لاس هم برای یکی بودن پیش‌بینی مدل قبل و بعد از ادیت برای داده‌های رندوم اضافه میشه.
تصویر‌هایی برای فهم مدل و دیدن نتایج هم پیوست شده‌اند.

لینک مقاله:
https://arxiv.org/abs/2110.11309

#paper
#read

@nlp_stuff
مدل big bird برای زبان فارسی

معماری برت با تمامی خوبی‌هایی که دارد اما یک نقطه ضعف بزرگ دارد که حداکثر رشته‌هایی با طول ۵۱۲ توکن را می‌تواند پردازش کند. این محدودیت در واقع ناشی از مرتبه محاسباتی درجه دو مکانیزم توجه بین توکن‌های دنباله است (اگر دنباله به طول d باشه، d^2 عمل اتنشن بایستی در داخل آن رخ دهد که خب سنگین است). برای همین بار محاسباتی، چه آموزش و چه تست کردن مدل بر روی دنباله‌های بلند عملا ناممکن می‌شود. این در حالی است که بسیاری از تسک‌های پردازش زبان نظیر خلاصه‌سازی، نیازمند پردازش دنباله‌های بسیار طولانی‌تر از ۵۱۲ توکن هستند. در طی این چند سال اخیر چندین معماری و راهکار جهت حل نیازمندی پردازش دنباله‌های بلند خلق و پیشنهاد شده‌اند. یکی از این معماری‌های پیشنهادی، معماری bigbird است که در آن هر توکن به جای توجه بر تمام توکن‌ها، صرفا به سه مجموعه توکن توجه می‌کند: توکن‌های در همسایگی خود، تعداد اندکی توکن گلوبال و تعدادی توکن رندوم. معماری bigbird با همین ابتکار می‌تواند دنباله‌هایی با طول حداکثر ۴۰۹۶ توکن را به خوبی پردازش کند و جزو طلایه‌داران بعضی وظایف نظیر خلاصه سازی و حتی بعضی مسائل bioای باشد.

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

لینک ریپو:
https://github.com/sajjjadayobi/ParsBigBird


پ.ن. ۱: می‌توانید با استار دادن هم خستگی را از تن توسعه‌دهنده مدل خارج کنید و هم از تمرکز بر روی پردازش زبان فارسی حمایت کنید. دریغ نفرمایید.

پ.ن. ۲: ریپو یا کد یا مدل یا دیتاست به‌دردبخوری داشتید، ندا بدید که بعد از بررسی در کانال قرار بدیم.

#irani
#tool

@nlp_stuff
بهترین‌های کنفرانس EMNLP2021

بهترین مقاله‌های (کوتاه، بلند و برجسته) کنفرانس EMNLP2021 انتخاب شدند. اینجا لینک مربوط به هر مقاله و خلاصه‌ی سرپایی چندخطیشون رو آوردیم. ما کم‌کم سراغشون میریم ولی اگر شما هم هر کدوم رو خوندید و خلاصه‌ی کامل‌تری نوشتید، بفرستید تا به اسم خودتون منتشرش می‌کنیم.

لینک اسامی و نویسنده‌های مقالات منتخب:
https://2021.emnlp.org/blog/2021-10-29-best-paper-awards


۱. بهترین مقاله‌ی بلند

- نام مقاله: Visually Grounded Reasoning across Languages and Cultures
- خلاصه: یک روشی ارائه کردند تا دیتاست ترکیبی عکس و متن استایل ImageNet بشه ساخت اما برای زبان‌ها و فرهنگ‌های مختلف و نه فقط طبق زبان و فرهنگ آمریکای شمالی و اروپای غربی. و یه دیتاست چندزبانه تصویر و متن به نام Multicultural Reasoning over Vision and Language (MaRVL) درست کردند که هر دونه از اعضای این دیتاست به شکل دو تصویر + یک متن توصیفی به زبان‌های متنوع و مختلفی مثل اندونزیایی، چینی، ترکی و… است و برچسبش True/False است. نمونه‌ای ازش در ضمیمه اومده. یه سری مدل هم به عنوان مدل‌های پایه برای این تسک ارائه کردند.
- لینک مقاله:
https://arxiv.org/abs/2109.13238


۲. بهترین مقاله‌ی کوتاه

- نام مقاله: CHoRa: Collecting Humor Reaction Labels from Millions of Social Media Users
- خلاصه: همونجوری که از اسمش مشخصه، یه روشی و چهارچوبی ارائه کردند تا شوخی‌های ملت رو بتونند در ابعاد بزرگ از شبکه‌های اجتماعی بدون برچسب‌زنی دستی و با استفاده از عکس‌العمل بقیه‌ی کاربران (ایموجی و اینا) جمع‌آوری کنند. چون هر زبون و فرهنگی مدل شوخی‌های خودشو داره، جمع‌آوری دیتا در ابعاد بزرگ سخته، پس تبعا و طبعا؛ تسکش هم سخت میشه. این مقاله یک دیتاست عظیم ۷۸۵هزارتایی حول موضوع کرونا ارائه کردند و تحلیل‌هایی هم از ساختار گرامری و معنایی و احساسی این پست‌ها انجام دادند. تصویری از نمونه دادگان ضمیمه شده است.
- لینک ارائه مقاله:
https://underline.io/lecture/37879-choral-collecting-humor-reaction-labels-from-millions-of-social-media-users


۳. مقاله‌های برجسته

- نام مقاله: MindCraft: Theory of Mind Modeling for Situated Dialogue in Collaborative Tasks
- لینک مقاله:
https://arxiv.org/abs/2109.06275

- نام مقاله: SituatedQA: Incorporating Extra-Linguistic Contexts into QA
- خلاصه: سوال‌ها ممکنه جوابشون در مکان‌ها و زمان‌های (context) مختلف متفاوت باشه. مثلا سوال چه واکسن‌های کرونایی برای بزرگسالان تایید شده است؟ برای زمان‌ها و و مکان‌های مختلف متفاوت میشه. این مقاله همونطور که از اسمش پیداست، یه دیتاست به اسم SITUATEDQA تقدیم جامعه کردند که کنار سوال، یه کانتست زمان یا مکان هم چاشنی کار کردند که مدل باید در نظر بگیره. یه عکس از نمونه‌اش در ضمیمه گذاشتیم. مسیر جمع‌آوری و برچسب‌زنی داده رو هم آوردند.
- لینک مقاله:
https://arxiv.org/abs/2109.06157

- نام مقاله: When Attention Meets Fast Recurrence: Training Language Models with Reduced Compute
- خلاصه: در جریان هزینه‌های بالای محاسباتی آموزش مدل‌های زبانی بزرگ هستید دیگه؟ این مقاله اومده مدل زبانی رو با یه سری یونیت بازگشتی ترکیب کرده و با ترنسفورمرهایی مثل Trans-XL و Longformer و Shortformer مقایسه کردند و در حالی که هزینه‌ها را یک سوم تا یک دهم کرده، تونسته در بعضی تسک‌ها بر مدل‌های زبانی مذکور فائق بیاد.
- لینک مقاله:
https://arxiv.org/abs/2102.12459

- نام مقاله: Shortcutted Commonsense: Data Spuriousness in Deep Learning of Commonsense Reasoning
- لینک کد مقاله:
https://github.com/nlx-group/Shortcutted-Commonsense-Reasoning


۴. کتابخونه‌ی dataset هاگینگ‌فیس هم جایزه‌ی بهترین مقاله‌ی demo رو برده.


پ.ن. لطفا کانال را به بقیه هم معرفی کنید.

#read
#paper
#conf

@nlp_stuff
کورس جدید CS224N استنفورد

ویدیوهای کورس NLP زمستون 2021 استنفورد روی یوتیوب آپلود شد. امسال خیلی بیشتر (تقریبا یک سوم کورس) روی اتنشن، ترنسفورمرها و تفسیر مدل تمرکز کردند. اگر می‌خواهید دیپ لرنینگ و پردازش زبان طبیعی یاد بگیرید، این کورس با یک تیر دو نشون برای شما میزنه. همین و بس!

لینک یوتیوب:
https://www.youtube.com/playlist?list=PLoROMvodv4rOSH4v6133s9LFPRHjEmbmJ

لینک درس:
https://web.stanford.edu/class/cs224n/


پ.ن. با این هشتگ coach که در پایین می‌بینید، می‌تونید کورس‌ها، کتاب‌ها و توتوریال‌های معرفی‌شده در کانال رو دریابید. البته اصولا نقش هشتگ همینه دیگه!

#coach
#course
#watch

@nlp_stuff
‌ارائه‌ای با موضوع «معیار هوشمندی»

مهدی‌مون فردا (چهارشنبه ۱۲ آبان) ساعت ۱۰ قراره راجع به معیار هوشمندی صحبت کنه. دید خیلی خوبی از وضعیت واقع‌گرایانه‌ی حال و آینده هوش بهتون میده. از دست ندید و لطفا دست‌به‌دست کنید.

خلاصه: به لطف یادگیری عمیق، امروز ما در بهار هوش مصنوعی هستیم. مدل‌های از پیش آموزش دیده بزرگ عملکرد خیره‌کننده را در مسائل در حوزه‌های پردازش تصویر، پردازش زبان و پردازش صوت به دست آورده‌اند و حتی در بعضی از موارد از عملکرد انسانی نیز پیشی گرفته‌اند.
نکته ناامیدکننده اما این است که مدل‌های عصبی امروزی در برابر حملات خصمانه شکننده‌اند، بسیار به داده گرسنه‌اند و از همه مهمتر قادر به انتقال یادگیری خود به محیط‌‌های نو نیستند. این نقاط تاریک این سوال را به وجود می‌آورد که آیا واقعا این شبکه‌ها هوشمند هستند؟ برای فهمیدن این مطلب ابتدا بایستی هوش را تعریف کنیم. ما برای بررسی این بحث از نظرات «فرانسوا شله» کمک می‌گیریم. در این ارائه ما پس از بررسی ویژگی‌های موردنیاز برای تعریف هوش، تعریف صوری «شله» از هوش را بحث خواهیم کرد. سپس با محک ARC که توسط «شله» برای سنجیدن هوش خلق شده است آشنا می‌شویم و به گمانه‌پردازی می‌پردازیم که چاره و راه حل این چالش به چه شکل خواهد بود. در انتهای بحث در مورد تعریف هوش احتمالا با سوالات چالش برانگیزتری مواجه خواهیم شد. آیا دیپ لرنینگ همه آن چیزی است که برای رسیدن به مقصد هوش مصنوعی نیاز داریم یا این که قربانی زمستان بعدی هوش مصنوعی خواهد بود؟

لینک اتاق برگزاری:
http://vc.sharif.edu/ch/rohban


#overfit

@nlp_stuff
معجون فصل؛ ترکیب pre-training و self-training برای بازشناسی گفتار

قبلا در این پست [https://www.tg-me.com/nlp_stuff/240] درباره conformer توضیح دادیم و قبل‌تر هم درباره wav2vec در این پست [https://www.tg-me.com/nlp_stuff/135] صحبت کرده بودیم.
حال یه مینی‌بوس از گوگلی‌ها و اپلی‌ها فیت دادند و در مقاله‌ای جدید مدلی به نام BigSSL را معرفی کردند که در آن برای کاهش نیاز به دادگان برچسب‌خورده در تسک بازشناسی گفتار، از تکنیک‌های pre-training و self-training استفاده شده است.
معماری اصلی، استفاده از بلوک‌های conformer به‌جهت انکود کردن سیگنال گفتار است و برای pre-training هم از wav2vec2.0 استفاده شده. همچنین برای self-training از تکنیک noisy student training استفاده شده است؛ به این صورت که ابتدا یک مدل ساده اقدام به برچسب‌زنی دادگان بدون لیبل می‌کنه و بعد از اون، دسته از کلماتی رو که با احتمال بالا تونسته بازشناسی کنه به عنوان دادگان آموزشی مرحله بعد درنظر می‌گیره.
همچنین سایز مدل رو هم به اندازه زیادی بزرگ کردند و در سه سایز ۶۰۰ میلیون، ۱ میلیارد و ۸ میلیارد پارامتر آزمایش انجام دادند. در حالتی که سایز مدل ۸ میلیارد بوده و از wav2vec به عنوان pre-training استفاده کردند و همچنین self-training هم انجام دادند، تنها با ۳ درصد از دادگان آموزشی مدل تونسته نتیجه‌ای نزدیک به SoTA رو به‌دست بیاره. ینی چیزی حدود خطای ۵ درصد بر اساس معیار WER. برای جزییات بیشتر می‌تونید به مقاله مراجعه کنید.

لینک مقاله:
https://arxiv.org/abs/2109.13226

پ.ن. تصاویر نتایج و معماری به پیوست ضمیمه شده است.

#read
#paper

@nlp_stuff
Measuring_Intelligence_@nlp_stuff.pdf
1.8 MB
ویدیو و اسلاید ارائه‌ی «معیار هوشمندی»

فایل اسلاید ارائه مهدی‌مون [https://www.tg-me.com/nlp_stuff/246] ضمیمه این پست شده. ویدیوی ارائه به همراه پرسش و پاسخ هم در آپارات در لینک زیر موجوده.

لینک ویدیو:
https://www.aparat.com/v/hlkre

پ.ن. لطفا این پست رو تا حد امکان دست‌به‌دست کنید.

#overfit
#watch

@nlp_stuff
کارآگاه DeepLog؛ آماده برای شخم زدن لاگ‌های سیستم شما به جهت استخراج ناهنجاری

یه مقاله می‌خوایم امروز معرفی کنیم که شاید یه مقداری قدیمی باشه (مال سال ۲۰۱۷ عه) ولی چون تازه یه پیاده‌سازی شیک و مجلسی ازش بیرون اومده و اینکه نحوه کارش هم قشنگه ارزش شنیدن داره! بله؛ deeplog. این ابزار قراره بر روی لاگ‌های سیستم، آموزش ببینه تا بتونه ناهنجاری رو در رفتار سیستم تشخیص بده. با استفاده از این ابزار اگه سیستمی داشته باشید که لاگ‌های verbose تولید می‌کنه و فرمتش هم به شکل OpenStack و یا HDFS هست، می‌تونید به‌راحتی یه سیستم تشخیص ناهنجاری بالا بیارید. شیوه کارش به این صورت است که می‌گه هر لاگ در سیستم یه آیدی داره و یه timestamp و یه message (کل فرمت OpenStack و HDFS همینه و همون‌طور که می‌بینید می‌تونید لاگ‌هاتون رو به‌راحتی به این فرمت تبدیل کنید). هر message یه کلیدی داره و اون کلید حاصل از حذف کردن پارامتر‌های اون لاگه.

مثلا اگه یه message از یه لاگ اینطوری باشه:
[send data to host 192.168.1.1 was completed in 0.61 seconds]
اون وقت کلید اون پیام میشه:
[send data to host * was completed in * seconds]
و پارامتر وکتورش هم میشه:
[t2-t1, 192.168.1.1, 0.61]

به عبارت دیگه کلید لاگ‌ها همیشه محدود هستند. به خاطر همین برای هر log entry یه کلید درمیاره و یه وکتوری از پارامترهاش. یکی از درایه‌های این وکتور هم اختلاف timestamp اون لاگ با لاگ قبلی هست. حالا برای هر کدوم از کلیدها و وکتور‌های پارامتری یه مدل جداگانه train میشه اون هم از روی صرفا دادگان نرمال. مدل‌ها هم همه LSTM هستند (از همین‌جا می‌تونم حس کنم که ذهن‌تون داره قلقک میاد که برید transformer رو با LSTM جایگزین کنید). مثلا مدل مربوط به کلید‌ها اینطوری هست که یه پنجره از کلید‌های اخیر رو میگیره و باید کلید بعدی رو حدس بزنه. برای اینکار یه احتمالی از کلید‌های بعدی رو خروجی میده (دقت کنید که در یه سیستم همون‌طور که گفتیم تعداد کلید‌ها محدوده) و اگه کلید جدید در بین g کلید با بیشترین احتمال بود که جواب normal میده و در غیراینصورت خروجی شبکه برابر با anomaly میشه. پیاده‌سازی مبتنی بر PyTorch هم از این سیستم موجوده که در قالب یه پکیج پایتونه و می‌تونید بر روی دیتای خودتون ترین‌ش کنید. برای جزییات بیشتر به خود مقاله مراجعه کنید. مقاله خوش‌فهمیه!

لینک مقاله:
https://dl.acm.org/doi/10.1145/3133956.3134015

لینک پکیج پایتونی:
https://github.com/Thijsvanede/DeepLog

پ.ن: نتایج عملکرد در تصاویر اومده. مقدار F-score بر روی ۰.۹۷ قرار گرفته. باحاله نه؟!

#read
#paper

@nlp_stuff
خون اول. ParsTwiNER؛ دادگان عمومی توییتر فارسی برای NER از تیم اورفیت

خوشبختانه مقاله ما در ورکشاپ WNUT کنفرانس EMNLP 2021 پذیرفته شد و ارائه شفاهی هم دادیم. این مقاله درباره named entity recognition در فضای فارسی غیررسمیه. در این مقاله یه دادگان خوب هم از توییتر فارسی جمع‌آوری کردیم و تگ زدیم و حالا اون رو به‌صورت عمومی عرضه می‌کنیم تا اندکی از دین خودمون رو به جامعه فنی ادا کرده باشیم.

کیفیت عملکرد مدل ParsBert رو بر روی دادگان‌مون بررسی کردیم که افت شدید داشت و به f-score حدود ۶۹ درصد رسیده بود. پس در این مقاله یه راهکاری هم با استفاده از یادگیری موازی و data anealing ارائه دادیم تا عملکرد مدل رو به f-score حدودا ۸۲ درصدی برسونیم. اگر مدل شما نتایج بهتری روی این دیتاست گرفت، پول ریکوئست بدید که به ریپو اضافه کنیم.

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

پ.ن.۱: خداوکیلی هر پستی رو دست‌به‌دست نمی‌کنید این رو بکنید که به‌دست عاشقان و دلدادگان پردازش زبان طبیعی در فارسی برسه!

پ.ن.۲: و لطفا استار به ریپوی گیت‌هاب یادتون نره!

لینک مقاله:
https://aclanthology.org/2021.wnut-1.16/

لینک دادگان در گیت‌هاب:
https://github.com/overfit-ir/parstwiner

لینک مدل‌ها:
https://huggingface.co/overfit/twiner-bert-base-mtl

#dataset
#read
#paper

@nlp_stuff
داستان برت

اگر در کار پردازش زبان هستید قطعا اسم برت به گوشتون خورده. در چهارمین پست از رشته‌‌پست‌ «داستان ترنسفورمرها»، رفتیم سراغ bert و سعی کردیم به شیوه نیکو، روان و جامعی این مدل رو شرح بدیم. اگر تا به حال از برت استفاده نکرده‌اید یا اگر استفاده کرده‌اید ولی دقیقا نمی‌دونید تو برت چه خبره، خوندن این پست رو به شما پیشنهاد می‌کنیم.

لطفا کم‌کاری نکنید. نظر بدید و با بقیه به اشتراک بگذارید. :)
اگر پست خوبی داشتید خبر بدید که در انتشارات بگذاریم.


https://virgool.io/overfit/transformers4-bert-c6ah7xv69vjj

#read
#blog
#overfit

@nlp_stuff
This media is not supported in your browser
VIEW IN TELEGRAM
کوهستان RL؛ هدف بعدی هاگینگ فیس

هاگینگ فیس اعلام کرد که اولین محیط (environment) یادگیری تقویتی عمیق خودشون به نامSnowball Fight را منتشر کردند و هم‌آورد طلبیدند که کی می‌تونه ایجنتشون رو شکست بده (لینک آخر پست). الان هم دارند محیط‌های بعدی رو تولید می‌کنند. این محیط‌ها با Unity ML-Agents تولید شدند. این زبون‌بسته یه ابزار اوپن‌سورسه که باهاش شما می‌تونید محیطی برای آموزش ایجنت‌تون بسازید.

هاگینگ‌فیس طبق معمول برای این زمینه هم سه تا هدف برای اکوسیستمی که داره میسازه گذاشته:
- ملت بتونند محیط خودشون رو بسازند و با بقیه شیر کنند
- ملت مدل‌ها و محیط‌هاشونو روی هاگینگ فیس host کنند مثل همین بازی که لینکشو پایین گذاشتیم.
- دمویی از مدلشون بتونند راحت بالا بیارند که نتایج رو بتونند به بقیه نشون بدهند.

لینک پست توضیح:
https://huggingface.co/blog/snowball-fight

لینک بازی:
https://huggingface.co/spaces/ThomasSimonini/SnowballFight

#tool
#link

@nlp_stuff
کورس CS 11-711 برای آپگرید‌شدن در پردازش زبان

اگر مفاهیم پایه nlp رو بلد هستید میتونید با آموختن این کورس با مفاهیم جدیدتر پردازش زبان نظیر prompting و نحوه مدل‌کردن متن‌های خیلی بلند و fairness در زبان و حتی نحوه تفسیر و دیباگ مدل‌های پردازش زبانی آشنا بشید. این کورس از cmu و همین پاییز ۲۰۲۱ هست. اگر مفاهیم پایه پردازش زبان رو بلد هستید ولی در مسائل جدید کمیتتون لنگ میزنه و خواهان خفن شدن هستید، این کورس رو از دست ندید.

لینک کورس و اسلایدها:
http://phontron.com/class/anlp2021/schedule.html

لینک یوتیوب:
https://t.co/NlRKZ4RJQv

#course
#watch
#coach
تقاطع Information Retreival و Contrastive Learning

بازیابی اطلاعات و اسناد یکی از تسک‌های مهم در حوزه پردازش زبانه. مخصوصا وقتی که پای تسک‌هایی مثل QA در میون باشه داشتن یک سیستم IR خوب نیاز قطعیه. در سال‌های اخیر با توجه به ترکوندن شبکه‌های عصبی، طبیعتا انگیزه‌هایی پیش اومد تا برای IR هم از راه شبکه‌های عصبی راه حلی پیدا بشه که منجر به ظهور dense retrieval‌ ها شد. اینها در واقع شبکه‌های عصبی هستند که با گرفتن یک داکیومنت و یک کوئری، میزان امتیاز ارتباط این زوج رو خروجی می‌دهند. این شبکه‌های عصبی با این که در بنچمارک‌های IR که براشون دیتاست آموزش وجود داره پرچمدار هستند اما در موقعیتی که بایستی بر روی دامین جدیدی که از اون دیتای آموزشی ندارند (Zero-Shot) تنظیم شوند دچار مشکلند. از اونجایی هم که درست کردن دیتاست برای تسک IR کار بسیار هزینه‌بر و وقت‌گیریه عملا راهی برای بانظارت کردن وجود نداره. این مشکل به حدیه که به لحاظ عملکرد پشت‌ سر روش‌هایی لفظ محوری همچون TF-IDF و BM25 که غیرنظارتی هستند، قرار می‌گیرند. سوال حالا اینه که آیا ما میتونیم dense retrieveal ای آموزش بدهیم که بدون نیاز به داده آموزشی و نظارت حین آموزش بتونه روش‌هایی مثل BM25 رو پشت سر بگذاره؟ حالا پیپری اومده جواب داده بله! این پیپر اومده بررسی کرده آیا contrastive learning روی مجموعه داکیومنت‌های مورد نظر میتونه پاسخ خوبی باشه یا نه؟ این پیپر تقریبا کار نویی نکرده ولی بررسی جالبی رو انجام داده. برای ساختن زوج‌های مثبت موردنیاز contrastive learning اومدند و استراتژی‌های ساده‌ای مثل تقسیم متن سند به دو متن یا نمونه‌برداری مستقل از متن سند رو انجام دادند. با این تکنیک‌ها تونستن در بنچمارک‌های IR و در تنظیمات Zero-Shot تنه به تنه روش‌هایی مثل BM25 بزنند. سپس اومدند تنظیمات Few-Shot ای رو بررسی کردند که توش چند نمونه کوئری برای اسناد وجود دارند. با فاین تیون کردن روی این نمونه‌های هرچند اندک تونستند حتی از BM25 جلو بزنند. این پیپر شاید مقدمه‌ای بر استراتژی و ایده‌های بیشتری در حوزه تقاطع IR و Contrastive Learning در آینده باشه.


لینک مقاله:
https://arxiv.org/abs/2112.09118

#paper
#read

@nlp_stuff
مدل بازشناسی گفتار wav2vec2 فارسی

دوستان اومدند مدل wav2vec2 چند زبانه رو برای فارسی روی یه بخشی از دیتاست شخصی که در اختیار داشتند فاین تیون کردند و مدل نهایی رو با سخاوت روی هاگینگ فیس گذاشتند. نتایجش از مدل‌هایی که قبلاً بوده بهتر شده.
می‌تونید روی هاگینگ فیس با هر صوتی که میخواید تستش کنید.

لینک گیت‌هاب:
https://github.com/Hamtech-ai/wav2vec2-fa

لینک هاگینگ فیس:
https://huggingface.co/masoudmzb/wav2vec2-xlsr-multilingual-53-fa

پ.ن. با تشکر از آقایان مسعود پرپنچی و سجاد ایوبی که این پست رو فرستادند که در کانال قرار بدیم. دوست داشتید بهشون استار بدید که لذتشو ببرند.

#irani
#link

@nlp_stuff
داستان ترنسفورمرها (۵): سریع و سبک، گلاب‌گیری از برت با دیستیل‌برت

مدل برت با وجود تمام قدرتی که داره اما به خاطر سنگین‌بودنش در عمل سخت میشه ازش استفاده کرد و هم حافظه و هم زمان قابل توجهی رو می‌طلبه. در پنجمین پست از رشته‌‌پست‌ «داستان ترنسفورمرها»، سعی کردیم تکنیک distillation رو که یک راه حل ارائه شده برای فشرده‌سازی مدل‌های بزرگ است بررسی کنیم و بعد هم مدل distilbert رو که حاصل از انجام این تکنیک بر روی مدل برت هست معرفی کنیم.

اگر پست خوبی داشتید خبر بدید که در انتشارات بگذاریم.

https://virgool.io/overfit/transformers5-distilbert-smwuod8mlb9p

#read
#blog
#overfit

@nlp_stuff
دیتاست OCR ارشاسب

دیتاست ocr فارسی با نام اَرشاسب منتشر شد. این دیتاست (همچون نمونه در تصویر) شامل متن‌های پیوسته‌ای است که در آن، کلمات به همراه مختصات در تصویر برچسب زده شده‌اند. ۷۰۰۰ صفحه از این دیتاست به صورت عمومی منتشر شده و همچنین نسخه کامل‌تر این دیتاست که شامل ۳۳ هزار صفحه است، توسط سازندگان آن برای اعضای کانال به صورت رایگان در دسترس قرار گرفته است.

لینک گیت‌هاب دیتاست (۷ هزار صفحه):
https://github.com/persiandataset/Arshasb

لینک کل دیتا (۳۳ هزار صفحه):
https://drive.google.com/file/d/1Ahw_y-ugnu6FFz_SRBm2VUxnaqmXfsvp

پ.ن. با تشکر از سازنده‌ی این دیتاست که به کانال این پست را ارسال کردند. شما هم می‌تونید با استار دادن در گیت‌هاب از این پروژه حمایت کنید.

#dataset
#irani

@nlp_stuff
NLP stuff
خون اول. ParsTwiNER؛ دادگان عمومی توییتر فارسی برای NER از تیم اورفیت خوشبختانه مقاله ما در ورکشاپ WNUT کنفرانس EMNLP 2021 پذیرفته شد و ارائه شفاهی هم دادیم. این مقاله درباره named entity recognition در فضای فارسی غیررسمیه. در این مقاله یه دادگان خوب هم از…
خب خداروشکر کنفرانس EMNLP2021 هم به خوبی و خوشی تموم شد و مفتخریم بگیم که در کارگاه WNUT مقاله تیم اورفیت به عنوان runner-up (نایب قهرمان) انتخاب شد. امیدواریم از دیتاست تولید شده در این پژوهش حداکثر حظ و بهره رو ببرید و با یه استار زیبا ما رو هم حمایت کنید.

لینک مقاله:
https://aclanthology.org/2021.wnut-1.16/

لینک دادگان:
https://github.com/overfit-ir/parstwiner

@nlp_stuff
مروری بر هوش در ۲۰۲۱ و پیش‌بینی روند سال آینده

سال ۲۰۲۱ هم تمام شد و کلی مقاله و مدل و اتفاقات جدید در حوزه هوش مصنوعی رو شاهد بودیم. به همین مناسبت بررسی گزارش StateofAI که از ۲۰۱۸ به اینور در انتهای هر سال راجع به وضعیت و رخداد‌های هوش خلاصه‌ای رو ارائه میده، بسیار جذاب و سودمند میتونه باشه. در گزارش امسالشون هم چهار حوزه پیشرفت‌های علمی، وضعیت عرضه و تقاضا و تمرکز استعدادهای انسانی، زمینه‌های کاربرد تجاری هوش مصنوعی و تاثیراتش بر کسب و کار‌ها، رابطه هوش مصنوعی و مسائل سیاسی و ژئوپلتیک هوش مصنوعی رو بررسی کردند و در نهایت هم پیش‌بینی از رخداد‌های سال آینده ارائه دادند. این گزارش شامل ۱۸۳ اسلاید بسیار غنی است. در زیر سعی شده تا خلاصه‌ای از این خلاصه ارائه بشه:

- در حوزه پیشرفت علمی مهمترین مطالب این گزارش رو میشه رشد یادگیری‌های کمتر نظارتی (مثل خودنظارتی‌ها)، تصرف حوزه‌های مختلف هوش به دست معماری ترنسفورمری (تصویر و صوت)، ظهور معماری های نوین CNN و MLP برای به چالش کشیدن ترنسفورمر‌ها (مثل MLP-Mixer)، پیشرفت قابل توجه دیپ مایند در حوزه بیولوژی و یادگیری تقویتی و به وجود اومدن مساله مهندسی prompt در مدل‌های زبانی دانست. مدل‌هایی مثل DALL-E و CLIP و Codex هم که مدل‌های پر سر و صدای امسال بودند.
- نکته جالب این گزارش در حوزه منابع انسانی حوزه هوش رو هم میشه در رشد سریع هند و به خصوص چین در تولید مقالات و تربیت نیروی انسانی دید. همچنین مطلب دیگه محدودتر شدن ارائه کارهای برجسته به تعداد اندکی دانشگاه‌ و شرکت‌های پولدار و مهاجرت وسیع اساتید از دانشگاه‌ها به شرکت‌هاست.
- در حوزه تاثیرات تجاری هوش هم این گزارش به پیشرفت هوش در صنعت کشف دارو، گسترده‌شدن کاربردهای هوش (از تخمین مصرف برق در شبکه توزیع گرفته تا زمان مناسب لقاح مصنوعی گاو) و البته در نهایت مساله مهم MLOps و به‌راه‌اندازی و استقرار و استفاده از مدل‌های یادگیری ماشین اشاره کرده. مشکلات اخیر بر سر مساله خطیر تولید و تامین نیمه‌هادی‌ها از دیگر نکات مذکور این بخشه.
- در حوزه سیاست هم گزارش راجع به داغ شدن مباحث اخلاقی در کاربرد هوش و نیاز به تفسیرپذیری و قانونمند‌کردن هوش اشاره کرده. همچنین مواردی از رشد هوش در صنایع نظامی هم بحث شده.
- اما در بخش پیش‌بینی، این گزارش هشت پیش‌بینی داشته که از موارد فنی‌تر اونها میشه به جایگزین‌شدن RNN‌ها با ترنسفورمر‌ها در یادگیری تقویتی، پرچمداری مدل‌های هیبریدی ترنسفورمری و CNN کوچک با تعداد پارامتر خیلی کمتر روی مساله دسته‌بندی تصویر، افزایش استفاده از JAX و کد‌های منتشرشده و تولد یک شرکت تحقیقاتی با تمرکز روی AGI (هوش جامع مصنوعی) اشاره کرد.

این گزارش بسیار خوب و مختصر و موجز و مفید مقالات یکسال گذشته رو مرور کرده، از دست ندید.

لینک گزارش و اسلاید‌ها:
https://www.stateof.ai/

#read

@nlp_stuff
2025/07/05 07:50:17
Back to Top
HTML Embed Code: