شبکه عصبی مصنوعی: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
برچسب‌ها: متن دارای ویکی‌متن نامتناظر ویرایشگر دیداری
FreshmanBot (بحث | مشارکت‌ها)
جز ←‏ساختار ریاضی روش بازگشت به عقب: اصلاح فاصله مجازی + اصلاح نویسه با ویرایشگر خودکار فارسی
خط ۲۷:
[[پرونده:شبکه سلولی چهار لایه‌ای .png|بندانگشتی|جایگزین=|640x640پیکسل]]
 
برای سلول عصبی <math>c</math> ورودیی که از سلول عصبی <math>p</math> به این سلول وارد می شودمی‌شود را با <math>b_{pc}</math> نشان می دهیم. وزن این ورودی <math>w_{pc}</math> است و مجموع ضرب ورودیها با وزنهایشان را با <math>a_c</math> نمایش می‌دهیم، به این معنی که <math>a_c = \sum_p w_{pc}\times b_{pc}</math>. حال باید بر روی <math>a_c</math> تابعی غیر خطی اعمال کنیم این تابع را <math>\theta_c</math> می نامیم و خروجی آنراآن را با <math>b_c</math> نمایش می دهیم یعنی <math>b_c = \theta_c(a_c)</math>. به همین شکل خروجیی که از سلول عصبی <math>c</math> خارج شده و به سلول <math>n</math> وارد می شودمی‌شود را با <math>b_{cn}</math> نمایش می‌دهیم و وزن آنراآن را <math>w_{cn}</math> می‌نامیم. حال تمام وزنهای این شبکه عصبی را در مجموعه‌ای به اسم <math>W</math> می‌گنجانیم، هدف یادگیری این وزنهاست.<ref>{{یادکرد وب|وب‌گاه=DeepAI|نشانی=https://deepai.org/machine-learning-glossary-and-terms/backpropagation|عنوان=Build with AI {{!}} DeepAI|بازبینی=2018-10-24}}</ref> اگر ورودی ما <math>x</math> باشد و خروجی <math>y</math> و خروجی شبکه عصبی ما <math>h_W(x)</math>، هدف پیدا کردن انتخاب <math>W</math> است به قسمی که برای تمام داده‌ها <math>y</math>و <math>h_W(x)</math> به هم خیلی نزدیک شوند. به عبارت دیگر هدف کوچک کردن یک [[تابع هزینه]] بر روی تمام داده هاست، اگر داده‌ها را با <math>(x_1, y_1), \cdots, (x_n, y_n)</math> و [[تابع هزینه]] را با <math>l</math> نشان دهیم هدف کمینه کردن تابع پایین است <ref>{{Cite journal|last=A.|first=Nielsen, Michael|date=2015|title=Neural Networks and Deep Learning|url=http://neuralnetworksanddeeplearning.com/chap6.html|language=en}}</ref>:
 
<math>Q(W) = \sum_{i=1}^n l\left(h_W(x_i),\,\,y_i\right)</math>
خط ۳۵:
برای بدست آوردن کمینه <math>Q(W)</math> باید از روش [[گرادیان کاهشی]] استفاده کرد، به این معنی که گرادیان تابع را حساب کرده، کمی در خلاف جهت آن حرکت کرده و این کار را آنقدر ادامه داد تا [[تابع هزینه]] خیلی کوچک شود. روش بازگشت به عقب در واقع روشی برای پیدا کردن گرادیان تابع <math>Q(W)</math> است.
 
حال فرض کنیم می خواهیم گرادیان تابع <math>Q(W)</math> را نسبت به وزن <math>w_{pc}</math>بدست بیاوریم. برای این کار نیاز به [[قاعده زنجیری]] در مشتق گیری داریم. قاعده زنجیری به این شکل کار می کندمی‌کند: اگر تابعی داشته باشیم به اسم <math>f</math> که وابسته به سه ورودی <math>u</math>، <math>v</math> و <math>w</math> باشد و هرکدام از این سه ورودی به نوبه خود وابسته به <math>t</math> باشند، مشتق <math>f</math> به <math>t</math> به این شکل محاسبه می شودمی‌شود:
 
<math>\frac{\partial f\left(u(t),v(t),w(t)\right)}{\partial t} = \frac{\partial f}{\partial u} \frac{\partial u}{\partial t} + \frac{\partial f}{\partial v} \frac{\partial v}{\partial t} + \frac{\partial f}{\partial w} \frac{\partial w}{\partial t} </math>
خط ۶۱:
</math> است و راحت بدست می آید و <math>\delta_c
</math> که از روش بازگشتی بدست می آید و بستگی به <math>\delta
</math> هایی‌هایی لابه بعد دارد که سلول <math>c
</math>به آنهاآن‌ها وصل است، به طوربه‌طور دقیقتر <math>\delta_c = \left(\sum_n w_{cn}\delta_n \right) \times \acute{\theta}_c (a_c)
</math>.
 
روش بازگشتی برای بدست آوردن <math>\delta
</math>ها به این شکل کار میکندمی‌کند که ابتدا <math>\delta
</math> را برای سلولهای لایه خروجی حساب می کنیم، وبعدو بعد لایه‌ها را به نوبت پایین می روم و برای هر سلول <math>\delta
</math> آنراآن را با ترکیت <math>\delta
</math>‌های های لایه هایلایه‌های بالایی آن طبق فرمول حساب میکنیم. محاسبه کردن <math>\delta
</math> برای لایه خروجی آسان است و مستقیما با مشتق گرفتن از <math>Q
</math> بدست می آید.<ref>{{یادکرد کتاب|نشانی=https://www.amazon.com/Artificial-Intelligence-Modern-Approach-3rd/dp/0136042597|عنوان=Artificial Intelligence: A Modern Approach|نام خانوادگی=Russell|نام=Stuart|نام خانوادگی۲=results|نام۲=search|تاریخ=2009-12-11|ناشر=Pearson|سال=|شابک=9780136042594|ویرایش=3|مکان=Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam, Cape Town Dubai London Madrid Milan Munich Paris Montreal Toronto Delhi Mexico City Sao Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo|صفحات=578|زبان=English}}</ref>