فرآیند گاوسی شبکه عصبی

بندانگشتی|406x406پیکسل|سمت چپ: یک شبکه عصبی بیزی با دو لایه پنهان، که یک ورودی سه بعدی (پایین) را به یک خروجی دو بعدی تبدیل می‌کند.<math>(y_1, y_2)</math>(بالا). سمت راست: تابع چگالی احتمال خروجی<math>p(y_1, y_2)</math>

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

فرآیندهای گاوسی شبکه عصبی (NNGPs) تا حدی معادل شبکه‌های عصبی بیزی هستند، و یک شکل بسته ارائه می‌کنند. روشی برای ارزیابی شبکه‌های عصبی بیزی آنها یک توزیع احتمال فرایند گاوسی هستند که توزیع بر روی پیش‌بینی‌های انجام شده توسط شبکه عصبی بیزی مربوطه را توصیف می‌کند. محاسبات در شبکه‌های عصبی مصنوعی معمولاً در لایه‌های متوالی نورون‌های مصنوعی سازماندهی می‌شوند. به تعداد نورون‌های یک لایه، عرض لایه می‌گویند. هم‌ارزی بین NNGPها و شبکه‌های عصبی بیزی زمانی اتفاق می‌افتد که لایه‌ها در شبکه عصبی بیزی بی‌نهایت گسترده شوند (شکل را ببینید). این محدودیت عرض بزرگ مورد توجه عملی است، زیرا شبکه‌های عصبی با عرض محدود معمولاً با افزایش عرض لایه عملکرد بهتری دارند.

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

## یک تصویر کارتونی
جایگزین=|بندانگشتی|406x406پیکسل| وقتی پارامترها <math>\theta</math> یک شبکه با عرض نامحدود به‌طور مکرر از شبکه قبلی خود نمونه برداری می‌شود <math>p(\theta)</math> ، توزیع حاصل بر روی خروجی‌های شبکه توسط یک فرایند گاوسی توصیف می‌شود.
هر تنظیم پارامترهای یک شبکه عصبی \theta مربوط به یک تابع خاص است که توسط شبکه عصبی محاسبه می‌شود. توزیع ابتدایی p(\theta)  روی پارامترهای شبکه عصبی مربوط به یک توزیع بر روی توابع محاسبه شده توسط شبکه است. از آنجایی که شبکه‌های عصبی بی‌نهایت گسترده هستند، این توزیع بر روی توابع برای بسیاری از معماری‌ها به یک فرایند گاوسی همگرا می‌شود.

شکل سمت راست خروجی‌های یک بعدی را ترسیم می‌کند z^L(\cdot;\theta) یک شبکه عصبی برای دو ورودی x و x^* در برابر یکدیگر نقاط سیاه تابع محاسبه شده توسط شبکه عصبی روی این ورودی‌ها را برای ترسیم تصادفی پارامترها از p(\theta) . خطوط قرمز، خطوط همسان احتمال برای توزیع مشترک بر روی خروجی‌های شبکه یعنی z^L(x;\theta) و z^L(x^*;\theta) هستند که از توزیع  p(\theta) القا شده‌است. . این توزیع در فضای تابع مربوط به توزیع p(\theta)  در فضای پارامتر است، و نقاط سیاه نمونه‌هایی از این توزیع هستند. برای شبکه‌های عصبی بی‌نهایت گسترده، از آنجایی که توزیع روی توابع محاسبه شده توسط شبکه عصبی یک فرایند گاوسی است، توزیع مشترک بر روی خروجی‌های یک شبکه گاوسی چند متغیره برای هر مجموعه متناهی از ورودی‌های شبکه است.

نماد استفاده شده در این بخش مانند نماد استفاده شده در زیر برای به دست آوردن مطابقت بین NNGPها و شبکه‌های کاملاً همبند است و جزئیات بیشتر نیز قابل مشاهده است..

## معماری‌هایی که با NNGP مطابقت دارند
نشان داده شده‌است که هم‌ارزی بین شبکه‌های عصبی بیزینی با پهنای بی‌نهایت و NNGP برای: شبکه‌های کاملاً متصل و عمیق برقرار است، زیرا تعداد واحدها در هر لایه به بی‌نهایت می‌رسد. شبکه‌های عصبی کانولوشن به عنوان تعداد کانال‌ها تا بی‌نهایت گرفته می‌شود. شبکه‌های ترانسفورماتور به عنوان تعداد سر توجه به بی‌نهایت گرفته می‌شود. شبکه‌های تکراری به عنوان تعداد واحدها تا بی‌نهایت گرفته می‌شود. در واقع، این تناظر NNGP تقریباً برای هر معماری صادق است: به‌طور کلی، اگر یک معماری را بتوان صرفاً از طریق ضرب ماتریس و غیرخطی‌های هماهنگی بیان کرد (یعنی یک برنامه تانسور)، آنگاه دارای یک GP با عرض نامحدود است. این به‌طور خاص شامل تمام شبکه‌های عصبی پیش‌خور یا بازگشتی متشکل از پرسپترون چندلایه، شبکه‌های عصبی بازگشتی (مثلاً LSTMs، درنا)، (دوم یا نمودار) پیچیدگی، تجمع، جست و خیز اتصال، توجه، عادی دسته ای، و / یا لایه عادی.

معماری‌های خاصی را می‌توان طوری تغییر داد که به شبکه‌های عصبی بیزی نامتناهی اجازه دهد که NNGP با هسته‌های ترکیب شده از طریق عملیات افزایشی و ضربی تولید کنند.

## مکاتبات بین یک شبکه کاملاً متصل بی‌نهایت گسترده و یک فرایند گاوسی
این بخش در مورد تطابق بین شبکه‌های عصبی گسترده و فرآیندهای گاوسی برای مورد خاص یک معماری کاملاً متصل گسترش می‌یابد. این یک طرح اثباتی ارائه می‌دهد که نشان می‌دهد چرا مکاتبات برقرار است، و شکل عملکرد خاص NNGP را برای شبکه‌های کاملاً متصل معرفی می‌کند. طرح اثبات نزدیک به رویکرد *نواک* *و همکاران است.*.
بندانگشتی| یک NNGP مشتق شده‌است که معادل یک شبکه عصبی بیزی با این معماری کاملاً متصل است.
یک شبکه عصبی مصنوعی کاملاً متصل با ورودی‌ها را در نظر بگیرید x ، مولفه‌های \theta متشکل از وزنه‌ها W^l و تعصبات b^l برای هر لایه l در شبکه، پیش فعال سازی (پیش غیرخطی) z^l ، فعال سازی (پس از غیرخطی بودن) y^l ، غیرخطی نقطه ای \phi(\cdot) و عرض لایه‌ها n^l . برای سادگی، عرض n^{L+1} از بردار بازخوانی z^L 1 در نظر گرفته شده‌است. پارامترهای این شبکه دارای توزیع قبلی هستند p(\theta) ، که از یک گاوسی همسانگرد برای هر وزن و بایاس تشکیل شده‌است، با واریانس وزن‌ها به صورت معکوس با عرض لایه. این شبکه در شکل سمت راست نشان داده شده‌است و با مجموعه معادلات زیر توضیح داده شده‌است:

: 
\begin{align}
x &\equiv \text{input} \\
y^l(x) &= \left\{\begin{array}{lcl}
x & & l = 0 \\
\phi\left(z^{l-1}(x)\right) & & l > 0
\end{array}\right. \\
z^l_i(x) &= \sum_j W^l_{ij} y^l_j(x) + b^l_i \\
W^l_{ij} &\sim \mathcal N\left( 0, \frac{\sigma^2_w}{n^l} \right) \\
b^l_i &\sim \mathcal N\left( 0,\sigma^2_b \right) \\
\phi(\cdot) &\equiv \text{nonlinearity} \\
y^l(x), z^{l-1}(x) &\in \mathbb R^{n^l \times 1} \\
n^{L+1} &= 1 \\
\theta &= \left\{ W^0, b^0, \dots, W^L, b^L \right\}
\end{align}


### <math>z^l | y^l</math> یک فرایند گاوسی است
ابتدا مشاهده می‌کنیم که پیش فعال سازی‌ها z^l توسط یک فرایند گاوسی مشروط به فعال سازی‌های قبلی توصیف می‌شوند y^l . این نتیجه حتی در عرض محدود نیز برقرار است. هر پیش فعال سازی z^l_i یک مجموع وزنی از متغیرهای تصادفی گاوسی است که مربوط به اوزان است W^l_{ij} و تعصبات b^l_i ، که در آن ضرایب هر یک از آن متغیرهای گاوسی، فعال سازی‌های قبلی هستند y^l_j . از آنجایی که آنها مجموع وزنی از گاوسیان با میانگین صفر هستند z^l_i خودشان گاوسیان صفر میانگین هستند (مشروط به ضرایب y^l_j). از آنجا که z^l به‌طور مشترک برای هر مجموعه ای از گاوسی هستند y^l ، آنها توسط یک فرایند گاوسی مشروط به فعال سازی‌های قبلی توصیف می‌شوند y^l . کوواریانس یا هسته این فرایند گاوسی به وزن و واریانس بایاس بستگی دارد \sigma_w^2 و \sigma_b^2 و همچنین ماتریس لحظه دوم K^l از فعال سازی‌های قبلی y^l.

: 
\begin{align}
z^l_i \mid y^l &\sim \mathcal{GP}\left( 0, \sigma^2_w K^l + \sigma^2_b \right) \\
K^l(x, x') &= \frac{1}{n^l} \sum_i y_i^l(x) y_i^l(x')
\end{align}


تأثیر ترازو وزن \sigma^2_w این است که سهم به ماتریس کوواریانس را مجدداً مقیاس بندی کنیم K^l ، در حالی که سوگیری برای همه ورودی‌ها مشترک است و غیره \sigma_b^2 را می‌سازد z^l_i برای نقاط داده مختلف شبیه تر است و ماتریس کوواریانس را بیشتر شبیه به یک ماتریس ثابت می‌کند.

### <math>z^l | K^l</math> یک فرایند گاوسی است
پیش فعال سازی‌ها z^l فقط به y^l از طریق ماتریس لحظه دوم آن K^l وابسته است. به همین دلیل می‌توان گفت که z^l یک فرایند گاوسی شرطی روی K^l است، نه روی y^l.

: 
\begin{align}
z^l_i \mid K^l &\sim \mathcal{GP}\left( 0, \sigma^2_w K^l + \sigma^2_b \right).
\end{align}


### به عنوان عرض لایه <math>n^l \rightarrow \infty</math> ، <math>K^l \mid K^{l-1}</math> قطعی می‌شود
همان‌طور که قبلاً تعریف شد، K^l ماتریس لحظه دوم از y^l . از آنجا که y^l بردار فعال سازی پس از اعمال غیرخطی است \phi ، می‌توان آن را جایگزین کرد \phi\left(z^{l-1}\right) ، و در نتیجه یک معادله اصلاح شده بیان می‌کند K^l برای l>0 به لحاظ z^{l-1} ،

: 
\begin{align}
K^l(x, x') &=
\frac{1}{n^l} \sum_i \phi\left( z^{l-1}_i(x) \right) \phi\left( z^{l-1}_i(x') \right)
.
\end{align}


ما قبلاً تعیین کرده‌ایم که z^{l-1} | K^{l-1} یک فرایند گاوسی است. این یعنی مجموعی که  K^l را تعریف می‌کند، میانگین n^l نمونه ای از یک فرایند گاوسی است که خود تابعی از K^{l-1} است.


\begin{align}
\left\{ z^{l-1}_i(x), z^{l-1}_i(x') \right\} &\sim \mathcal{GP}\left( 0, \sigma^2_w K^{l-1} + \sigma^2_b \right)
.
\end{align}


به عنوان عرض لایه n^l به بی‌نهایت می‌رود، این میانگین به پایان می‌رسد n^l نمونه‌هایی از فرایند گاوسی را می‌توان با یک انتگرال بر روی فرایند گاوسی جایگزین کرد:

: 
\begin{align}
\lim_{n^l \rightarrow \infty} K^l(x, x') &= \int dz dz' \phi( z ) \phi( z' ) \mathcal{N}\left( \left[\begin{array}{c}
z \\
z'
\end{array}\right]; 0, \sigma^2_w \left[
\begin{array}{cc}
K^{l-1}(x, x) & K^{l-1}(x, x') \\
K^{l-1}(x', x) & K^{l-1}(x', x')
\end{array}
\right] + \sigma^2_b \right)
\end{align}


بنابراین، در محدوده عرض نامحدود ماتریس لحظه دوم K^l برای هر جفت ورودی x و x' را می‌توان به عنوان یک انتگرال بر روی یک گاوسی ۲ بعدی، از حاصل ضرب بیان کرد \phi(z) و \phi(z') . تعدادی از موقعیت‌ها وجود دارد که در آن این به صورت تحلیلی حل شده‌است، مانند زمانی که \phi(\cdot) یک تابع غیرخطی ReLU , ELU, GELU، یا خطا. حتی زمانی که نمی‌توان آن را به صورت تحلیلی حل کرد، از آنجایی که یک انتگرال ۲ بعدی است، به‌طور کلی می‌توان آن را به صورت عددی به‌طور مؤثر محاسبه کرد. این انتگرال قطعی است، بنابراین K^l | K^{l-1} قطعی است. برای کوتاه نویسی یک تابع تعریف می‌کنیم F ، که مربوط به محاسبه این انتگرال ۲ بعدی برای همه جفت ورودی‌ها و نقشه‌ها است K^{l-1} به K^l ،

: 
\begin{align}
\lim_{n^l \rightarrow \infty} K^l
&= F\left(
K^{l-1}
\right)
.
\end{align}


### <math>z^L \mid x</math> یک NNGP است
با اعمال این مشاهده به صورت بازگشتی که K^l \mid K^{l-1} وقتی  n^l \rightarrow \infty، قطعی است، K^L را می‌توان به عنوان یک تابع قطعی K^0 در نظر گرفت،

: 
\begin{align}
\lim_{\min\left( n^1, \dots, n^L\right) \rightarrow \infty} K^L
&= F \circ F
\cdots
\left(
K^{0}
\right) = F^L\left(K^0\right)
,
\end{align}


جایی که F^L نشان دهنده اعمال تابعی است F به صورت متوالی L بار. با ترکیب این عبارت با مشاهدات بعدی که لایه ورودی ماتریس گشتاور دوم است K^0(x,x')=\frac{1}{n^0} \sum_i x_i x'_i تابع قطعی ورودی است x ، و آن z^L | K^L یک فرایند گاوسی است، خروجی شبکه عصبی را می‌توان به عنوان یک فرایند گاوسی بر حسب ورودی آن بیان کرد،

: 
\begin{align}
z^L_i(x) &\sim \mathcal{GP}\left( 0, \sigma^2_w F^L\left(K^0\right) + \sigma^2_b \right)
.
\end{align}


## کتابخانه‌های نرم‌افزاری
Neural Tangents یک کتابخانه رایگان و منبع باز پایتون است که برای محاسبه و انجام استنتاج با NNGP و هسته مماس عصبی مربوط به معماری‌های مختلف ANN رایج استفاده می‌شود.

## منابع

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