
هر الگوي / پوك اعمال شده به شبكه انجام ميشود.
ميانگين رياضي اين وزنها بر روي مجموعه آموزش تغيير ميكند و در نتيجه تخميني از تغييرات واقعي است كه در نتيجه اصلاح وزنها بر مبناي حداقل كردن تابع هزينه به دست ميآيد. كيفيت اين تخمين را در بخشهاي بعدي بررسي خواهيم نمود.
حال در نظر بگيريد كه نورون j را در حاليكه توسط دستهاي از سيگنالهاي كاري توسط لايه سمت چپ تغذيه ميشود نشان ميدهد. ميدانهاي محلي اعمال شده كه در ورودي تابع محرك مربوط به نورون j توليد شده اند به صورت زير هستند:
(2-17)
كه در آن m تعداد كل وروديها (به غير از باياس) اعمال شده به نورون j است. وزن سيناپسي (كه مربوط به ورودي ثابت است) برابر با باياس اعمال شده به نورون j است. در نتيجه تابع سيگنال در خروجي نورن j در گام n ظاهر ميشود:
(2-18)
مشابه با الگوريتم LMS، الگوريتم پس انتشار خطا اصلاح وزني برابر بابه وزن سيناپسي اعمال ميشود كه متناسب با مشتقات جزئي است. با استفاده از قانون استقرا ميتوانيم اين گراديان را به صورت زير به دست آوريم:
(2-19)
مشتق جزئي ضريب حساسيت را مشخص ميكند كه جهت جستجو در فضاي وزن را براي وزن مشخص ميكند.
با مشتق گيري از دو طرف معادله (2-15) نسبت به به دست ميآوريم.
(3-20)
با مشتق گيري از دو طرف معادله (2-14) نسبت به به دست ميآوريم:
(2-21)
سپس با مشتق گيري از رابطه (3-5) نسبت را به دست ميآوريم.
(2-22)
كه علامت پريم در سمت راست علامت مشتق نسبت به آرگومان است. نهايتاً با مشتق گيري از معادله (2-17) نسبت را دست ميآوريم.
(2-23)
با استفاده از معادلات (2-20) تا (2-23) در (2-19) به دست ميآوريم:
(2-24)
اصلاح كه بهاعمال ميشود توسط قانون دلتا تعريف ميشود:
(2-25)
كه پارامتر نرخ يادگيري الگوريتم پس انتشار است. استفاده از علامت منفي در رابطه (2-25) نشان دهنده كاهش گراديان در فضاي وزن (جستجوي جهت تغيير وزني كه مقدار را كاهش ميدهد) است. به اين ترتيب استفاده از روابط (2-24) و (2-25) به رابطه زير منجر ميشود.
(2-26)
كه در آن گراديان محلي به صورت زير تعريف ميشود:
(2-27)
گراديان محلي تغييرات لازم در وزنهاي سيناپسي را مشخص ميكند. بنابر معادله (2-27) گراديان محلي براي نورون خارجي j مساوي با حاصل ضرب سيگنال خطاي مورد نظر و مشتق تابع محرك مربوطه ميباشد.
از معادلات (2-29) و (2-27) در مييابيم كه عنصر كليدي در محاسبات تنظيم وزن سيگنال خطاي در خروجي نورون j است. در اين ارتباط ميتوانيم دو حالت متفاوت را بسته به محل قرارگيري نورون j در شبكه در نظر بگيريم. در حالت اول نورون j يك نود خروجي است. ارزيابي اين حالت آسان است زيرا هر نود خروجي شبكه با پاسخ مطلوب مربوط به خود تغذيه ميشود كه محاسبه سيگنال خطاي مربوطه را مستقيماً امكان پذير ميسازد. در حالت دوم نورون jيك نود مخفي است. گرچه نورونهاي مخفي مستقيماً قابل دسترسي نيستند، اما مسئوليت هر خطايي را كه در خروجي شبكه رخ ميدهد بر عهده دارند. با اين حال سئوال اين است كه چگونه يك نورون مخفي را براي مسئوليتي كه به عهده دارد تشويق يا تنبيه ميكنيم. اين يك مسأله اختصاص دهي اعتبار است و از طريق پس انتشار سيگنال خطا در شبكه حل ميشود.
حالت 1: نورون j يك نود خروجي است
هنگامي كه نورون j در لايه خروجي شبكه قرار ميگيرد توسط پاسخ مطلوبي كه مربوط به خود نورون است تغذيه ميشود. ميتوانيم از رابطه (2-14) براي محاسبه سيگنال خطاي مربوط به اين نورون استفاده كنيم . وقتي را مشخص ميكنيم گراديان محلي با استفاده از معادله (2-27) مستقيماً محاسبه ميشود.
حالت 2: نورون j يك نود مخفي است
هنگامي كه نورون j در لايه مخفي شبكه قرار داشته باشد هيچ پاسخ مطلوب معيني براي آن نورون وجود ندارد. بنابراين سيگنال خطاي نورون مخفي بايد به صورت بازگشتي بر مبناي سيگنال خطاي همه نورونهايي كه نورون مخفي مستقيماً به آن متصل است تعيين شود. اين همان جايي است
كه اجراي الگوريتم پس انتشار پيچيده ميشود. با توجه به معادله (2-14) ميتوانيم گراديان محلي را براي نورون مخفي به صورت زير بازنويسي كنيم:
(2-28) نورون j مخفي است
كه در سطر دوم از رابطه (2-22) استفاده كردهايم. براي محاسبه مشتق جزيي به ترتيب زير عمل ميكنيم.
(2-29) نورون k يك نورون خروجي است
كه همان رابطه (2-15) است كه در آن به جاي انديس j از انديس k استفاده شده است. اين كار را به اين منظور انجام دادهايم كه با حالت 2 كه انديس به يك نورون مخفي اشاره مي كند اشتباه نشود. با مشتق گيري از رابطه (2-29) نسبت به تابع كاري به دست ميآوريم:
(2-30)
حال ميتوانيم از قانون زنجيرهاي براي مشتق جزئي استفاده كنيم و معادله (3-30) را به صورت زير بازنويسي كنيم:
(2-31)
با اين وجود داریم:
(2-32) نورون k يك نود خروجي است
بنابراين
(2-33)
همچنين میدانیم که ميدانهاي اعمال شده محلي براي نورون k به صورت زير قابل بيان هستند:
(2-34)
كه در ان m تعداد كل وروديهاي اعمال شده (به غير از باياس) به نورون k است. در اينجا نيز وزن سيناپسي برابر با باياس اعمال شده به نورون k است و ورودي متناظر در مقدار 1+ ثابت ميشود. با مشتق گيري از رابطه (2-34) نسبت به به نتيجه زير ميرسيم:
(2-35)
با استفاده از روابط (2-33) و (2-35) در رابطه (2-31) به مشتق جزيي مورد نظر ميرسيم:
(2-36)
كه در سطر دوم از تعريف گراديان محلي كه در رابطه (2-27) داده شده است استفاده كردهايم و به جاي انديس j از انديس k استفاده كردهايم.
نهايتاً با استفاده از رابطه (2-36) در (2-28) فرمول پس انتشار را براي گراديان محلي به صورت زير به دست ميآوريم:
(2-37)
ضريب در محاسبه گراديان محلي در رابطه (2-37) تنها تابع محرك مربوط به نورون مخفي j وابسته است. بقيه ضرايب در محاسبات فوق، يعني جمع بر روي k، به دو مجموعه از جملات وابسته است. اولين مجموعه از جملات، ها هستند كه به سيگنالهاي خطاي براي تمامي نورونهايي كه در لايه سمت راست نورونهاي مخفي j قرار دارند و نورونهايي كه مستقيماً به نورونj متصل ميشوند وابستهاند. دومين مجموعه از جملات ها هستند كه وزنهاي سيناپسي مربوط به اين اتصالات ميباشند.
اكنون روابطي كه براي الگوريتم پس انتشار بدست آورديم را جمع بندي ميكنيم، ابتدا اصلاح را كه به وزن سيناپسي اتصال دهنده نورون i به نورون j اعمال ميشود با استفاده از قانون دلتا تعريف ميكنيم:
(2-38)
دوم آنكه گراديان محلي به اين بستگي دارد كه نورون j يك نود خروجي است يا يك نود مخفي:
اگر نورون j يك نود خروجي باشد برابر با حاصل ضرب مشتق و سيگنال خطاي است كه هر دوي آنها مربوط به نورون j هستند (به معادله (3-27) رجوع كنيد).
اگر نورون j يك نود مخفي باشد برابر با حاصل ضرب مشتق مربوطه و جمع وزن دار ها است كه براي نورونها در لايه مخفي اي
خروجي بعدي كه به نورون j متصل ميشوند محاسبه ميگردد (به معادله (2-27) رجوع كنيد).
2-8-6 دو مسير محاسباتي
در بهكارگيري الگوريتم پسانتشار دو مسير محاسباتي مجزا وجود دارد. اولين مسير با عنوان مسير پيش رو و دومين مسير بعنوان مسير پس رو شناخته ميشود.
در مسير پيش رو وزنهاي سيناپسي در طول شبكه بدون تغيير باقي ميماند و سيگنالهاي عمل شبكه به صورت نورون به نورون محاسبه ميشوند. سيگنال عمل كه در خروجي نورون j ظاهر ميشود به صورت زير محاسبه ميشود:
(2-39)
كه در آن ميدان اعمال شده محلي نورون j است كه به صورت زير تعريف ميشود:
(2-40)
كه در آن m برابر با تعداد كل وروديها (به غير از باياس) اعمال شده به نورون j ميباشد و وزن سيناپسي است كه نورون i را به نورون j متصل ميكند و سيگنال ورودي نورون j يا معادل با آن سيگنال عمل ظاهر شده در خروجي نورون i است. اگر نورون j در اولين لايه مخفي شبكه باشد و انديس i نشان دهنده i امين ترمينال ورودي شبكه است كه براي آن ميتوانيم بنويسيم:
(2-41)
كه در آن i امين المان از بردار (الگوي) ورودي است. از طرف ديگر اگر نورون j در لايه خروجي شبكه باشد و انديس j به j امين ترمينال خروجي شبكه اشاره ميكند كه براي آن مينويسيم:
(2-42)
كه در آن j امين جز بردار (الگوي) خروجي است. اين خروجي با پاسخ مطلوب مقايسه ميشود، و از آن سيگنال خطاي را براي j امين نورون خروجي شبكه به دست ميايد. در نتيجه فاز رو به جلو محاسبات با قراردادن بردار ورودي در اولين لايه مخفي به دست ميآيد و در لايه خروجي با محاسبه سيگنال خطا براي هر نورون در اين لايه پايان مييابد.
از طرف ديگر مسير پس رو از لايه خروجي آغاز ميشود و با گذراندن سيگنالهاي خطا به صورت لايه به لايه به سمت چپ توزيع ميگردد و مقدار (گراديان محلي) به صورت خود بازگشتي براي هر نورون محاسبه ميگردد. براي نوروني كه در لايه خروجي قرار دارد برابر با سيگنال خطاي نورون ضرب در مشتق اول تابع غير خطي است. به اين ترتيب از رابطه (2-38) براي محاسبه تغييرات تمام وزنهايي كه لايه خروجي را تغذيه ميكنند استفاده ميشود. هنگامي كه ها در نورونهاي لايه خروجي معلوم باشند از معادله (2-37) براي محاسبه هاي تمام نورون ها در لايه تنبيه شونده و در نتيجه تغييرات وزنهاي تمامي اتصالاتي كه آنها را تغذيه ميكند، استفاده ميشود. محاسبه خودبازگشتي به صورت لايه به لايه با انتشار تغييرات به تمام وزنهاي سيناپسي در شبكه ادامه مييابد.
بايد توجه داشته باشيم كه در هنگام ارائه هر نمونه آموزش، الگوي ورودي در فرآيند انتقال كه مسير پيش رو و پس رو را تحت تأثير قرار ميدهد، ثابت ميماند.
تابع محرك محاسبه براي هر نورون در پرسترون چند لايه نيازمند دانستن مشتق تابع محرك نورون مربوطه است. براي اين كه مشتق تابع وجود داشته باشد لازم است كه تابعي پيوسته باشد. در واقع مشتق پذيري تنها شرطي است كه تابع محرك بايد داشته باشد. يك نمونه از تابع محرك غير خطي با مشتق پذيري پيوسته كه معمولاً در پرسپترونهاي چند لايه استفاده ميشود غير خطي سيگمونيدي است كه دو صورت آن به شرح زير بيان ميشوند:
تابع لجستيك: اين صورت از غير خطي سيگمونيدي به طور كلي به صورت زير تعريف ميشود:
(2-43)
كه در آن با قرار دادن ميتوانيم جمله تمامي را از معادله (2-44) حذف كنيم و سپس مشتق را به صورت زير بيان ميكنيم:
(2-45)
براي نورون j كه در لايه خروجي قرار دارد ميباشد. بنابراين گراديان محلي براي نورون j را به اين صورت بيان ميكنيم:
(2-46) نورون j يك نود خروجي است
كه در آن سيگنال كاري در خروجي نورون j است و پاسخ مطلوب براي آن ميباشد. از طرف ديگر ميتوانيم براي يك نورون مخفي دلخواه j گراديان محلي را به اين صورت بيان ميكنيم:
(2-47) نورون j مخفي است
از معادله (2-45) يادآور ميشويم كه مشتق در به بيشترين مقدار خود و در يا به كمترين مقدار خود يعني صفر ميرسد. از آنجايي كه
