یادگیری چند وظیفه‌ای

**یادگیری چند وظیفه‌ای** (Multi-task learning (MTL)) زیر مجموعه‌ای از یادگیری ماشین است که در آن چندین کار یادگیری همزمان حل می‌شود، در حالی که از نقاط اشتراک و تفاوت بین وظایف استفاده می‌شود. این می‌تواند باعث بهبود کارایی یادگیری و دقت پیش‌بینی برای مدل‌های خاص وظیفه در مقایسه با آموزش مدل‌ها به‌طور جداگانه شود. نسخه‌های اولیه MTL «اشاره» نامیده می‌شدند.

ریچ کاروانا در مقاله‌ای که در سال ۱۹۹۷ به‌طور گسترده مورد استناد قرار گرفت، توصیف زیر را ارائه کرد:

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

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

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

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

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

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

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

## کاربردها
### فیلتر اسپم
با استفاده از اصول MTL، تکنیک‌هایی برای فیلتر کردن هرزنامه‌های مشترک که شخصی‌سازی را تسهیل می‌کند، پیشنهاد شده است. در سیستم‌های ایمیل عضویت باز در مقیاس بزرگ، اکثر کاربران پیام‌ها را به اندازه کافی برای اثربخشی طبقه‌بندی‌کننده محلی مشخص نمی‌کنند، در حالی که داده‌ها آنقدر نویز دارند که نمی‌توانند برای فیلتر سراسری در همه کاربران استفاده شوند. یک طبقه‌بندی‌کننده جهانی/انفرادی ترکیبی می‌تواند در جذب تأثیر کاربرانی که ایمیل‌ها را با جدیت از عموم مردم برچسب‌گذاری می‌کنند، مؤثر باشد. این را می‌توان در حالی انجام داد که هنوز کیفیت کافی را برای کاربران با نمونه‌های برچسب گذاری شده کمی ارائه می‌دهد.

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

## منابع

رده:یادگیری ماشین