عقیده داشته و دارند که این بحث باید مورد توجه قرار گیرد. شبکه‌های عصبی در حل مسائل یک جهت جدید و متمایز نسبت به کامپیترهای عمومی می‌گشود. کامپیوترهای عمومی از یک الگوریتم استفاده می‌کنند یعنی برای حل مسائل از یک سری دستورات از پیش تعیین شده پیروی می‌کنند مگر در مواقع ویژه‌ای که کامپیوتر نیاز به یک‌سری اطلاعات برای حل مسئله دارد. و همین مسئله توانایی پردازش را از کامپیوترهای عمومی به مسائلی که ما قبلا فهمیده‌ایم و روش حل آنها را شناخته‌ایم محدود می‌کند و تنها سرعت عمل و قدرت در حل نمونه‌های بزرگتر را به همراه دارند. اما کامپیوترها باید به قدری مفید باشند که بتوانند کارهایی را انجام دهند که واقعا ما نمی‌دانیم چگونه باید آنها را انجام دهیم.
يک برنامه نرم افزاری يا تراشه نيمه هادی است که بتواند همانند مغز انسان عمل نمايد. در واقع يک شبکه عصبی مصنوعی ايده ای است برای پردازش اطلاعات که از سيستم عصبی زيستی الهام گرفته شده و مانند مغز به پردازش اطلاعات می پردازد. اين سيستم از شمار زيادی عناصر پردازشی به نام نرون، تشکيل شده است که برای حل يک مسأله با هم هماهنگ عمل می کند. ANN ها، نظير انسانها، با مثال ياد می گيرند و با پردازش روی داده های تجربی، دانش يا قانون نهفته در ورای داده ها را، به ساختار شبکه منتقل می کند. به همين خاطر به اين سيستم ها، هوشمند گفته می شود چرا که بر اساس محاسبات روی داده های عددی يا مثال ها، قوانين کلی را ياد می گيرد .
شبكه عصبي مصنوعي يا به اختصار شبكه عصبي، يك ابزار محاسباتي الهام گرفته از مغز انسان است (نجاتي‌ اجي بيشه، 1387). الهام از مغز انسان، شبكه هاي عصبي مصنوعي را به مجموعه هایي از روشهاي ساده و در عين حال قدرتمند محاسباتي تبديل نموده است. ويژگيهايي همچون قدرت يادگيري و انطباق، قدرت تعميم، پردازش زمينهاي اطلاعات، تحمل خطا و يكنواختي تحليل و طراحي (راعي، 138:ص146)، باعث ميشود شبكه هاي عصبي توان پردازش بالايي داشته و قادر به انجام موفقيتآميز اعمالي مانند تخمين توابع پيچيدة غيرخطي و تشخيص و طبقه بندي الگوها باشند. ساختار شبكه عصبي معمولاً يك شبكه يا گراف چند لايه با ارتباط هاي ساده بين لايه هاست. در هر لايه يك يا چندين واحد محاسباتي به نام گره يا نرون مصنوعي وجود دارد كه در حقيقت الگويي ساده از نرونهاي عصبي مغز انسان هستند. نقش نرونها در شبكه عصبي، پردازش اطلاعات است و اين امر در شبكه هاي عصبي مصنوعي به وسيله يك پردازشگر رياضي كه همان تابع فعالسازي (Barnes, B.R, 2007) است، انجام مي شود. تابع فعالسازي يا تابع عملياتي، با توجه به مسئله اي كه قرار است به وسيلة شبكة عصبي حل شود و از سوي طراح انتخاب مي شود. يك شبكه عصبي مصنوعي در ساده ترين حالت داراي يك لاية ورودي و يك لاية خروجي است. امّا شبكه با لايه هاي پنهان، داراي توانايي هاي بيشتري است. ميتوان ثابت كرد كه يك شبكه عصبي پيشخور با يك لاية پنهان، تابع فعالسازي سيگموئيد در لايه پنهان، تابع فعالسازي خطي در لايه خروجي و تعداد نرونهاي كافي در لايه پنهان، قادر است هر تابعي را با دقت دلخواه تقريب بزند. شبكه شبيه يك سيستم ورودي- خروجي عمل ميكند و ارزش نرونهاي ورودي را براي محاسبة ارزش نرونهاي خروجي مورد استفاده قرار ميدهد. هر كدام از ارتباطهاي بين نرونها در لايه هاي مختلف وزن مخصوص به خود دارند كه شبكه در حقيقت با تعديل اين اوزان در طي مرحله آموزش، الگوي بين متغيرهاي خروجي و ورودي را ياد ميگيرد. به طور كلي، شبكه‌هاي عصبي را ميتوان بر حسب روشهاي يادگيري، به دو نوع يادگيري با سرپرست (Cronin, J. j., and Taylor, S. A ,1994) و يادگيري بدون سرپرست (Fausett, L, 1994) تقسيم بندي كرد. در يادگيري با سرپرست يا معلم، پاسخ (خروجي) صحيح براي هر الگوي ورودي به شبكه داده مي شود. وزنها به گونه اي تعيين مي شوند كه شبكه، جوابهايي نزديك به جوابهاي صحيح شناخته شده را ايجاد كند. در جريان اصلاح مكرر وزنها، يك شبكه آموزش مي بيند. با تكرار فرايند يادگيري، شبكه مقادير صحيح وزنها را شناسايي مي‌كند و خطا را كاهش مي دهد. براي مجموعه مشخصي از ورودي ها، خطا عبارت است از تفاضل بين مقدار واقعي و خروجي شبكه. در يادگيري، بدون سرپرست يا بدون معلم، براي هر الگوي ورودي موجود در مجموعه آموزشي، نيازي به پاسخ واقعي نيست. در اين يادگيري، شبكه ساختار اساسي داده ها و همبستگي بين الگوهاي موجود در داده ها را كشف و الگوها را در طبقاتي مناسب سازماندهي مي كند. بر حسب ساختار نيز شبكه هاي عصبي مصنوعي به دو نوع شبكه پيشخور (Filiz, z 2007) و شبكه بازگشتي (Franklin, B., Niteci, D, 2005) تقسيم بندي مي شوند. شبكه هاي پيشخور كه در آنها حلقه بازخور وجود ندارد و شبكه‌هاي بازگشتي كه داراي حلقه بازخور بوده و نرونها در هر لايه اطلاعات را هم از لايه هاي ماقبل و هم از لايه هاي بعدي مي گيرند.
شكل زير، يك شبكة عصبي نوعي را نمايش مي دهد. 
 
شكل2-1. يك نمونه شبكه عصبي

مفروضات زير در شبكه هاي عصبي مصنوعي مورد توجه قرار ميگيرد: (فوست، 1994)6
فرايند پردازش اطلاعات در واحدهاي ساده اي به نام نرون صورت مي گيرد. اين نرونهاي مصنوعي يا به اختصار نرون، در حقيقت نمونه هاي بسيار ساده از نرونهاي مغزي اند.
اطلاعات در مسيرهاي ارتباطي بين نرونها رد و بدل مي شوند.
هر كدام از خطوط ارتباطي بين نرونها داراي وزن هستند.
هر نرون از يك تابع عملياتي (معمولاً غيرخطي) استفاده مي كند، تا با اعمال آن روي ورودي نرون (مجموع اطلاعات
وزن دار شده)، خروجي مشخصي ايجاد كند.
شبكة عصبي توسط الگوي ارتباطي بين لايه هاي مختلف شبكه، تعداد نرونها، تعداد لايه‌ها، الگوريتم يادگيري و تابع عملياتي نرون، شناسايي و تعريف مي شود. امّا يك قانون كلي دربارة اندازة استاندارد اين مؤلفه ها براي هر شبكه و در هر كاربردي وجود ندارد. در بيشتر موارد يك روش ابتكاري است كه در آن شبكه هاي چند لايه با تعداد نرونهاي متفاوت در هر لايه، نرخهاي يادگيري متفاوت و توابع فعالسازي گوناگون آموزش مي بينند و سپس بهترين شبكه انتخاب ميشود. در مرحله يادگيري، شبكه از طريق تعديل وزنها، آموزش مي‌بيند تا قادر به پيش بيني يا طبقه بندي صحيح بروندادهاي هدف بر اساس مجموعه اي از دروندادها باشد(تاورونگ، 2013). 7
2-3: چرا ANNs ارزش مطالعه کردن دارند؟
شبکه های عصبی به دلیل پردازش های موازی از سرعت پردازش بالایی برخوردار است. شبکه های عصبی توان بالقوه ای برای حل مسائلی دارند که شبیه سازی آن ها از طریق منطقی و یا سایر روشها مشکل و یا غیر ممکن است. همانند مغز انسان که به طور پیوسته در حال یادگیری و انطباق با محیط هستند. به این معنی که اگر شبکه برای یک وضعیت خاص آموزش دید و تغییر کوچکی در شرایط محیطی آن رخ داد، می تواند با آموزش مختصر، برای شرایط جدید نیز کارآمد باشد. در شبکه عصبی، عدم عملکرد صحيح قسمتی از نرون ها، موجب از کارافتادگی کامل مغز نمی شود و امکان اتخاذ تصميم صحيح نيز وجود دارد. این روش قادر است برای داده ها در شرایط عدم اطمینان (اعم از آنکه فازی باشند و یا به طور ناقص با دریافت noise دریافت شده باشند، جواب منطقی ارائه دهند.
2-4: ویژگی های شبکه های عصبی
شبکه های عصبی مصنوعی با وجود اینکه با سیستم عصبی طبیعی قابل مقایسه نیستند ویژگی هایی دارند که آنها را در بعضی از کاربردها مانند تفکیک الگو، رباتیک، کنترل و به طور کلی در هر جا که نیاز به یادگیری یک نگاشت خطی یا غیرخطی باشد، ممتاز می نماید. این ویژگس ها به شرح ذیل هستند: (منهاج، 1384)
قابلیت یادگیری
استخراج نتایج تحلیلی از یک نگاشت غیر خطی که با چند مثال مشخص شده است، کار ساده ای نمی باشد. زیرا نرون یک دستگاه غیرخطی است و در نتیجه یک شبکه عصبی که از اجماع این نرون ها تشکیل می شود نیز یک سیستم کاملا پیچیده و غیرخطی خواهد بود. به علاوه، خاصیت غیرخطی عناصر پردازش در کل شبکه توزیع می گردد. پیاده سازی این نتایج با یک الگوریتم معمولی و بدون قابلیت یادگیری نیاز به دقت و مراقبت زیادی دارد. در چنین حالتی سیستمی که بتواند خود این رابطه را استخراج کند بسیار سودمند به نظر می رسد.
قابلیت یادگیری، یعنی توان تنظیم پارامترهای شبکه (وزن های سیناپتیکی) در مسیر زمان که محیط شبکه تغییر می کند و شبکه شرایط جدید را تجربه می کند. با این هدف که اگر شبکه برای یک وضعیت خاص آموزش دید و تغییر کوچکی در شرایط محیطی آن (وضعیت خاص) رخ داد، شبکه بتواند با آموزش مختصر برای شرایط جدید نیز کارآمد باشد. دیگر اینکه، اطلاعات در شبکه های عصبی در سیناپس ها ذخیره می گردد و هر نرون در شبکه، به صورت بالقوه از کل فعالیت سایر نرون ها متاثر می شود. در نتیجه، اطلاعات از نوع مجزا از هم نبوده بلکه متاثر از کل شبکه می باشد.
پراکندگی اطلاعات ؛ پردازش اطلاعات به صورت متن
آنچه که شبکه فرا می گیرد؛ اطلاعات یا دانش؛ در وزن های سیناپسی منتشر می باشد. رابطه یک به یک بین ورودی ها و وزن های سیناپتیکی وجود ندارد. می توان گفت که هر وزن سیناپسی مربوط به همه ورودی هاست ولی به هیچ یک از ورودی ها به طور منفرد و مجزا مربوط نیست. به عبارت دیگر هر نرون در شبکه، از کل فعالیت سایر نرون ها متاثر می باشد. در نتیجه اطلاعات به طور متن توسط شبکه های عصبی پردازش می شوند. بر این اساس چنانچه بخشی از سلول های شبکه حذف شوند و یا عملکرد غلط داشته باشند، باز هم احتمال رسیدن به پاسخ صحیح وجود دارد. اگر چه این احتمال برای تمامی ورودی ها کاهش یافته ولی برای هیچ یک از بین نرفته است.
قابلیت تعمیم
پس از آنکه مثال های اولیه به شبکه آموزش داده شد، شبکه می تواند در مقابل یک ورودی آموزش داده نشده قرار گیرد و یک خروجی مناسب ارائه نماید. این خروجی بر اساس مکانیزم تعمیم، که همانا چیزی جز فرایند درون یابی نیست به دست می آید. به عبارت روشن تر، شبکه تابع را یاد می گیرد، الگوریتم را می آموزد و با رابطه تحلیل مناسبی برای تعدادی نقاط در فضا به دست می آورد.
پردازش موازی
هنگامی که شبکه عصبی در قالب سخت افزار پیاده می شود، سلول هایی که در یک تراز قرار می گیرند می توانند به طور همزمان به ورودی های آن تراز پاسخ دهند. این ویژگی باعث افزایش سرعت پردازش می شود. در واقع چنین سیستمی، وظیفه کلی پردازش بین پردازنده های کوچکتر مستقل توزیع می گردد.
مقاوم بودن
در یک شبکه عصبی هر سلول به صورت مستقل عمل می کند و رفتار کلی شبکه، برایند رفتارهای محلی سلول های متعددی است. این ویژگی باعث می شود تا خطاهای محلی از چشم خروجی نهایی دور بماند. به عبارت دیگر سلول ها در یک روند همکاری، خطاهای محلی یکدیگر را تصحیح می کنند. این خصوصیت باعث افزایش قابلیت مقاوم بودن (تحمل پذیری خطا) در سیستم می گردد(منهاج، 1384).
2-5: نرون عصبی انسان
در سيستم عصبی، نرون (سلول عصبی) به عنوان اصلی ترين عنصر پردازش، شناخته شده اند. بطور کلی بدن انسان در حدود یکصد تريليون نرون وجود دارد که تمام آن ها از سه قسمت اصلی تشکيل شده اند: بدنه سلول، دندريت
ها و آکسون (شکل1). همان طور که در شکل مشخص است هر نرون دارای تعدادی دندريت و يک آکسون است. دندريت ها به عنوان مناطق دريافت کننده سيگنال های الکتريکی هستد وسيگنال های الکتريکی را از آکسون نرون های ديگر به بدنه سلول می برند. بدنه سلول انرژی لازم را برای فعاليت نرون فراهم کرده و بر روی سيگنال های ورودی عمل می کند(که با يک عمل جمع جبری ساده و مقايسه با يک سطح آستانه مدل می گردد). آکسون نيز سيگنال های الکتروشيميايی را از بدنه سلول به دندريت ساير نورون ها منتقل می کند(چنگ،2007). 8
محل تلاقی يک آکسون از يک نرون به دندريت های ساير نرون ها را سيناپس می نامند. سيناپس ها واحدهای کوچکی هستند که ارتباط بين نرون ها را برقرار می سازد. زمانيکه سيگنال های عصبی از آکسون ساير نرون ها به يک نرون می رسد، آن را تحريک می کند. نرون از هر يک از اتصالات ورودی خود يک ولتاژ کم را توسط سيگنال های عصبی، دريافت می کند و آن ها

دسته بندی : پایان نامه ها

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