آموزش شبکه عصبی Artificial Neural Network

آشنايي مقدماتي با شبكه‌هاي عصبي مصنوعي

دانشكده مهندسي برق، دانشگاه صنعتي شريف

شبكه‌هاي عصبي نوعي مدلسازي سادهانگارانه از سيستمهاي عصبي واقعي هستند كه كاربرد فراواني در حل مسائل مختلف در علوم دارند. حوزه كاربرد اين شبكهها آنچنان گسترده است كه از كاربردهاي طبقهبندي گرفته تا كاربردهايي نظير درون يابي، تخمين، آشكارسازي و … را شامل مي شود. شايد مهمترين مزيت اين شبكه‌ها، توانايي وافر آنها در كنار سهولت استفاده از آن‌ها باشد.
به موازات گسترش كاربردهاي شبكه عصبي، نياز به فراگيري آن و آشنايي با تواناييها و قابليتهاي آن رخ مي نمايد. در اين راستا، تأليفات زيادي وجود دارد كه مي توان به آن‌ها استناد نمود اما در اكثر قريب به اتفاق اين خودآموزها، مباني اين شبكهها با تفاصيل و جزئيات بسيار بيان شده است و مسلماً به عنوان قدم اول براي آشنايي، حجيم و وقت گير به نظر مي رسد. لذا بر آن شديم تا با درنظر گرفتن نياز دانشجويان، به ويژه در كاربردهاي پروژه اي در مقطع كارشناسي، مقدماتي را جهت آشنايي با اين شبكهها تدوين كنيم به نحوي كه به عنوان يك خودآموز، در پيمودن قدمهاي اوليه براي آشنايي و سپس تسلط بر مفاهيم مقدماتي آن‌ها، راهگشا باشد. بنابراين در اين جزوه سعي كرده ايم مباني مدل سازي و تحليل يك سيستم با استفاده از شبكه‌هاي عصبي بيان شده و شبكه چندلايه پرسپترون، به عنوان يكي از پركاربردترين شبكه‌ها مرور گردد. همچنين رويكرد در پيش رو بر اين است كه در كنار بيان اجمالي روابط رياضي مورد نياز، به نكات پياده سازي و تكنيكهاي عملي استفاده از آن‌ها اشاره خواهيم كرد.
با توجه به گستردگي مطالب، در اين نوشتار سعي بر آن شده است كه از پرداختن به جزئيات غيرضروري پرهيز شود. لذا در اين نسخه، تنها به مفاهيم مقدماتي و ضروري شبكه‌هاي عصبي مصنوعي خواهيم پرداخت، به اين اميد كه دانشجويان عزيز بتوانند با فراگيري اين نكات، مسير فراگيري و به كار گيري اين شبكهها را سادهتر بپيمايند. در اين راستا، رئوس

مطالبي كه به آنها خواهيم پرداخت عبارتند از:
• مفهوم شبكه
• مدل رياضي شبكه عصبي مصنوعي
• پرسپترون چند لايه
• آموزش شبكه به روش پسانتشار خطا
• روند شبيه سازي مسائل

 

مفهوم شبكه

يكي از روش‌هاي كارآمد در حل مسائل پيچيده، شكستن آن به زيرمسأله‌هاي ساده تر است كه هر كدام از اين زيربخشها به نحو سادهتري قابل درك و توصيف باشند. در حقيقت يك شبكه، مجموعه اي از اين ساختارهاي ساده است كه در كنار يكديگر سيستم پيچيده نهايي را توصيف مي كنند. شبكه‌ها انواع مختلفي دارند اما همگي آنها از دو مؤلفه تشكيل مي شوند:
1. مجموعهاي از گرهها؛ هر گره در حقيقت واحد محاسباتي شبكه است كه ورودي‌ها را گرفته و برروي آن پردازش انجام ميدهد تا خروجي بدست آيد. پردازش انجام شده توسط گره مي تواند از ساده ترين نوع پردازش‌ها نظير جمع كردن ورودي‌ها تا پيچيده ترين محاسبات را شامل شود. در حالت خاص، يك گره ميتواند خود، شامل يك شبكه ديگر باشد.
2. اتصالات بين گرهها؛ اين اتصالات نحوه گذر اطلاعات بين گره‌ها را مشخص مي كند. در حالت كلي اتصالات .باشند (Bidirectional) يا دوسويه (Unidirectional) مي توانند تك سويه تعامل بين گره‌ها از طريق اين اتصالات سبب بروز يك رفتار كلي از سوي شبكه مي گردد كه چنين رفتاري به تنهايي در هيچ يك از المانهاي شبكه ديده نميشود. جامع بودن اين رفتار كلي بر عملكرد موجود در هر گره سبب تبديل شبكه به يك ابزار توانمند ميشود. به عبارت ديگر، مجموعه سادهاي از المانها وقتي در قالب يك شبكه باشند مي توانند رفتاري از خود بروز دهند كه هيچ يك از آن المان‌ها به تنهايي قادر به بروز چنين مشخصه اي نبود.

 

مدل رياضي شبكه عصبي مصنوعي

به هنگام مدل كردن اعصاب، از پيچيدگي‌هاي آن‌ها صرف نظر مي شود و تنها به مفاهيم پايه اي بها داده مي شود، چرا كه در غير اين صورت رويكرد مدلسازي بسيار دشوار خواهد شد. در يك نگاه ساده، مدل يك عصب بايد شامل وروديهايي باشد كه در نقش سيناپس انجام وظيفه كنند. اين ورودي‌ها در و زنهايي ضرب مي شوند تا قدرت سيگنال را تعيين كنند. نهايتاً يك عملگر رياضي تصميم گيري مي كند كه آيا نرون فعال شود يا خير و اگر جواب مثبت باشد، ميزان خروجي را مشخص مي سازد.

 

پرسپترون چند لايه

هرچند نحوه مدل كردن نرون جزء اساسيترين نكات كليدي در كارآيي شبكه عصبي ميباشد اما نحوه برقراري اتصالات و چيدمان (توپولوژي) شبكه نيز فاكتور بسيار مهم و اثرگذاري است. بايد توجه داشت كه توپولوژي مغز انسان آنقدر پيچيده است كه نميتوان از آن به عنوان مدلي براي اعمال به شبكه عصبي استفاده نمود، چرا كه مدلي كه ما استفاده مي كنيم، يك مدل ساده شده است در حالي كه چيدمان مغز از المانهاي بسيار زيادي استفاده مي كند.

به منظور آموزش شبكه و اصلاح وزنها تا رسيدن به يك خطاي معنادار، روش‌هاي بسيار زيادي وجود دارد. يكي از مشهورترين اين روش‌ها، الگوريتم پس انتشار خطا (Error back propagation algorithm) است كه در ادامه توضيح داده ميشود.

 

الگوريتم پس انتشار خطا:
اين الگوريتم كه در سال 1986 توسط روملهارت و مككليلاند پيشنهاد گرديد، در شبكههاي عصبي پيشسو (Feed forward) مورد استفاده قرار مي گيرد. پيش سو بودن به اين معناست كه نرون‌هاي مصنوعي در لايه‌هاي متوالي قرار گرفته اند و خروجي (سيگنال) خود را رو به جلو مي فرستند. واژه پس انتشار نيز به معناي اين است كه خطاها به سمت عقب در شبكه تغذيه مي شوند تا وزنها را اصلاح كنند و پس از آن، مجدداً ورودي مسير پيشسوي خود تا خروجي را تكرار كند. روش پس انتشار خطا از روش‌هاي باسرپرست است به اين مفهوم كه نمونه‌هاي ورودي برچسب خوردهاند و خروجي مورد انتظار هر يك از آنها از پيش دانسته است. لذا خروجي شبكه با اين خروجي‌هاي ايده آل مقايسه شده و خطاي شبكه محاسبه ميگردد. در اين الگوريتم ابتدا فرض بر اين است كه وزنهاي شبكه به طور تصادفي انتخاب شده اند. در هر گام خروجي شبكه محاسبه شده و بر حسب ميزان اختلاف آن با خروجي مطلوب، وزن‌ها تصحيح مي گردند تا در نهايت اين خطا، مي نيمم شود. در الگوريتم پس انتشار خطا، تابع تحريك هر عصب به صورت جمع وزندار ورودي‌هاي مربوط به آن عصب درنظر گرفته مي شود.

دانلود فایل کامل

 

Artifical Neural Network tutorial introduction training movie MATLAB programming for Artifical Neural Network tutorial training movie
MATLAB price prediction for Neural Network tutorial training movie MATLAB classification for Neural Network tutorial training movie
MATLAB times series prediction for Neural Network tutorial training movie MATLAB face detection Neural Network tutorial training movie
MATLAB advanced setting Neural Network tutorial training movie

پیام بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

54 + = sixty four