درجه دو
۱۵۰
۴۰۰
۳۰۰۰-۵۰۰۰
درجه سه
۲۵۰
۱۰۰۰
۸۰۰۰-۱۰۰۰
۱-۱۶ تعریف شبکههای عصبی مصنوعی
در تعریفی کلاسیک، یک شبکه عصبی مصنوعی عبارت است از مجموعهای عظیم از پردازشگرهای موازی که استعداد ذاتی برای ذخیره اطلاعات تجربی و بکارگیری آن را دارند و این شبکه دست کم از دو جهت شبیه مغز است:
( اینجا فقط تکه ای از متن فایل پایان نامه درج شده است. برای خرید متن کامل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )
۱- مرحله ای موسوم به یادگیری دارد
۲- وزنهایی که به جهت ذخیره اطلاعات به کار بردهشدند.
شبکههای عصبی مصنوعی در واقع مثلثی هستند که ۳ ضلع مفهومی دارند:
۱- سیستم تجزیه و تحلیل دادهها
۲- نورون یا سلول عصبی
۳- شبکه یا قانون کار گروهی نورونها.
اولین اقدامات در زمینه شبکههای عصبی مصنوعی در اوایل دهه ۱۹۴٠ صورت پذیرفت. در سال ۱۹۴۲ پیتز و مک کالو مقالهای در زمینه شبکه های عصبی مصنوعی ارائه کردند و نشان دادند که به کمک شبکههای عصبی میتوان هر تابع منطقی یا ریاضی را مدل کرد. در آن دوره چندین نوع شبکه عصبی ابداع شد و به نتایجی هم رسیدند. با این حال آن شبکه ها از نقاط ضعفی برخوردار بودند که باعث شد تا در اواخر دهه ۱۹۶٠ توجه محققین به سمت هوش مصنوعی معطوف نشود و شبکه های عصبی تا حدی اعتبار خود را از دست دادند.
بین سالهای ۱۹۷٠ تا ۱۹۸٠ تنها چند دانشمند از جمله کوهنن[۵۳] و اندرسن[۵۴] به تحقیقات در این زمینه ادامه دادند تا اینکه بالاخره هاپفیلد فیزیکدان مشهور، با انتشار مقالات خود دانشمندان زیادی را به تحقیق پیرامون شبکه های عصبی تشویق کرد.
در سال ۱۹۸۶ با انتشار کتاب PDP[55] توسط رامل هارت و مک کلیلند و ارائه قوانینی جهت یادگیری و تربیت شبکه های عصبی چند لایه تحولی در زمینه تحقیقات عصبی به وقوع پیوست که همچنان با سرعت چشمگیری ادامه دارد. در دهه ۱۹۹٠ شبکه های عصبی کاربردهای فراوانی در زمینه های مهندسی یافتند.
امروزه شبکه های عصبی در کنار ابزارهای دیگری همچون هوشمصنوعی و منطق فازی به عنوان نوعی سیستم هوشمند شناخته شده است و گاه ترکیبی از ابزارهای فوق در تحلیل یک مسئله مورد استفاده قرار گرفته شده است.
ساختار کلی شبکه های عصبی مصنوعی از شبکه بیولوژیکی مغز انسان الهام گرفته شده است و تحقیقات پیرامون شبکه های عصبی با شناخت و بررسی ساختار و کار یادگیری مغز انسان همراه است. شبکه های عصبی مصنوعی سیستمهایی هستند که قادر به انجام عملیاتی همانند سیستمهای عصبی طبیعی بودهاند یا به عبارت دیگر توانستهاند بعضی ویژگیهای شبیه مغز انسان را به نمایش درآورند. هنگامی که شناخت و توصیفی صریح و دقیق از یک مسئله وجود داشته باشد، بکارگیری قوانین و روابط شناخته شده در رابطه با مسئله به حل آن کمک کرده و مناسبترین راه بوده است، ولی در شرایطی که مجموعه قوانین لازم برای حل مسئله وجود نداشته باشد و یا شناخت پدیده بسیار پیچیده باشد، کاربرد این روش ممکن است چندان سودمند نباشد. از این رو دانشمندان به فکر کاربرد یک سیستم هوش مصنوعی که قابلیت های یادگیری، خلاقیت و انعطاف پذیری (مانند سیستم بیولوژیکی) انسان را دارا باشد افتاده و در این راستا روشهای محاسباتی عصبی[۵۶] را ارائه دادند. در این روش محاسباتی احتیاجی به مجموعه قوانین خاصی جهت حل مسئله وجود ندارد و تکیه اساسی بر تربیت تدریجی سیستم بوده است.
شبکه های عصبی مصنوعی با پردازش روی داده های تجربی، دانش یا قانون نهفته در ورای داده ها را به ساختار شبکه منتقل کردهاند. به همین خاطر به این سیستمها هوشمند گفته شده است چرا که براساس محاسبات روی داده های عددی یا مثالها، قوانین کلی را فرا گرفتهاند. در ساختار این سیستمها پارامترهایی وجود دارند که قابل تنظیم بودهاند. تنظیم این پارامترها برای آنست که سیستم رفتار مطلوبی را در برابر تحریکات و اطلاعات خارجی از خود نشان دهد که به اصطلاح به این عمل آموزش[۵۷] آن سیستم گفته شده است. در واقع این سیستمها قادرند یاد بگیرند و از راه یادگیری دانش لازم برای برخورد مناسب با یک پدیده را جمعآوری نمایند و از آن دانش به هنگام نیاز بهره ببرند. فرایند یادگیری این سیستمها می تواند به روشهای گوناگونی صورت پذیرد که مبحث عمده پژوهش در تولید شبکه های عصبی مصنوعی را تشکیل داده است. مدلهای شبکه عصبی مصنوعی پیوسته در حال توسعه و بهبودند و کاربرد آنها نیز همراه با پیشبرد پایه های تئوری مدلها بیشتر شده است (نوح زانگ, ۲۰۰۶).
۱-۱۷ سیستمهای عصبی بیولوژیکی[۵۸]
دستگاه عصبی انسان بسیار پیچیده و شامل میلیونها یاخته عصبی است که نرون نامیده شدهاند و هر نرون با هزاران نرون دیگر در ارتباط است، بدین معنی که از آنها سیگنالهایی دریافت کرده و سیگنالهایی را به آنها ارسال کرده است. در شکل (۱-۱) یک نرون زیستی و اجزای آن نمایش داده شده است.
شکل (۱-۱) ساختار یک نرون و اجزای آن
هر یاخته عصبی یا نرون از بدنه سلول که شامل هسته و ضمائم دیگر است، یک آکسون[۵۹] برای ارسال سیگنال به نرون دیگر و دندریتها[۶۰] که تودهای نخ مانند هستند و سیگنالها را از نرونهای دیگر دریافت می کنند، تشکیل شده است. انتهای آکسون شاخهشاخه است و پایانه های عصبی را بوجود آوردهاند، همچنین پایانه های عصبی با دندریتهای عصبی سلولهای دیگر تلاقی پیدا کرده و پیوندگاه یا سیناپس[۶۱] را بوجود آوردهاند. پیامهای عصبی به صورت یکطرفه و از دندریتها به بدنهی سلول و از بدنه سلول به سمت آکسون حرکت کردهاند.
۱-۱۸ ویژگی کلی نرونهای مصنوعی
بدنه اصلی هر شبکه عصبی مصنوعی از تعدادی گره و پارهخطهای جهت داری که گرهها را به هم وصل کردهاند، تشکیل شده است. در شکل (۱-۲) مدل یک نرون مصنوعی نشان داده شده است.
شکل (۱-۲) مدل یک نرون مصنوعی
مدل مصنوعی نرونهای بیولوژیکی انسان توسط مک کالو و پیتز ارائه گردید. این نرون در واقع سنگ بنای هر شبکه عصبی را تشکیل داده است. شبکه های عصبی امروزی این نرون پایه را با معماریهایی مختلف ترکیب کردهاند تا قابلیت های محاسباتی متنوعی را بدست آورند.
همانطور که در شکل (۱-۲) ملاحظه شده است، هر نرون بوسیله یک مجموع خطی وزن دار n و یک تابع که می تواند خطی یا غیرخطی باشد، نشان داده شده است. تابع که مقدار خروجی را بر اساس ورودی ها مشخص ساخته، تابع فعالیت[۶۲] یا تابع انتقال نامیده شده است.
اگر سیگنال ورودی iام از نرون jام را با و وزن آن را با (وزن سیگنال iام به نرونjام ) نشان داده شود، در نهایت مجموع سیگنالهای وزن دار شده به صورت رابطه (۱-۴) محاسبه گردیده است:
(۱-۴)
البته گاهی اوقات مقدار ثابتی در هر نرون به رابطه (۱-۴) به نام وزن بایاس[۶۳] افزوده شده که این مقدار معمولاً در هر نرون متفاوت است. با اضافه شدن این ترم، رابطه (۱-۵) بدست آمده است:
(۱-۵)
سپس با انجام یک عمل معمولاً غیر خطی توسط تابع فعالیت مانند روی ورودیهای وزندار شده، خروجی نرون حاصل شده است.
(۱-۶)
۱-۱۹ مراحل ساخت یک مدل با شبکه های عصبی مصنوعی
یک شبکه عصبی مصنوعی از تعداد زیادی گره و پارهخطهای جهتدار که گرهها رابه هم ارتباط دادهاند، تشکیل شده است. گرههایی که در لایه ورودی هستند گرههای حسی[۶۴] و گرههای لایهی خروجی، گرههای پاسخ دهنده[۶۵] نامیده شدهاند. بین نرونهای ورودی وخروجی نیز لایه های پنهان[۶۶] قرار دارند. اطلاعات از طریق گرههای ورودی به شبکه وارد شده و سپس از طریق اتصالات به لایه های پنهان منتقل شده، در نهایت خروجی شبکه از گرههای لایه خروجی بدست آمده است.
در ساخت یک مدل بر مبنای شبکه عصبی، اولین کار انتخاب نوع شبکه است. پس از آن پارامترهای ورودی که در خروجی تاثیر گذار هستند، انتخاب گردیده و سپس معماری شبکه ( تعداد لایه ها، تعداد گرههای و چگونگی اتصال گرهها) و نوع توابع انتقال و پارامترهای مؤثر در آموزش شبکه تعیین گردیدهاند. بعد از تعیین نوع شبکه و معماری آن یک سری اطلاعات ورودی- خروجی به شبکه داده شده و شبکه بر اساس این اطلاعات آموزش یافته است. این مرحله، مرحله آموزش[۶۷] یا تربیت[۶۸] شبکه نامیده شده است.
در مرحله آموزش با توجه به نوع الگوریتم یادگیری، وزنهای اتصالات شبکه تغییر یافتهاند. با تغییر توابع انتقال، تعداد لایه ها و تعداد گرههای لایه پنهان و عوامل مؤثر در تغییر وزنها به صورت سعی و خطا، مناسبترین مدل شبکه عصبی مصنوعی برای مسئله مورد نظر بدست آمده است. برای اطمینان از عملکرد مطلوب شبکه از یک سری ورودی به عنوان اطلاعات آزمایشی استفاده گردیده و خروجیهای آنها با خروجیهای شبکه مقایسه شدهاند. این مرحله آزمایش یا امتحان[۶۹] شبکه عصبی مصنوعی نامیده شده است. بعد از امتحان شبکه و رسیدن به خطای کمتر، مدل شبکه عصبی مصنوعی قابل استفاده خواهد بود.
۱-۲۰ انواع شبکه های عصبی مصنوعی
۱-۲۰-۱ انواع شبکه های عصبی بر مبنای روش یادگیری
بطور کلی بسته به چگونگی آموزش شبکه، شبکه های عصبی به سه دسته تقسیم شدهاند:
۱- آموزش با وزنهای ثابت[۷۰]: در روش وزنهای ثابت براساس اطلاعات داده شده، وزنها یکبار محاسبه و ثابت ماندهاند. این روش در بهینهسازی اطلاعات و فشرده سازی اطلاعات و همچنین بازیابی الگو کاربرد دارد.
۲- آموزش با مربی[۷۱]: در یادگیری با مربی، شبکه بصورت یک سیسم ورودی- خروجی عمل کرده، به عبارت دیگر شبکه با دریافت بردار ورودیx، بردار خروجی y را تولید کرده است. در این روش دنبالهای از زوجهای آموزش دهنده به شبکه داده شده است. مولفه اول، بردار ورودی و مولفه دوم، بردار خروجی است. از بردار خروجی به عنوان مربی (آموزش دهنده) استفاده شده است. بعد از اعمال بردار ورودی به شبکه، خروجی به عنوان تقریبی از ساخته شده است و از بردار خطای به عنوان عاملی برای تربیت شبکه و اصلاح وزنها استفاده گردیده است. در این روش بردارهای آموزشی بصورت دستهای[۷۲] و یا لحظهای[۷۳] به شبکه داده شدهاند و سپس بر اساس بردارهای خطای محاسبه شده، وزنهای شبکه آنقدر تغییر کردهاند تا اختلاف خروجی شبکه و خروجی مطلوب به حداقل مورد نظر برسد.
۳- آموزش بدون مربی[۷۴]: در یادگیری بدون مربی، بردار خطا وجود ندارد و وزنها فقط بر اساس ورودی اصلاح شدهاند، قوانینی که در این دسته قرار گرفتهاند در پاسخ به ورودی شبکه و با کشف همبستگی و خواص آماری بین ورودیهای مختلف، وزنهای شبکه را اصلاح کردهاند و باعث تفکیک و دستهبندی و یا کلاسهای مختلف از یکدیگر شدهاند. در بکارگیری این نوع قوانین یادگیری برای تربیت شبکه های عصبی دو فرض زیر را باید در نظر داشت: