پروژه کامل استفاده از الگوریتم BP با قوانین batch و iterative
پروژه ۶۱۲: شبیه سازی با متلب + توضیحات خط به خط کدها + فیلم آموزش اجرای شبیه سازی
خلاصه:
در اینگونه مثال ها می خواهیم تابع را تقریب و یا ببینیم چگونه تغییرات پارامتر های شبکه در پاسخ نهائی شبکه تاثیر می گذارند. مثلا تغییرات پارامترهای منتسب بر نرون های لایه میانی چگونه موجب تغییر نگاشت NN می گردد که این ،نگاشت غیر خطی را بین ورودی ها و خروجی ها ایجاد می کند. حال برای درک بهتر این مثال ،یک نمونه از الگوی batch یا iterative را مرحله به مرحله بیان کرده و ابعاد دیگر را همراه فایل ضمیمه خریداری ضمیمه می شود.
این مثال را برای تابع زیر در نظر می گیریم:
شبکه عصبی را برای لایه هایی مشابه ابعاد زیر در نظر می گیریم:
:N 3-3-1 با ابعاد batch حالت
در مثال ، بیان گردیده که ۱۰۰الگو را در نظر بگیرید لذا بازه های ۱x ،۲x و۳x را به ۱۰۰قسمت تقسیم می کنیم.دستور linspace ، ایکس ها را به ۱۰۰قسمت تقسیم می کند(برای غیر ۱۰۰الگو،از دستور دیگری باید استفاده گردد).
x1=linspace(-2,2)’;
x2=linspace(-0.5,0.5)’;
x3=linspace(-2*pi,2*pi)’;
:N 3-3-1 وزن و بایاس برای حالت
وزن اولیه لایه اول یک ماتریس۳×۳ :
w1=[-0.01 0.020 0.035;-0.042 0.0100 0.0262;-0.012 -0.0104 0.0130];
بایاس اولیه لایه اول یک ماتریس۱×۳ :
b1=[-0.532;0.305;-0.200];
وزن اولیه لایه دوم یک ماتریس۱×۳ :
w2=[0.086 0.0700 0.0101];
بایاس اولیه لایه دوم یک ماتریس۱×۱ :
b2=0.3995;
توجه گردد که مقادیر وزن و بایاس ها را می توان بزرگ نیز انتخاب کرد.
استفاده کرده که خروجی برابر با :Logsig در لایه اول از تابع
a1=logsig(w1*x+b1*ones(1,100));
در لایه دوم از یک تابع خطی purelin استفاده می کنیم :
a=purelin(w2*a1+b2*ones(1,100));
سپس خطا را محاسبه کرده ،
e=(t-a);
حال به محاسبه مقدار حساسیت می پردازیم که از فرمول زیر محاسبه می گردد.
در الگوریتم Bp ابتدا s2 و سپس ماتریس ژاکوبین و به دنبال ان مقدار s1 را محاسبه می کنیم.
و سپس وزن و بایاس را با فرمول زیر ابدیت می کنیم:
می تواند مقادیر α مختلف داشته باشد ،که در اینجا ۰٫۱ گداشته ایم.
نتایج شبیه سازی :
Batch Algorithm N^3 3,3,1
time =
۰٫۰۰۱۴
weight2:
-۳٫۴۴۴۶ -۵٫۴۱۳۱ -۴٫۲۷۷۹
weight1:
-۰٫۰۱۱۵ ۰٫۰۱۹۶ ۰٫۰۳۰۳
-۰٫۰۴۳۴ ۰٫۰۰۹۷ ۰٫۰۲۱۹
-۰٫۰۱۲۲ -۰٫۰۱۰۴ ۰٫۰۱۲۴
b2:
-۹٫۱۲۴۶
b1:
-۰٫۷۱۱۰
۰٫۱۴۰۳
-۰٫۲۲۳۷
حالت iterative با ابعاد N 3-3-1 را برای شبیه سازی حالت بعدی در نظر می گیریم. توضیحات این قسمت نیز بطور کامل در وورد وجود دارد که ضمیمه این پروژه گردیده است.
نتایج برای این حالت:
iterative Algorithm N^3 3,3,1
repeat is:
۱۸
whight2:
۰٫۰۳۷۲ -۰٫۰۰۹۹ -۰٫۰۴۹۹
weghit1:
-۰٫۰۱۱۳ ۰٫۰۲۱۲ ۰٫۰۳۴۷
-۰٫۰۵۰۵ ۰٫۰۱۱۷ ۰٫۰۱۸۵
-۰٫۰۲۲۹ -۰٫۰۰۹۳ -۰٫۰۰۰۵
b2:
۰٫۲۵۸۷
b1:
-۰٫۵۴۰۸
۰٫۲۹۲۷
-۰٫۲۰۸۲
همچنین مقدار Learning Rate را برحالت های مقدار α را ۰٫۱،۰٫۰۱،۰٫۰۰۱ نیز در شبیه سازی استفاده می نماییم.
α =۰٫۱
Batch Algorithm N^3 3,3,1
time =
۷٫۴۳۹۲e-004
weight2:
-۳٫۴۴۴۶ -۵٫۴۱۳۱ -۴٫۲۷۷۹
weight1:
-۰٫۰۱۱۵ ۰٫۰۱۹۶ ۰٫۰۳۰۳
-۰٫۰۴۳۴ ۰٫۰۰۹۷ ۰٫۰۲۱۹
-۰٫۰۱۲۲ -۰٫۰۱۰۴ ۰٫۰۱۲۴
b2:
-۹٫۱۲۴۶
b1:
-۰٫۷۱۱۰
۰٫۱۴۰۳
-۰٫۲۲۳۷
α=۰٫۰۱
Batch Algorithm N^3 3,3,1
time =
۸٫۱۸۷۰e-004
weight2:
-۰٫۲۶۷۱ -۰٫۴۷۸۳ -۰٫۴۱۸۷
weight1:
-۰٫۰۱۰۱ ۰٫۰۲۰۰ ۰٫۰۳۴۵
-۰٫۰۴۲۱ ۰٫۰۱۰۰ ۰٫۰۲۵۸
-۰٫۰۱۲۰ -۰٫۰۱۰۴ ۰٫۰۱۲۹
b2:
-۰٫۵۵۲۹
b1:
-۰٫۵۴۹۹
۰٫۲۸۸۵
-۰٫۲۰۲۴
α=۰٫۰۰۱
Batch Algorithm N^3 3,3,1
time =
۸٫۱۰۳۹e-004
weight2:
۰٫۰۵۰۷ ۰٫۰۱۵۲ -۰٫۰۳۲۸
weight1:
-۰٫۰۱۰۰ ۰٫۰۲۰۰ ۰٫۰۳۵۰
-۰٫۰۴۲۰ ۰٫۰۱۰۰ ۰٫۰۲۶۲
-۰٫۰۱۲۰ -۰٫۰۱۰۴ ۰٫۰۱۳۰
b2:
۰٫۳۰۴۳
b1:
-۰٫۵۳۳۸
۰٫۳۰۳۴
-۰٫۲۰۰۲
نتایج کامل برای حالت های مختلف نیز در کدهای ضمیمه شده در این فایل وجود دارد که بطور کامل تشریح گردیده است.
حالتی دیگر در شبیه سازی: ازمایش برای الگوریتم Batch با مقادیر اولیه با میانگین ۱۵نیز در شبیه سازی در نظر گرفته شده است.
تعداد لایه هایی که به کار رفته:
%batch Algorithm, N^3(3-20-10-1)
%batch Algorithm, N^3(3-10-1)
%batch Algorithm, N^3(3-3-1)
% iterative Algorithm,N^3(3-3-1)
% iterative Algorithm,N^3(3-20-10-1)
% iterative Algorithm,N^3(3-10-1)
در صورت سوال در مورد محصول می توانید از بخش تماس با ما (منوی بالا)، با شماره تلفن مورد نظر مکاتبه نمایید .
دیگر پروژه های قابل دانلود:
مجموعه: شبکه عصبی, مهندسی کامپیوتربرچسب ها back-propagation در متلب, batch و iterative در شبکه عصبی, batch و iterative کدهای متلب, batch و iterative متلب, Logsig در لایه اول از تابع, N 3-3-1 با ابعاد batch حالت, N 3-3-1 وزن و بایاس برای حالت, آموزش شبکه با batch و iterative, برچسب خلاصه ای از الگوریتم BP در متلب, تحقیق الگوریتم یادگیری پس انتشار خطا (BP) کدهای متلب, شبیه سازی back-propagation برای یک مثال کاربردی, قوانین batch و iterative, قوانین batch و iterative matlab code, قوانین batch و iterative در شبکه عصبی مصنوعی, قوانین batch و iterative کد متلب با شبکه عصبی, کد های متلب قوانین batch و iterative, کدهای آماده شبکه عصبی قوانین batch و iterative, یک مثال برای تحقیق الگوریتم یادگیری پس انتشار خطا (BP)


