Artificial Intelligence - هوش مصنوعی

Artificial Intelligence - هوش مصنوعی (http://artificial.ir/intelligence/)
-   شبکه های عصبی (Neural Networks) (http://artificial.ir/intelligence/forum10.html)
-   -   سوال ابتدایی در مورد شبکه عصبی (http://artificial.ir/intelligence/thread11041.html)

naeimwtg ۰۵-۳۱-۱۳۹۱ ۱۰:۳۳ بعد از ظهر

سوال ابتدایی در مورد شبکه عصبی
 
سللم دوستان من چند تا مقاله در مورد شبمه های عصبی خوندم یک سری سوال برام پیش آموده اگه میشه راهنمایی کنید
1-تابع غعال ساز جند مدل داره و بر اساس چه چیزی تعیین میشه و کارایش چیه
2- میشه برای توابع مطقی or یا xor محاسبات را به صورت ریاضی بنویسید که به صورت دستی جطوری باید حساب کنیم

با تشکر

saeedfa ۰۶-۱-۱۳۹۱ ۰۸:۰۱ قبل از ظهر

سلام توابع داخل نرون ها 7 8 نوع مختلف هستند . البته تو شبکه های پیش خور :
خطی یا y=x
sigmoid با دستور tansig که تابع tanh هست
logsig که لگاریتمی هست.
کلا به این ادرس برو همه رو نوشته:
matlab پائئن صفحه سمت چپ نوشته start
بعد برو به toolbox
بعد neural networks از اونجا برو به function refrecnce نگاه کنی شکل توابع و توضیح همه رو می بینی روی هر کدوم کلیک کنی اطلاعات کامل میاد.
برای تابع xor هم باید 4 تا ورودی و 4 تا خروجی داشته باشی به صورت زیر:
ورودی های :
0 0
0 1
1 0
1 1
که خروجی متناظرش میشه :
0
1
1
0
حالا 4 تا ورودی داری 4 تا خروجی اینو باید شبکه بفهمه !

masood ۰۶-۲-۱۳۹۱ ۰۴:۴۹ قبل از ظهر

نقل قول:

نوشته اصلي بوسيله naeimwtg (پست 25788)
2- میشه برای توابع مطقی or یا xor محاسبات را به صورت ریاضی بنویسید که به صورت دستی جطوری باید حساب کنیم.

در مورد سوال دوم به فرمایش saeedfa عزیز اضافه می کنم که لازم نیست شما چیزی رو حساب کنی. برای یادگیری یک شبکه عصبی (آموزش دادن) لازمه که از الگوریتم های مربوطه استفاده بشه و مجموعه محاسبات یک فراینده که معمولا بارها تکرار می شه و بنابراین محاسبه دستی اون کار منطقی نیست.

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

naeimwtg ۰۶-۲-۱۳۹۱ ۰۹:۳۷ قبل از ظهر

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

saeedfa ۰۶-۲-۱۳۹۱ ۱۰:۵۸ قبل از ظهر

برای مباحث پیش بینی عددی نرون لایه مخفی sigmoid و خروجی purelin . مثلا اینی که الان من گفتم قانون نیست ولی معمولا همه اینو استفاده می کنن و بهتر جواب میده. شما اگر از یه سری تابع دیگه استفاده کنی و جواب بهتری بگیرین کسی نمی گه چرا از این استفاده کردی. یعنی اینکه از چه توابعی استفاده کنم زیاد مسئله خفنی نیست. البته برای لایه خروجی باید دقت کرد که نباید هر تابعی رو استفاده کرد. می دونید چرا؟
چون مثلا اگر از تابع sigmoid استفاده کنید. خروجی شبکتون میشه بین -1 و 1 !! ولی ممکنه target شما بزرگتر از یک باشه و هیچ وقت به خطای پائئین نمی تونی برسی.
روی نرون خروجی باید یه دقت کوچولو کرد که از این مشکلات پیش نیاد.

naeimwtg ۰۶-۴-۱۳۹۱ ۱۰:۴۷ بعد از ظهر

دوست من از توضیحات شما بسیاز سپاگذارم - من تازه کار در مورد شبکه عصبی رو شروع کردم و چند تا کتاب گرفتم و شروع به مطالعه کردم - اما یک موضوع را دقیقا نفهمیدم کلا خروجی این شبکه ها 0و1 - بعد با این روش ها چطوری کمک به حل مسایل میکنه - و راهنمایی کنید برای درک بیشتر چه مطالبی را مطالعه کنم پبا تشکر فراوان

alirezad ۰۶-۵-۱۳۹۱ ۰۵:۰۳ بعد از ظهر

یه نکته : صرف اینکه یک تابع sigmoid هست نمیشه گفت که بردش بین -1 تا 1 هست. تابع های sigmoid مختلفی وجود داره.
مثلا tanh که بردش بین -۱ و ۱ هست . یا تابع sigmoid curved که بردش بین ۰ تا ۱ هست.
کلا به توابعی که به شکل S هستند sigmoid می گن.

naeimwtg ۰۶-۹-۱۳۹۱ ۱۲:۰۸ بعد از ظهر

من منظورم این هست که در خمون مثالی که زدم ما باید ریشه معادله را پیدا کنیم - که جند روش ریاضی داره حالا با توجه به این که می خوایم از شبککه های عصبی استفاده کنیم و این روش خروجی 0 و 1 داره چطوری به جواب میرسیم -

saeedfa ۰۶-۹-۱۳۹۱ ۰۶:۴۸ بعد از ظهر

ببینید مهمترین قسمت واسه کار شما اینه که تابع نرون خروجی تابعی باشه که 0 یا 1 بده . نرون های لایه مخفی از توابع sigmoid استفاده کنید . جواب نداد از یه چیز دیگه . کسی به شما نمی گه چرا از این تابع استفاده کردی تو لایه مخفی شما باید شبکه ای طراحی کنید که الو رو متوجه بشه برای خروجی می تونید از تابع hardlim استفاده کنید. تو help بزنین hardlim
البته میشه یه ایده هایی هم زد که از این تابع استفاده نکرد ولی اگر می خواین خروجی 0 یا 1 باشه تابع hardlim

naeimwtg ۰۶-۱۰-۱۳۹۱ ۰۴:۴۵ بعد از ظهر

سلام به همه ببنید مثلا برای بدست آوردن ریشه معادلات غیر حطی می توان از روش نیوتن رافسون استفاده کرد http://upload.wikimedia.org/math/e/3...ee03d190fe.png

http://upload.wikimedia.org/wikipedi...ration_Ani.gif

حالا این رو میشه خیلی راحت برنامه نویس کرد منظور من اینه چرا باید از شبکه های عصبی برای حل این معادلات استفاده کرد و چه کمکی میکنه لطفا این رو برایم توضیح بدید .
با تشکر


زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۵:۱۱ بعد از ظهر ميباشد.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.