آموزش شبکه های عصبی

آموزش تصویری کار با شبکه عصبی در متلب

آموزش گام به گام شبکه عصبی

آموزش تصویری کار با شبکه عصبی در متلب

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

 

آموزش تصویری کار با شبکه عصبی در متلب

تصویر فوق یک شبکه عصبی چند لایه را نمایش میدهد که ما در ادامه به شما نحوه ساخت و آموزش شبکه عصبی را همانند تصویر فوق خواهیم آموخت.

 

قطعا شما زمانی که به سراغ استفاده از شبکه عصبی میروید به این معنی هست که شما یک سری دیتا و داده برای آموزش به شبکه عصبی در دست دارید. بنابراین اولین مرحله در ساخت شبکه عصبی ، تعریف داده های مورد نظرمان می باشد.

گام اول: تعریف داده های مورد نظر  برای آموزش شبکه عصبی:

در این بخش ما دو نمونه بعنوان داده ورودی را تعریف میکنیم و کلاس هر نمونه را نیز مشخص میکنیم . از آنجا که هدف ما آموزش نحوه کار با شبکه عصبی و اشنایی با دستورات آن می باشد ما داده های خود را بصورت تصادفی تولید میکنیم و برای تولید داده های خود نیز از دستور randn در متلب استفاه میکنیم. البته بعد از اتمام آموزش شما میتوانید داده های خود را جایگزین این داده هایی که ما برای شرح مسئله استفاده کرده ایم بکنید .

با کدهای زیر در نرم افزار متلب داده های آموزشی خود را تعریف میکنیم:

آموزش تصویری کار با شبکه عصبی در متلب

به این ترتیب ما ورودی و خروجی را همانند زیر تعریف کرده ایم:

آموزش تصویر کار با پرسپترون در متلب

به این ترتیب ما وردی های شبکه یا همان داده های آموزش خود را بصورت تصادفی تولید کرده ایم.  به این شکل که 20 داده اموزشی در بازه -2 تا 2 تولید کرده ایم و 20 داده دیگر را در بازه 3 تا 7 تولید کرده ایم و کلاس 20 نمونه اول را مساوی  0 و کلاس 20 نمونه دوم را مساوی 1 در نظر گرفته ایم.

 

گام دوم: ساخت شبکه عصبی پرسپترون و آموزش شبکه عصبی:

حال که داده های آموزش و کلاس هر داده را آماده کرده ایم ، یک شبکه عصبی از نوع پرسپترون را در متلب ایجاد میکنیم و سپس این شبکه عصبی ایجاد شده را با داده آموزشی مورد نظر خود آموزش میدهیم. کد های این بخش به صورت زیر می باشند:

 

آموزش تصویری شبکه عصبی در متلب

در کدهای فوق ابتدا ما یک شبکه عصبی از نوع پرسپترون را ایجاد کرده ایم و نام آن را net گذاشته ایم . سپس در خط دوم از تصویر فوق شبکه net را با استفاده از دستور train و با داده هایی که در گام اول در x و y قرار داده بودیم را آموزش دادیم. خروجی دستور train شبکه آموزش دیده می باشد که در خط سوم کد فوق ، تصویری از شبکه را نمایش داده ایم. از آنجا که ما یک شبکه عصبی پرسپترون را ایجاد کرده ایم در نتیجه شبکه ایجاد شده یک لایه خواهد بود که شامل نرون های ورودی، نرون پرسپترون و نرون خروجی می باشد. این مدل شبکه ساده ترین نوع شبکه عصبی می باشد که تصویر آن را در شکل زیر میتوانید مشاهده کنید:

 

پرسپترون

گام سوم: نمایش خروجی شبکه عصبی

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

 

آموزش تصویر ساخت شبکه عصبی در متلب

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

آموزش گام به گام شبکه عصبی

همانطور که در تصویر فوق دیده میشود ، شبکه عصبی پرسپترون به خوبی توانسته است که مرز بین دو کلاس را تشخیص دهد و با خط جدا کننده این دو کلاس را از هم جدا کند و تشخیص دهد.

به این ترتیب حال که شبکه آموزش دیده است ، اگر شما هر یک از نمونه های آموزش را به شبکه عصبی بدهید شبکه عصبی باید کلاس آن نمونه را برای شما مشخص کند و بعنوان خروجی شبکه به شما بدهد.

سخن پایانی: در این آموزش سعی کردیم نحوه ساخت و آموزش شبکه عصبی پرسپترون را در متلب به شما عزیزان آموزش دهیم. شبکه عصبی پرسپترون یکی از ساده ترین شبکه ها عصبی می باشد که میتواند مسائل تفکیک پذیر خطی را به خوبی یاد بگیرد و از هم تمییز دهد. در ادامه و در مطالب بعدی انشالله کار با انواع شبکه های عصبی دیگر را نیز بصورت تصویری و گام به گام و عملی به شما آموزش خواهیم داد.
لطفا با نظرات خود و پیشنهادات ارزنده خود ما را در این راه یاری کنید. قطعا نظرات شما باعث دلگرمی ما خواهد بود.

1 نظر در “آموزش تصویری کار با شبکه عصبی در متلب

  1. محمد گفت:

    ممنون از توضیحات و آموزش های مفیدتون
    موفق باشید

دیدگاهتان را بنویسید

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