مقدمه ای بر مدل های شبکه عصبی مصنوعی

مقدمه

در این آموزش از یادگیری ماشین ، به معرفی مدل های شبکه عصبی مصنوعی خواهیم پرداخت. ابتدا ، شبکه پرسپترون چند لایه ( Multilayer Perceptron ) و شبکه های تابع پایه شعاعی ( Radial Basis Function ) که هر دو مدل های از یادگیری نظارت شده هستند را معرفی می کنیم. در نهایت مدل Kohonen را که جزء یادگیری بدون نظارت است، بررسی می کنیم و شبکه های MLP و RBF را با هم مقایسه می کنیم.

مدل های شبکه عصبی مصنوعی

مدل های شبکه عصبی مصنوعی

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

  • پرسپترون چند لایه ( MLP ) : یک مدل شبکه عصبی مصنوعی پیشخور است که مجموعه داده های ورودی را به مجموعه ای از خروجی های متناسب نگاشت می دهد.
  • شبکه های تابع پایه شعاعی ( RBF ) : یک شبکه تابع شعاعی ، یک شبکه عصبی مصنوعی است که از توابع پایه شعاعی به عنوان توابع فعالساز استفاده می کند.

هر دو مورد فوق از شبکه های یادگیری نظارت شده هستند که با یک یا چند متغیر وابسته در خروجی استفاده می شوند.

بیایید آموزش های خودآموز یادگیری ماشین را مجدد بررسی کنیم

  • شبکه Kohonen : یک شبکه یادگیری بدون نظارت است که برای خوشه بندی استفاده می شود.

۱- پرسپترون چند لایه

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

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

yi = w0 + w1 * x1 + w2 * x2 + … + wn * xn

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

MLP از یک روش یادگیری نظارت شده به نام ” پس انتشار ” برای آموزش شبکه استفاده می کند که برای محاسبه گرادیان تابع ضرر ، نیاز به خروجی مد نظر و معلوم برای هر مقدار ورودی دارد.

MLP ، یک پرسپترون خطی استاندارد اصلاح شده است و می تواند داده هایی را که به طور خطی تفکیک پذیر نیستند از هم تفکیک کند.

آیا از کاربرد های ANN اطلاع دارید؟

۲- شبکه تابع پایه شعاعی

یک شبکه تابع شعاعی ( RBF )، نظیر MLP ، یک شبکه یادگیری نظارت شده است و از جهاتی به آن شباهت دارد. اما شبکه RBF فقط با یک لایه مخفی کار می کند. این کار با محاسبه مقدار هر واحد در لایه مخفی برای یک مشاهده به انجام می رسد. در واقع به جای مجموع مقادیر وزن دار واحد های سطح قبلی، از فاصله میان این مشاهدات و مرکز این واحد استفاده می کند.

بر خلاف وزن های یک پرسپترون چند لایه ، مراکز لایه پنهان یک شبکه RBF در طول یادگیری در هر تکرار تنظیم نمی شوند.

در شبکه RBF ، نورون های مخفی ، فضا را به اشتراک می گذارند و عملا از یکدیگر مستقل هستند. این امر باعث ایجاد همگرایی سریع تر شبکه‌های RBF در مرحله یادگیری می شود، که یکی از نقاط قوت آن هاست.

بیایید قوانین یادگیری در شبکه عصبی را بررسی کنیم

سطح پاسخ یک واحد از لایه مخفی از یک شبکه RBF ، یک ابرکره ( hypersphere ) است. پاسخ این واحد به یک عنصر (xi) ، یک تابع نزولی G از فاصله بین عنصر و ابرکره اش است.

تابع Γ معمولا یک تابع گوسی است. سطح پاسخ این واحد ، پس از اعمال تابع انتقال ، یک سطح گوسی است. به عبارت دیگر ، این یک سطح ” زنگوله ای شکل ” است.

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

۳- شبکه Kohonen

یک نقشه خودسازمانده (SOM) نوعی شبکه عصبی مصنوعی است که با استفاده از یادگیری بدون نظارت آموزش داده می شود. همچنین به عنوان نقشه ویژگی خودسازمانده (SOFM) نیز نامیده می شود و در واقع ، نمایشی گسسته با ابعاد کم از فضای ورودی نمونه های آموزشی، به نام نگاشت ، ارائه می کند.

نگاهی به SVM در ML داشته باشید

استاد فنلاندی Teuvo Kohonen ، این مدل را ابتدا به عنوان یک شبکه عصبی مصنوعی توصیف می کند، لذا گاهی نگاشت Kohonen یا شبکه Kohonen نامیده می شود. شبکه Kohonen ، رایج ترین شبکه یادگیری بدون نظارت است. همچنین به این دلیل شبکه خودتطبیقی ​​یا خودسازمانده نامیده می شود که داده های ورودی خود را سازماندهی می دهد.

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

  • لایه ورودی با یک واحد برای هر یک از n متغیر استفاده شده در خوشه بندی
  • لایه خروجی – واحد های آن معمولا در یک شبکه مربع یا مستطیل از l * m واحد قرار دارند. هر یک از این l * m واحد ، به هر یک از n واحد لایه ورودی متصل است.

نکات مربوط به شبکه های Kohonen :

  • برای هر عنصر ، فقط یک واحد خروجی ( ” برنده ” ) فعال می شود – شبکه Kohonen دارای یک لایه رقابتی از نورون ها است. یک لایه ورودی نیز وجود دارد. لایه ورودی کاملاً به لایه رقابتی متصل است. واحدها در لایه رقابتی ، ورودی های وزن دار خود را جمع می کنند تا یک برنده را پیدا کنند.
  • شبکه ، وزن برنده و همسایگانش را تنظیم می کند.
  • این تنظیم به گونه ای است که دو واحد خروجی نزدیک بهم، متناظر با دو عنصر نزدیک به هم باشند.
  • در گروه های (خوشه ها) خروجی واحد شکل می گیرد.

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

مقایسه شبکه های MLP و RBF

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

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

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

شبکه های RBF معمولاً فقط یک لایه مخفی دارند که توسط آن ، تابع ترکیب به فاصله اقلیدسی بین بردار ورودی و بردار وزن بستگی دارد. شبکه های RBF چیزی که دقیقاً مشابه اصطلاح بایاس در MLP باشد، ندارند. اما برخی از انواع RBF ها دارای ” پهنا ( Width ) ” مرتبط با هر واحد مخفی یا کل لایه مخفی هستند. به جای اضافه کردن آن در تابع ترکیب مثل یک بایاس ، فاصله اقلیدسی را بر پهنا تقسیم می کنید.

شبکهMLPRBF
لایه (های) پنهانتابع ترکیبضرب داخلیفاصله اقلیدسی
تابع انتقاللجستیک s(X)=1/(1+ exp(-X))گوسی Γ(X)=exp(-X2/2σ۲)
تعداد لایه های پنهان>=۱
لایه خروجیتابع ترکیبضرب داخلیترکیب خطی توابع گوسی
تابع انتقاللجستیک s(X)=1/(1 + exp(-X))تابع خطی  f(X)=X
سرعتسرعت بیشتر در “کاربرد مدل”سرعت بیشتر در “آموزش مدل”
مزیتتعمیم بهترریسک کمتر برای مواجهه با همگرایی غیر بهینه

نتیجه گیری

بنابراین ما معتقدیم که مدل های ANN همچنان نقش مهمی در هوش محاسباتی مدرن دارند. همچنین، مشارکت مدل هایی نظیر ANN در زمینه مدلسازی احتمالاتی می‌تواند تکنیک هایی را ارائه دهد که هم مدل های توضیحی و هم رویکرد های داده محور را دربرداشته باشد، در حالی که قابلیت مدلسازی بیشتر از طریق کار با توزیع های کامل به جای تخمین نقاط ساده را حفظ می کند.

اگر در مورد مدل شبکه عصبی مصنوعی سوالی دارید ، لطفاً با ما در میان بگذارید. خوشحال خواهیم شد پاسخگوی شما باشم.

بیشتر بخوانید :

منبع Data Flair

درباره‌ی امیر اقتدائی

همچنین ببینید

آیا می خواهید در زمینه یادگیری ماشین استخدام شوید؟

آیا می خواهید در زمینه یادگیری ماشین استخدام شوید؟

مسیر های شغلی زیادی در حوزه یادگیری ماشین وجود دارد، اما از کجا بفهمیم که …

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

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