فصل چهاردهم: یادگیری بدون نظارت

black-swan-theory

مقدمه

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

  • تولید نمونه‌های جدید

  • حذف نویز

  • درون‌یابی

  • فشرده‌سازی داده‌ها

  • کشف ساختار داخلی داده‌ها (مانند خوشه‌بندی)

  • تشخیص نمونه‌های پرت

1. طبقه‌بندی مدل‌های یادگیری بدون نظارت

متغیرهای پنهان و مدل‌های مولد

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

مدل‌های مولد، زیرمجموعه‌ای از مدل‌های بدون نظارت هستند که می‌توانند نمونه‌های جدیدی تولید کنند. این مدل‌ها با تعریف یک توزیع Pr(z)\Pr(z) روی متغیرهای پنهان و سپس نگاشت zz به فضای داده‌های مشاهده‌شده xx عمل می‌کنند.

چهار مدل مولد پرکاربرد عبارت‌اند از:

  1. شبکه‌های متخاصم مولد (GAN)

  2. رمزگذارهای خودکار متغیر (VAE)

  3. جریان‌های عادی (Normalizing Flows)

  4. مدل‌های انتشار (Diffusion Models)

 

2. ویژگی‌های مطلوب مدل‌های مولد

یک مدل مولد خوب باید دارای ویژگی‌های زیر باشد:

  1. نمونه‌برداری کارآمد: تولید نمونه‌ها باید از نظر محاسباتی مقرون‌به‌صرفه باشد.

  2. نمونه‌برداری با کیفیت بالا: نمونه‌ها باید از داده‌های واقعی غیرقابل تشخیص باشند.

  3. پوشش توزیع: نمونه‌ها باید کل توزیع داده‌های آموزشی را پوشش دهند.

  4. فضای نهان خوش‌رفتار: تغییرات هموار در zz باید به تغییرات هموار در xx منجر شود.

  5. فضای نهان جداشده: هر بعد از zz باید با ویژگی‌های قابل تفسیر در داده‌ها مطابقت داشته باشد.

  6. محاسبه درست‌نمایی: در مدل‌های احتمالی، محاسبه‌ی احتمال برای نمونه‌ها باید دقیق و کارآمد باشد.

 

3. معیارهای ارزیابی مدل‌های مولد

ارزیابی مدل‌های مولد دشوار است اما چند معیار رایج شامل:

  1. احتمال آزمون: اندازه‌گیری احتمال داده‌های آزمایشی تحت مدل – برای مدل‌های احتمالی مانند VAE مناسب است.

  2. امتیاز آغازین (Inception Score – IS)

  3. فاصله آغازین فرشته (Fréchet Inception Distance – FID)

  4. دقت و یادآوری منیفولد: هم‌پوشانی منیفولد داده‌های واقعی و تولیدی را ارزیابی می‌کند.

 

4. شبکه‌های متخاصم مولد (GAN)

معرفی GAN

GAN از دو شبکه تشکیل شده است:

  1. مولد (Generator): یک بردار نویز تصادفی zN(0,I)z \sim \mathcal{N}(0, I) را به یک نمونه داده xx^* نگاشت می‌کند.

  2. متمایزکننده (Discriminator): سعی دارد بین داده‌های واقعی و تولیدی تمایز قائل شود.

آموزش GAN

هدف آموزش، حل یک بازی دومینیمم – بیشینه بین دو بازیکن است.

تابع زیان متمایزکننده:

L[ϕ]=Ex[log(1σ(f[x,ϕ]))]Ex[log(σ(f[x,ϕ]))]L[\phi] = -\mathbb{E}_{x^*} \left[ \log\left(1 – \sigma(f[x^*, \phi])\right) \right] – \mathbb{E}_{x} \left[ \log\left(\sigma(f[x, \phi])\right) \right]

تابع زیان مولد:

L[θ]=Ez[log(1σ(f[g[z,θ],ϕ]))]L[\theta] = \mathbb{E}_{z} \left[ \log\left(1 – \sigma(f[g[z, \theta], \phi])\right) \right]

که در آن σ\sigma تابع سیگموید، g[z,θ]g[z, \theta] خروجی مولد و f[x,ϕ]f[x, \phi] خروجی متمایزکننده است.

چالش‌های آموزش GAN

  1. ناپدید شدن گرادیان: زمانی که متمایزکننده بسیار قوی باشد.

  2. فروپاشی حالت (Mode Collapse): مولد فقط نمونه‌های محدودی تولید می‌کند.

  3. یافتن تعادل نش: آموزش همزمان دو شبکه پایدار نیست.

بهبود پایداری آموزش

  1. Wasserstein GAN: استفاده از فاصله Wasserstein به جای واگرایی Jensen–Shannon.

  2. رشد پیشرونده (Progressive Growing)

  3. تبعیض دسته‌ای کوچک (Mini-batch Discrimination)

  4. برش متغیر نهان (Truncation Trick)

 

5. مدل‌های مولد پیشرفته

GAN شرطی (Conditional GAN)

در GAN شرطی، مولد و متمایزکننده با شرط cc تقویت می‌شوند:

x=G(z,c),D(x,c)x^* = G(z, c), \quad D(x, c)

که cc می‌تواند برچسب، کلاس یا ویژگی خاصی از داده‌ها باشد.

StyleGAN

StyleGAN با تزریق نویز در سطوح مختلف شبکه مولد، کنترل بهتر و قابل تفسیرتری بر ویژگی‌های تولیدی ارائه می‌دهد. این مدل از نرمال‌سازی تطبیقی استفاده می‌کند تا سبک (Style) تصویر در مقیاس‌های مختلف کنترل شود.

 

6. نتیجه‌گیری

مدل‌های مولد یادگیری بدون نظارت، ابزارهایی قدرتمند برای:

  • تولید داده‌های جدید

  • درک ساختار داده‌ها

  • افزایش داده

  • بازسازی و کاهش نویز

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