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

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

روش (Levenberg Marquardt (trainlm

همان‌طور که احتمالا تاکنون مطلع شده‌اید، توابع زیادی در زبان برنامه نویسی متلب وجود دارند که یکی از آن‌ها نیز Levenberg Marquardt (trainlm) است. این تابع زمانی مورد استفاده قرار می‌گیرد که به‌سرعت زیادی در آموزش شبکه نیاز داشته باشیم. در این تابع نیز تنها تغییر مورد نیاز، استفاده از تابع Trainlm هنگام ساخت یک شبکه است. برای مثال باید به شکل کد‌های زیر وارد عمل شد:

 ;[P = [-1  -۱  ۲  ۲;۰  ۵  ۰  ۵

;[T = [-1  -۱  ۱  ۱

;(‘Net=newff(minmax(p) , [3,1] , {‘tansig’ , ‘purelin’ } , ‘trainlm

;Net.trainParam . show = 5

;Net.trainParam . epochs = 300

;Net.trainParam . goal = 1e-5

;([net , tr]=train(net,p,t

رابط گرافیکی

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

Matlab (1)

کاربران در این صفحه می‌توانند رابطی گرافیکی و کاربری (UI) را برای برنامه خود طراحی کنند. حال برای ساخت یک رابط کاربری نیاز به این وجود دارد که ابتدا داده ورودی به سیستم را معیین نماییم. اگر مجموع داده‌ها از قبل وجود داشته باشد کافی است که بر روی دکمه Import در پایین صفحه کلیک کنید و مجموعه داده‌های مورد نظر خود را انتخاب کنید. اما اگر داده‌ها وجود نداشته باشند، باید دکمه New را کلیک کنید که در این صورت پنجره‌ای برای ساخت داده نمایش داده خواهد شد که به شکل زیر است:

Matlab (2)

برنامه نویسان در این صفحه می‌توانند داده‌ها و شبکه عصبی مورد نیاز را طراحی کنند و برای ساخت داده نیز تنها کافی است که به سربرگ (Tab) دوم بروند.

Matlab (6)

برنامه نویسان در این صفحه می‌توانند در سمت راست صفحه نوع داده مورد نظر خود را انتخاب کنند و این می‌تواند ورودی (Input) یا خروجی (Target) باشد. با انتخاب کردن هر کدام از این گزینه‌ها، در قسمت مشخص شده باید اسم داده و مقادر آن را وارد سیستم کرد و سپس برای ساخت آن نیز کافی است که روی دکمه Create کلیک کنید (این دکمه در پایین صفحه قرار دارد). حال که مجموعه داده‌های خود را ایجاد کردیم، باید به سراغ ساخت شبکه برویم. البته باید توجه داشته باشید که برای ساخت شبکه باید ورودی و خروجی آن مشخص گردد. حال می‌بایست نوع شبکه را تایید کرد و تابع آموزش شبکه را نیز انتخاب نمود. البته در این مرحله باید سایر بخش‌های شبکه نظیر تعداد لایه‌ها و تعداد نرون‌ها در هر لایه نیز تعیین شوند.

Matlab (4)

با کلیک بر روی دکمه View نیز شکل ساخته شده نمایش داده می‌شود که نمای کلی زیر را دارد.

Matlab (5)

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

با کلیک کردن روی دکمه Open صفحه جدیدی نمایش داده می‌شود که می‌توان از طریق آن ویژگی‌های شبکه را کنترل کرد و به آموزش و شبیه‌سازی آن پرداخت. اما در سربرگ دوم این پنجره، کاربران می‌توانند شبکه خود را آموزش دهند. حال بعد از اینکه مقدار ورودی و خروجی را کنترل کردید کافی است که روی دکمه Train Network کلیک کنید تا آموزش شبکه شروع شود. با انجام این کار پنجره جدیدی نمایش داده می‌شود که وظیفه آموزش شبکه را دارد که در این صفحه نیز کاربران با کلیک روی دکمه Performance می‌‌توانند کارایی شبکه عصبی را مورد بررسی قرار دهند.

Matlab (3)

همان‌طور که در تصویر بالا مشاهده می‌کنید سیستم بعد از ۱۰ مرحله شبکه‌ای همگرا را تشکیل می‌دهد که در این حین آموزش نیز به اتمام می‌رسد. اکنون برنامه نویس باید به سراغ شبیه‌سازی شبکه عصبی در ورودی جدید برود. برای انجام این کار باید از سربرگ Simulate وارد عمل شد. در این صفحه ابتدا می‌بایست ورودی‌ها تعیین شوند و پس از آن با کلیک بر روی Simulate Network شبیه‌سازی شبکه انجام خواهد شد و البته نتایجی نیز در این خصوص نمایش داده خواهد شد.

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