یادگیری نیمهنظارتی یا Semi-supervised learning
یادگیری نیمهنظارتشده یا نیمه نظارتی ( به انگلیسی Semi-supervised learning) یک پارادایم در یادگیری ماشین است که با مجموعهدادههای بخشی از برچسبها (partially labeled datasets) کار میکند. زمانی که یادگیری عمیق (deep learning) در دنیای واقعی به کار میرود، معمولاً باید یک مجموعهداده بزرگ به همراه لیبل یا برچسب جمعآوری شود تا مدل با اتکا بر آموزش با سرپرست به خوبی عمل کند. با این حال، هزینه برچسبگذاری به صورت خطی با اندازه مجموعهداده افزایش مییابد (برچسبگذاری هر نمونه زمان ثابت میبرد)، در حالی که عملکرد مدل تنها به صورت زیرخطی (sublinearly) با آن افزایش مییابد. این بدین معناست که برچسبگذاری نمونههای بیشتر و بیشتر، به طور فزایندهای از نظر هزینه غیرکارآمد میشود، در حالی که جمعآوری دادههای بدون برچسب (unlabeled data) معمولاً ارزان است، زیرا این دادهها به راحتی و به طور فراوان در دسترس هستند.
یادگیری نیمهنظارتشده این مشکل را با نیاز به یک مجموعهدادهی بخشی از برچسبخورده حل میکند و با استفاده از نمونههای بدون برچسب برای یادگیری، به صورت بهینه برچسبها را مصرف میکند.
یادگیری نظارتشده و بدون ناظر(Supervised Learning و Unsupervised Learning)
یادگیری تقابلی یا متضاد (Contrastive Learning)
در سطح بالا، ایده اصلی یادگیری تقابلی این است که نمایشهایی یاد بگیریم که در برابر تغییرات تصویر (image augmentations) مقاوم باشند و به صورت خودنظارتشده (self-supervised) آموزش داده شوند. یکی از مشکلات این هدف این است که یک راهحل ناچیز (trivial degenerate solution) وجود دارد:
- حالتی که در آن نمایشها ثابت هستند و اصلاً به تصاویر ورودی وابسته نیستند.
Trivial Solution
“Trivial solution” به راهحلهایی اطلاق میشود که خیلی ساده و بیمعنی هستند و معمولاً هیچ مشکلی را حل نمیکنند. در یادگیری ماشین، این نوع راهحلها زمانی اتفاق میافتد که مدل به نتیجهای میرسد که هیچگونه تفاوت یا اطلاعات جدیدی نمیدهد. به طور مثال، مدل ممکن است همه دادهها را به یک مقدار ثابت نگاشت کند و هیچ تفاوتی بین تصاویر مختلف ایجاد نکند. در یادگیری تقابلی، این راهحل میتواند به این صورت باشد که مدل تمامی تصاویر را به یک نمایش ثابت تبدیل کند، به طوری که تفاوتی بین آنها وجود نداشته باشد.
یادگیری تقابلی از این دام اجتناب میکند و هدف را به این صورت تغییر میدهد: نمایشهای نسخههای تغییر یافته/دیدگاههای مختلف یک تصویر مشابه باید به هم نزدیکتر شوند (جمعآوری مثبتها یا contracting positives)، در حالی که به طور همزمان باید تصاویر مختلف از هم دور شوند (تمایز منفیها یا contrasting negatives) در فضای نمایش.
یکی از رویکردهای تقابلی چنین رویکردی است که SimCLR نامیده میشود. این رویکرد اساساً اجزای اصلی مورد نیاز برای بهینهسازی این هدف را شناسایی میکند و میتواند با مقیاسبندی این روش ساده، عملکرد بالایی را به دست آورد.
رویکرد دیگری به نام SimSiam (مثال در Keras)، تفاوت اصلیاش با SimCLR این است که در این روش از هیچ منفیای در ضرر (loss) استفاده نمیشود. بنابراین، این روش به صورت صریح از راهحل ناچیز جلوگیری نمیکند و به جای آن، به طور ضمنی از آن اجتناب میکند. این کار از طریق طراحی معماری (مسیرهای کدگذاری نامتقارن با استفاده از شبکه پیشبینیکننده و نرمالسازی دستهای (BatchNorm) در لایههای نهایی) انجام میشود.
برای مطالعه بیشتر در مورد SimCLR، به پست رسمی وبلاگ Google AI مراجعه کنید و برای یک مرور فارسی به بلاگ پست زیر مراجعه کنید:
یادگیری متضاد یا مقایسهای (Contrastive Learning) – SimCLR و BYOL
دیدگاهتان را بنویسید