حل مسئله XOR با MLP و آموزش آن با backpropagation
می دونم سوالم ابتدایی اما ممنون میشم کمکم کنید.
کدی که من برای حل این مسئله نوشتم اینطور عمل می کنه که اول شبکه رو با دو تا نرون ورودی، یک لایه مخفی با 2 نرون و یک خروجی ، میسازی و وزن ها رو هم به صورت رندم بین -0.5 و +0.5 میده.
ضمنا برای محاسبه خروجی از Summation و تابع زیگمویدی استفاده می کنم.
بعد هم میاد بر اساس اولین ورودی (0 0) خروجی و ارور رو حساب می کنه و اگه از حداقل بزرگتر بود backpropagation رو اجرا می کنه و اینقدر اینکار رو می کنه تا ارور به حداقل برسه. بعد میره سراغ ورودی بعدی (1 0) و همین کار ها رو تکرار می کنه . برای 2 تا ورودی بعدی هم همینطور !
در نهایت وقتی دوباره بهش ورودی بر اساس آموزش آخر عمل می کنه ! مشکل چیه؟ روند کارم اشتباهه؟
کد رو تو ++C نوشتم. اگه لازمه آپلودش کنم.
|