رفتن به محتوای اصلی

پرسش و پاسخ

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

جواب:

مشکل رخ دادن پدیده Overfitting می باشد.

معمولاً وقتی تعداد لایه های پنهان و یا تعداد نورون در این لایه را به مقدار زیاد تعیین کرده باشید، Overfitting رخ می دهد. برعکس حالت Overfitting حالت Underfitting هست که آموزش کمتر از حد نیاز رخ داده است.

حالت Overfitting = آموزش بیش از حد که منجر به حفظ کردن میشه به جای یادگیری

فرق اساسی شبکه های عصبی در چیست؟
(منظورم اینه که آیا در تعداد نرون یا لایه هاست یا نحوه اتصال لایه ها و یا نوع ورودی خروجی ویا …؟؟)

جواب:

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

تفاوت میان انواع شبکه های عصبی، بیشتر حاصل نحوه و نوع چیدمان لایه های پنهان و میانی و تعداد نرون ها در این لایه ها می باشد.
برخی از شبکه ها در برخورد با نویز عملکرد بهتری دارند.
برخی دیگر در یادگیری عمیق کاربرد زیادی دارند. (شبکه عصبی کانولوشن)
برخی در دسته بندی (SVM) و برخی دیگر در خوشه بندی (SOM) بکار گرفته می شوند.
برخی شبکه ها مثل MLP جنبه عمومی و دارای کاربرد بیشتری هستند.

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

جهت آموزش شبکه عصبی استفاده از الگوریتم های ابتکاری رو توصیه می کنید یا الگوریتم لونبرگ-مارکارد رو؟

من در یک مساله هر چقدر از الگوریتم های ابتکاری متنوعی استفاده می کنم نه به سرعت الگوریتم لونبرگ-مارکارد می رسم نه به دقتش.
در حقیقت سوال بنده این هست که اگر الگوریتم لونبرگ-مارکارد اینقدر بهتر نتیجه میدهد پس چه نیازی به استفاده از الگوریتم های ابتکاری احساس شده؟

جواب:

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