اطلاعیه

Collapse
No announcement yet.

مشکل در شبکه عصبی

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل در شبکه عصبی

    سلام دوستان
    من به کمک شبکه عصبی و با استفاده از nntool در Matlab یه شبکه عصبی به صورت back propagation ساختم که سه لایه داره.
    فیلتر لایه اول و دوم Tansig و فیلتر لایه سوم purelin هست. بعد از آموزش شبکه وقتی به کمک nntool شبیه سازی میکنم نتایج نسبتا خوبی میده
    فرض کنید وزن لایه های اول و دوم وسوم به ترتیب w1،w2،w3 و بایاس ها b1،b2،b3 باشه و p1 و p2 و p3 ورودی در هر مرحله باشه
    وقتی تو matlab دستور زیر رو مینویسم با توجه به اینکه وزن ها و بایاس یکی هستن انتظار دارم که جوابش با جواب nntool برابر باشه
    ولی از زمین تا آسمون جوابش فرق داره.چرا؟!
    [left]
    p2=w1*p1+b1
    (p2=tansig(p2
    p3=w2*p2+b2
    (p3=tansig(p3
    javab=w3*p3+b3
    (javab=purelin(javab
    [left]


    من میخوام شبکه های عصبی رو در یه نرم افزار دیگه غیر از Matlab شبیه سازی کنم بنابراین نمیتونم مثل متلب برای شبیه سازی داده های جدید از دستور sim استفاده کنم. از اونجایی هم که Matlab ضرایب وزن رو نرمال میکنه با استفاده از کد بالا نمیشه به جواب رسید. اگه بخوایم فقط با استفاده از ضرایب وزن ها و ضرایب بایاس و بدون استفاده از دستور sim و تنها با کمک ضرب ورودیها در ضرایب وزن و جمع اونها با مقدار بایاس والبته بعد از عبور آنها از فیلتر Tansig و purelin خروجی رو بدست بیاریم باید چیکار کنیم.
    خواهشا کمک کنید

    #2
    پاسخ : مشکل در شبکه عصبی

    با سلام-مشکل در نوشتن الگوریتم است.به مقاله زیر مراجعه نمایید.http://www4.rgu.ac.uk/files/chapter3%20-%20bp.pdf
    در زندگی اثر خوب و خاطره خوش از خودمان در این دنیا برجا بگذاریم.etgpsp

    دیدگاه


      #3
      پاسخ : مشکل در شبکه عصبی

      ببخشید میشه دقیقتر بفرمایید منظورتون از الگوریتم چیه؟؟
      منطورتون اون تیکه کد برنامه ای هست که من نوشتم یا چیز دیگه ای مد نظرتون هست؟
      من وزن ها و ضرایب بایاس رو با استفاده از nntool که محیطی شبیه GUI داره بدست آوردم فکر نمیکنم ضرایب مشکلی داشته باشن

      دیدگاه


        #4
        پاسخ : مشکل در شبکه عصبی

        با سلام همانطور که میدانید در BP ضرایب در هر بار از اموزش تغییر میکند و ضرایب جدید برای لایه های قبلی با استفاده از خروجی اخرین لایه بدست میاید ابتدا خطا در اخرین لایه محاسبه میشود سپس ضریب وزن جدید اخرین لایه محاسبه میشود وبعد از ان باید صرایب لایه های میانی محاسبه شود روش محاسبه را در ان مقاله گفته ولی شما در فرمولهایی که نوشته اید ابتدا لایه میانی را محاسبه کرده اید وسپس لایه اخر (اگر 3 اخر باشد) در حالیکه لایه دوم نباید ابتدا محاسبه شود.
        در زندگی اثر خوب و خاطره خوش از خودمان در این دنیا برجا بگذاریم.etgpsp

        دیدگاه


          #5
          پاسخ : مشکل در شبکه عصبی

          چرا از newff برای ساخت شبکه استفاده نمی کنید؟
          It's nice to be important but it's important to be nice!

          از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.

          دیدگاه


            #6
            پاسخ : پاسخ : مشکل در شبکه عصبی

            نوشته اصلی توسط عباس جبراییلی
            با سلام همانطور که میدانید در BP ضرایب در هر بار از اموزش تغییر میکند و ضرایب جدید برای لایه های قبلی با استفاده از خروجی اخرین لایه بدست میاید ابتدا خطا در اخرین لایه محاسبه میشود سپس ضریب وزن جدید اخرین لایه محاسبه میشود وبعد از ان باید صرایب لایه های میانی محاسبه شود روش محاسبه را در ان مقاله گفته ولی شما در فرمولهایی که نوشته اید ابتدا لایه میانی را محاسبه کرده اید وسپس لایه اخر (اگر 3 اخر باشد) در حالیکه لایه دوم نباید ابتدا محاسبه شود.
            متوجه منظورتون هستم ولی من اصلا تو این تیکه کد ضرایب رو محاسبه نکردم! ضرایب قبلا توسط جعبه ابزار nntool به طور کامل و دقیق محاسبه شده اند. من فقط میخوام خروجی رو محاسبه کنم.

            چرا از newff برای ساخت شبکه استفاده نمی کنید؟
            lمن تا حالا با newff کار نکردم. فرقش با nntool چیه؟

            دیدگاه


              #7
              پاسخ : مشکل در شبکه عصبی

              برای ساختن شبکه feed forward bp توسط برنامه نویسی استفاده می شه
              مثلا
              (net=newff(features,target

              البته تنظیمات زیادی داره خواستی توضیح میدم
              برای دیدن شکل شبکه هم از (view(net استفاده کن
              It's nice to be important but it's important to be nice!

              از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.

              دیدگاه


                #8
                پاسخ : مشکل در شبکه عصبی

                نوشته اصلی توسط رضا شفقی
                برای ساختن شبکه feed forward bp توسط برنامه نویسی استفاده می شه
                مثلا
                (net=newff(features,target

                البته تنظیمات زیادی داره خواستی توضیح میدم
                برای دیدن شکل شبکه هم از (view(net استفاده کن
                nntool هم دقیقا همین کار رو انجام میده فقط به صورت گرافیکی هست. در جواب نهایی فرقی ندارن

                دیدگاه


                  #9
                  پاسخ : مشکل در شبکه عصبی

                  اصلا nntool چیزی جدا از اینی که گفتم نیست همه با هم اند. همه دستورات کنار هم تولباکس شبکه عصبی رو تشکیل می دند.
                  It's nice to be important but it's important to be nice!

                  از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.

                  دیدگاه


                    #10
                    پاسخ : مشکل در شبکه عصبی

                    نوشته اصلی توسط رضا شفقی
                    اصلا nntool چیزی جدا از اینی که گفتم نیست همه با هم اند. همه دستورات کنار هم تولباکس شبکه عصبی رو تشکیل می دند.
                    منم همینو میگم فرقی نداره
                    من میخوام شبکه های عصبی رو در یه نرم افزار دیگه غیر از Matlab شبیه سازی کنم بنابراین نمیتونم مثل متلب برای شبیه سازی داده های جدید از دستور sim استفاده کنم. از اونجایی هم که Matlab ضرایب وزن رو نرمال میکنه با استفاده از کد بالا نمیشه به جواب رسید. اگه بخوایم فقط با استفاده از ضرایب وزن ها و ضرایب بایاس و بدون استفاده از دستور sim و تنها با کمک ضرب ورودیها در ضرایب وزن و جمع اونها با مقدار بایاس والبته بعد از عبور آنها از فیلتر Tansig و purelin خروجی رو بدست بیاریم باید چیکار کنیم.
                    خواهشا کمک کنید

                    دیدگاه

                    لطفا صبر کنید...
                    X