ماشین بولتزمن محدودشده(Restricted Boltzman machine)

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

تاریخچه پیدایش:

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

ساختار RBM:

RBM ها شبکه‌های عصبی دو لایه‌ای – لایه قابل‌مشاهده (ورودی) و لایه پنهان –هستند.

 

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

 

 

 

 

مثال RBM:

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

activation f((weight w * input x) + bias b) = output

در اینجا به‌نوعی به دنبال محاسبه (p(a|x; w هستیم که در آن \(a\) تابع فعال‌سازی، \(x\) داده ورودی و \(w\) وزن‌هایی است که در نظر گرفتیم. یعنی به دنبال یافتن احتمال حداکثری تابع فعال‌سازی هستیم به‌شرط داده ورودی و وزن‌هایی که داریم.

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

درگذر عقب به دنبال محاسبه (p(x | a; w هستیم.. یعنی به دنبال یافتن بهترین وضوح از ورودی هستیم به‌شرط پارامترهای فعال‌سازی و وزن‌هایی که داریم. هدف ما این است که با افزایش مداوم وزن‌ها و بایاس درگذر جلو و عقب ، ورودی بازسازی‌شده را بسیار نزدیک به ورودی اصلی به‌دست بیاوریم.

بازسازی:

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

بازسازی در مورد توزیع احتمال ورود اصلی حدس می‌زند. این به‌عنوان یادگیری مولد (generative learning) شناخته می‌شود، که باید از تشخیص‌دهنده (discriminative learning ) برای طبقه‌بندی کمک بگیرد، که ورودی‌ها را به برچسب‌ها نظیر می‌کند تا به‌طور مؤثری خطوط بین گروه‌های نقاط داده را ترسیم کند.

KL Divergence:

بیایید تصور کنیم که داده‌های ورودی و بازسازی‌شده منحنی‌های نرمال با اشکال مختلف هستند که فقط تا حدی باهم همپوشانی و اشتراک دارند. برای اندازه‌گیری فاصله بین توزیع احتمال تخمین زده‌شده \(q(x)\) و توزیع داده ورودی \(p(x)\) ، از Kullback Leibler Divergence استفاده می‌کنند.

KL-Divergence نواحی غیرمشترک را در زیر دو منحنی اندازه‌گیری می‌کند و الگوریتم بهینه‌سازی RBM سعی در به حداقل رساندن آن مناطق می‌کند. در تصویر زیر در سمت چپ، توزیع احتمال تخمین زده‌شده \(q(x)\) و توزیع داده ورودی \(p(x)\) و در سمت راست، ادغام اختلافات آنها را مشاهده می‌کنید.

چون ما به دنبال این هستیم که داده بازسازی‌شده نزدیک به داده مشاهده باشد پس درواقع به دنبال نزدیک کردن (p(x و (q(x هستیم.

برای داده‌هایی بدون برچسب مانند عکس‌ها و فیلم‌ها، بازسازی ورودی آن‌ها توسط ماشین بولتزمن محدودشده مناسب‌ترین انتخاب است، چراکه در بازسازی داده‌ها نیازی به برچسب زدن ندارند. در روند بازسازی ورودی، RBMها با کمک بلوک‌های سازنده و الگوهای ذاتی رمزگشایی روند گذر عقب را انجام می‌دهند، درنتیجه RBM جزء استخراج‌کننده‌های ویژگی مشهور به نام خود رمزنگار (Autoencoder) هستند.

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.