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

معماری شبکه :

شبکه های RBF معمولا شامل سه لایه هستن :  لایه ی ورودی، لایه ی مخفی با یه تابع فعالیت RBF غیرخطی و لایه ی خروجی

 ورودی می تونه به عنوان یه بردار از اعداد حقیقی مدل بشه و خروجی این شبکه یه تابع scalar از بردار ورودی هستش که به صورت زیر محاسبه میشه :

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

آموزش :

شبکه های RBF معمولا به وسیله ی یک الگوریتم دو مرحله ای آموزش داده میشن. در مرحله ی اول، بردارهای مرکز  برای توابع RBF در لایه ی مخفی انتخاب میشن. این مرحله رو میشه با چندین روش اجرا کرد : میشه مراکز رو به شکل تصادفی از برخی مجموعه مثالها نمونه برداری کرد، یا میشه از K-means clustring بهره برد.توجه داشته باشین که این مرحله بدون نظارته ( unsupervised).

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

یه سورس کد از شبکه عصبی RBF هم واستون قرار دادم ، میتونین از لینک زیر دانلود کنین : 

سورس کد RBF در متلب