فرایادگیری (علوم کامپیوتر)

**فرا یادگیری** زیرشاخه‌ای از یادگیری ماشین است که در آن الگوریتم‌های یادگیری خودکار بر فرادادهها برای انجام آزمایش‌های یادگیری ماشین اعمال می‌شوند. از سال ۲۰۱۷ به بعد این اصطلاح تفسیر استانداردی پیدا نکرده‌است، اما هدف اصلی فرایادگیری به صورت زیر بیان شده‌است: درک اینکه چگونه یادگیری خودکار می‌تواند در حل مشکلات یادگیری انعطاف‌پذیر شود تا منجر به بهبود عملکرد الگوریتم‌های یادگیری موجود یا یادگیری (استنتاج) خودِ الگوریتم یادگیری شود؛ بنابراین، **یادگیری برای یادگیری** اصطلاح جایگزینی برای فرایادگیری است.

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

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

## تعریف
تعریف پیشنهادی برای یک سیستم فرا یادگیر سه الزام را با هم ترکیب می‌کند:
* سیستم باید شامل یک زیر سیستم یادگیر باشد.
* با بهره‌گیری از فرا دانش استخراج شده از منابع زیر تجربه کسب می‌شود:
** از یک قسمت از یادگیری قبلی روی یک مجموعه داده واحد، یا
** از دامنه‌های مختلف
* سوگیری یادگیری باید به صورت پویا انتخاب شود.

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

## رویکردهای مشترک
سه رویکرد مشترک وجود دارد: ۱) استفاده از شبکه‌های (مداری) با حافظه داخلی یا خارجی (مبتنی بر مدل). ۲) یادگیری متریک‌های مؤثر فاصله (مبتنی بر متریک‌ها)؛ ۳) بهینه‌سازی صریح پارامترهای مدل برای یادگیری سریع (مبتنی بر بهینه‌سازی).

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

#### شبکه‌های عصبی تقویت شده با حافظه
این مدل که به نام MANN مخفف Memory-Augmented Neural Networks شناخته می‌شود، اطلاعات جدید را سریع رمزگذاری می‌کند و بنابراین پس از تنها چند نمونه با وظایف جدید سازگار شود. در نتیجه برای فرا یادگیری مناسب است.

#### شبکه‌های متا
فرا شبکه‌ها (MetaNet) دانش فرا سطح را برای همه کارها فرا می‌گیرند و سوگیری‌های استقراییشان را از طریق پارامترسازی سریع برای تعمیم سریع تغییر می‌دهند.

### مبتنی بر متریک
ایده اصلی در فرا یادگیری مبتنی بر متریک مشابه الگوریتم‌های نزدیکترین همسایگان است که وزن آن توسط یک تابع هسته تولید می‌شود. در این روش، هدف یادگیری یک متریک یا تابع فاصله بر روی اشیا است. مفهوم معیار خوب به مسئله وابسته است. این مفهوم باید روابط بین ورودی‌ها را در فضای کار نشان دهد و حل مسئله را تسهیل کند.

#### [[شبکه عصبی مصنوعی|شبکه عصبی]] سیامی پیچشی
شبکه عصبی سیامی از دو شبکه دوقلو تشکیل شده‌است که خروجی آنها به‌صورت مشترک آموزش داده می‌شود. در بالا یک تابع برای یادگیری رابطه بین زوج‌های نمونه داده ورودی وجود دارد. این دو شبکه یکسان هستند، یعنی مقادیر وزن و پارامترهای شبکه یکسانی دارند.

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

#### شبکه ارتباط
شبکه ارتباط (Relation Network (RN از آغاز به صورت انتها به انتها آموزش داده می‌شود. در طول فرا یادگیری، شبکه یادمی‌گیرد که یک معیار فاصله عمیق را یاد بگیرد تا بتواند تعداد کمی از تصاویر درون اپیزودها را مقایسه کند، که هر یک برای شبیه‌سازی ویژگی‌های مجموعه‌داده‌های محدود (few-shot) طراحی شده‌اند.

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

### مبتنی بر بهینه‌سازی
هدف الگوریتم‌های فرا یادگیری مبتنی بر بهینه‌سازی این است که الگوریتم بهینه‌سازی را به گونه‌ای تنظیم کنند که مدل در یادگیری با استفاده از چند مثال مهارت کسب کند.

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

#### گسستگی زمانی
MAML، مخفف Model-Agnostic Meta-Learning، یک الگوریتم بهینه‌سازی نسبتاً کلی است که با هر مدلی که از طریق شیب نزولی یادمی‌گیرد سازگار است.

#### خزنده
خزنده یک الگوریتم بهینه‌سازی فرا یادگیری بسیار ساده است که با فرض اینکه هر دو به فرا بهینه‌سازی از طریق گرادیان نزولی متکی هستند و هر دو مدل اگنوستیک هستند عمل می‌کند.

## مثال‌ها
برخی از رویکردهایی که به عنوان مواردی از فرا یادگیری مشاهده شده‌اند:
* شبکه‌های عصبی بازگشتی (RNN) رایانه‌های جهانی هستند. در سال ۱۹۹۳، یورگن اشمیدوبر نشان داد که چگونه RNNهای «خود ارجاع» می‌توانند با استفاده از پس انتشار در اصل یاد بگیرند که الگوریتم تغییر وزن خود را اجرا کنند، که ممکن است کاملاً متفاوت از خود پس انتشار باشد. در سال ۲۰۰۱، سپ هوکرایتر و ای اس یانگر و پی آر کانول یک فرا یادگیرنده با ناظر موفق را مبتنی بر حافظه‌های طولانی کوتاه مدت در RNNها ساختند. این فرا یادگیر با استفاده از پس انتشار یک الگوریتم یادگیری را برای توابع درجه دوم آموخت که از پس انتشار بسیار سریعتر عمل می‌کند. در سال ۲۰۱۷ محققان دیپ‌مایند (مارسین آندریچوویچ و سایرین) این روش را به بهینه‌سازی بسط دادند.
* در دهه ۱۹۹۰، فرا یادگیری تقویتی یا Meta RL در گروه تحقیقاتی اشمیدوبر از طریق خط مشی‌هایی که خودشان را تغییر می‌دادند و توسط یک زبان برنامه‌نویسی جهانی که شامل دستورالعمل‌های خاصی برای تغییر سیاست خود بودند نوشته شده بودند، به دست آمد. یک دادگاه مادام العمر وجود دارد. هدف عامل RL به حداکثر رساندن مقدار پاداش است. این عامل یادمی‌گیرد که با بهبود مداوم الگوریتم یادگیری خود که بخشی از سیاست «خود ارجاع» است، دریافت پاداش را شتاب بخشد.
* یک نوع افراطی فرا یادگیری تقویتی توسط ماشین Gödel، یک ساختار نظری که می‌تواند هر بخشی از نرم‌افزار خود (شامل یک اثبات‌گر قضیه عمومی) را بازرسی و اصلاح کند، تجسم یافته‌است. این نوع فرا یادگیری می‌تواند به خود ارتقا بخشی بازگشتی به روشی که بهینه بودن آن قابل اثبات است برسد.
* *فرا یادگیری بدون مدل* (MAML) در سال ۲۰۱۷ توسط چلسی فین و همکاران معرفی شد. با فرض در اختیار داشتن دنباله ای از وظایف، پارامترهای یک مدل داده شده به گونه‌ای آموزش داده می‌شوند که با اعمال تعداد کمی تکرار نزولی شیب‌دار روی تعداد اندکی داده آموزشی از یک وظیفه جدید، تعمیم عملکردی خوبی از آن وظیفه را ایجاد کنند. MAML «مدل را به گونه‌ای آموزش می‌دهد که به سادگی قابلیت تنظیم مجدد را فراهم کند.» MAML با موفقیت روی بنچمارک‌های طبقه‌بندی تصویر به روش چند شات و همچنین برای یادگیری سیاست مبتنی شیب در یادگیری تقویتی استفاده شد.
* *کشف فرا دانش* به وسیله استنتاج دانشی (یا قوانینی) که بیان‌کننده نحوه عملکرد هر روش یادگیری روی مسائل مختلف یادگیری است، امکان‌پذیر می‌باشد. در این روش، فراداده منطبق با مشخصات داده‌ها (از جمله مشخصات عمومی، آماری، نظری اطلاعاتی، ...) در مسئله یادگیری و ویژگی‌های الگوریتم یادگیری (از جمله نوع، تنظیمات پارامترها، معیارهای عملکرد، ...) شکل می‌گیرد. سپس یک الگوریتم یادگیری دیگر ارتباط بین ویژگی‌های داده با مشخصات الگوریتم را می‌آموزد. با فرض اینکه یک مسئله یادگیری جدید داده شده باشد، مشخصات داده‌ها اندازه‌گیری می‌شود و عملکرد الگوریتم‌های یادگیری مختلف روی این داده‌ها پیش‌بینی می‌شود؛ بنابراین، می‌توان الگوریتم‌هایی که برای مسئله جدید به بهترین وجه ممکن عمل می‌کنند را پیش‌بینی کرد.
* *تعمیم‌دهی پشته‌ای* با ترکیب چندین الگوریتم یادگیری (متفاوت) کار می‌کند. در این روش، فراداده‌ها منطبق بر پیش‌بینی آن الگوریتم‌های متفاوت شکل می‌گیرند. یک الگوریتم یادگیری دیگر از این فراداده‌ها یادمی‌گیرد که چه ترکیبی از الگوریتم‌ها عموماً نتایج خوبی تولید می‌کنند. با فرض اینکه یک مسئله یادگیری جدید داده شده باشد، پیش‌بینی‌های مجموعه الگوریتم‌های انتخاب شده ترکیب می‌شوند (به عنوان مثال با رأی‌گیری (وزن‌دار)) تا پیش‌بینی نهایی را تشکیل دهند. از آنجا که به نظر می‌رسد هر الگوریتم روی زیرمجموعه‌ای از مسائل کار می‌کند، امید است استفاده از ترکیبی از الگوریتم‌ها برای حل مسائل انعطاف‌پذیری بیشتر و پیش‌بینی‌های بهتری را به همراه داشته باشد.
* تقویت مشابه تعمیم‌دهی پشته‌ای است با این تفاوت که یک الگوریتم مشابه را چندین بار اعمال می‌کند به طوری که نمونه داده‌های آموزشی در هر مرحله از اجرا وزن‌های متفاوتی را می‌گیرند. این فرایند پیش‌بینی‌های متفاوتی را نتیجه می‌دهد که هر یک بر پیش‌بینی صحیح یک زیرمجموعه از داده‌ها تمرکز دارد و ترکیب این پیش‌بینی‌ها با یک‌دیگر نتایج بهتر (اما گران تری) را تولید می‌کند. *• انتخاب سوگیری به صورت پویا* توسط تغییر دادن سوگیری استقرایی یک الگوریتم یادگیری برای مطابقت با مسئله داده شده صورت می‌گیرد. این کار با تغییر جنبه‌های اصلی الگوریتم یادگیری مانند نحوه نمایش فرضیه، فرمول‌های ابتکاری استفاده شده یا نحوه انتخاب و تنظیم پارامترها انجام می‌شود. رویکردهای مختلفی برای انتخاب سوگیری به صورت پویا وجود دارد.
* انتقال استقرایی چگونگی بهبود فرایند یادگیری در طول زمان را مطالعه می‌کند. فراداده متشکل از دانش مربوط به اپیزودهای یادگیری قبلی است و جهت توسعه کارآمد یک فرضیه مؤثر برای یک کار جدید استفاده می‌شود. یک رویکرد مرتبط یادگیری یادگیری نامیده می‌شود که در آن هدف استفاده از دانش کسب شده از یک حوزه برای کمک به یادگیری در حوزه‌های دیگر است.
* سایر رویکردهایی که از فراداده برای بهبود یادگیری خودکار استفاده می‌کنند عبارتند از یادگیری سیستم‌های طبقه‌بندی، استدلال مبتنی بر مورد و ارضای محدودیت‌ها.
* برخی مطالعات نظری و ابتدایی در مورد استفاده از تجزیه و تحلیل رفتاری کاربردی به عنوان زیربنایی برای فرایادگیری عملکرد آموزندگان انسانی و تنظیم دوره آموزشی یک عامل مصنوعی به واسطه یک عامل آغاز شده‌اند.
* یادگیری ماشین اتوماتیک مانند پروژه "AI building AI" گوگل‌برین، که به نقل از گوگل برای مدت کوتاهی از بنچ‌مارک‌های موجود در سال ۲۰۱۷ از ایمیج‌نت فراتر رفت.

## منابع

## پیوند به بیرون
* Metalearning مقاله در Scholarpedia
* Vilalta R. and Drissi Y. (2002) *[http://axon.cs.byu.edu/Dan/478/misc/Vilalta.pdf یک دیدگاه و بررسی متا یادگیری]*، بررسی هوش مصنوعی، ۱8 (2)، ۷۷–۹۵.
* Giraud-Carrier, C. ، & Keller, J. (2002). مقابله با سیل داده‌ها، J. Meij (ویراستار)، فصل فرا-یادگیری. STT / بیتون، لاهه.
* Brazdil P. ، Giraud-Carrier C. ، Soares C. ، Vilalta R. (2009) Metalearning: Applications to data mining , Chapter Metalearning: Concepts and Systems, Springer
* دوره‌های ویدئویی در مورد یادگیری متا با توضیحات گام به گام MAML , شبکه‌های نمونه اولیه و شبکه‌های ارتباطی.
رده:یادگیری ماشین