در سالیان اخیر محققان زیادی به بررسی هوش مصنوعی و شبکه عصبی مصنوعی بصورت جزیی بعنوان ابزاری برای مدل کردن سیستمهای مهندسی پرداخته اند .نتیجه مدلسازیهای موفق، ابداع بستههای نرمافزاری در رابطه با طراحی و گسترش شبکه های عصبی میباشد که شامل گزینه های مختلفی در رابطه با طراحی ساختار شبکه عصبی بوده و محیط مناسب و راحتی را برای کاربر ایجاد مینمایند که تمام محاسبات پیچیده ریاضی از دید کاربر به دور میباشد بنابراین استفاده و توسعه این شبکه ها بسیار راحت میباشد [۲۴].
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت nefo.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
۳-۲- شبکه های عصبی مصنوعی
شبکه های عصبی مصنوعی یکی از شاخه های علوم کامپیوتر است که در سالهای اخیر، در علوم و فنون برای حل مسائلی که روشهای سنتی و کلاسیک یا قادر به حل آن نیستند یا حل آنها سخت است جایگاه برجستهای پیدا کرده است. شبکه های عصبی مصنوعی یکی شاخه های پرکاربرد هوش مصنوعی است که به عنوان ابزاری هوشمند برای مدل کردن برخی سیستمهای مهندسی با تقلید از ساختار شبکه های عصبی موجودات زنده استفاده می شود. آنچه مهم است تبعیت شبکه های عصبی مصنوعی از کلیت مفهوم جعبه سیاه است، چون عمل تجزیه و تحلیل در شبکه اتفاق میافتد نه در مغز محقق. همچنین نیاز به دانش زیادی در مورد عملکرد آن برای کاربر وجود ندارد. اما به هر حال بهره گیری از دانش کلی در رابطه با طرز کار این شبکه ها برای کاربران آن ضروری است [۲۳].
۳-۳- شکل بیولوژیکی شبکه های عصبی
نرونها سادهترین واحد ساختاری سیستمهای عصبی هستند. بافتهایی که عصب نامیده میشوند مجموعه ای از نرونها میباشند. این نرونها اطلاعات و پیامها را از یک قسمت بدن به قسمت دیگر منتقل می کنند. چنانکه در شکل(۳-۱) نمایش داده شده است، بیشتر نرونها از سه قسمت اساسی زیر تشکیل شده اند:
۱- بدنه سلول که شامل هسته و قسمت های حفاظتی دیگر میباشد، ۲- دندریت[۶۷]، ۳- اکسون[۶۸] که دو مورد اخیر عناصر ارتباطی نرون را تشکیل می دهند.
شکل(۳-۱):نرون طبیعی [۲۵]
محل تلاقی یک اکسون از یک سلول به دندریتهای سلول دیگر را سیناپس میگویند. سیناپسها واحدهای ساختاری کوچکی هستند که ارتباطات بین نرونها را بر قرار میسازند [۲۳].
۳-۴- شباهتهای شبکه های عصبی مصنوعی و بیولوژیکی
با تمام اغراقها در مورد شبکه های عصبی مصنوعی، این شبکه ها اصلاً در حد پیچیدگیهای مغز موجودات نیستند و تنها تشابهات زیر را تأمین مینمایند.
بلوکهای ساختاری در هر دو شبکه مصنوعی و بیولوژیکی خیلی ساده هستند و علاوه بر این، نرونهای مصنوعی از سادگی بیشتری بر خوردار میباشند.
ارتباط بین نرونها، عملکرد شبکه را تعیین می کنند.
اگر چه نرونهای بیولوژیکی از نرونهای مصنوعی که توسط مدارات الکترونیکی ساخته میشوند بسیار کندتر میباشند، عملکرد مغز خیلی سریعتر از عملکرد یک کامپیوتر معمولی میباشد. علت این پدیده بیشتر به دلیل عملکرد موازی نرونها میباشد و این یعنی همه نرون ها معمولاً به طور همزمان کار می کنند و پاسخ می دهند. شبکه های عصبی مصنوعی نیز به صورت موازی عمل می کنند [۲۳].
۳-۵- مدل ریاضی یک نرون
چنانچه در شکل (۳-۱) نمایش داده شده است، نرون کوچکترین واحد یک شبکه عصبی مصنوعی میباشد که عملکرد شبکه های عصبی را تشکیل میدهد. بدنه هر سلول عصبی از دو قسمت تشکیل شده است. بخش اول را تابع ترکیب میگویند که وظیفهی آن، ترکیب وزندار تمام ورودی ها و تولید یک عدد اسکالر میباشد. در بخش دوم سلول، تابع انتقال قرار دارد که به آن تابع تحریک نیز میگویند. در واقع تا زمانیکه ورودیهای ترکیب شده و وزندار شده به یک حد آستانهای خاص نرسند مقدار خروجی متناسبی تولید نمیگردد[۲۳].
بردار ورودی به شبکه با P نمایش داده می شود. اسکالرهای Pi که R، …… ۲ ،۱ = i و عناصر برداری P هستند. مجموعه وزنها ?i، عناصر بردار وزنی W را تشکیل می دهند. هر عنصر از بردار P در عنصر متناظر با آن از بردار W ضرب می شود. هر نرون یک جمله بایاس b دارد که با حاصل ضرب بردار وزن W در بردار P جمع می شود. ورودی خالص n (یا همان net) مطابق فرمول زیر محاسبه میگردد.
در نهایت خروجی نرون به صورت زیر خواهد بود.
تعداد عناصر بردار ورودی از صورت مسأله تعیین میگردند. به عبارت دیگر Rتحت انتخاب طراح نیست بلکه بستگی به روش حل مسأله مورد بررسی دارد. به بیان دیگر Rدقیقاً برابر تعداد متغیرهای مستقل مؤثر در تعیین متغیر وابسته می باشد [۲۶].
شکل (۲-۳) مدل ریاضی نرون
۳-۶٫ توابع محرک
تابع محرک ƒ می تواند خطی یا غیرخطی باشد. تابع محرک بر اساس نیاز خاص مسألهای که قرار است به وسیله شبکه عصبی حل گردد، انتخاب می شود. هر تابع محرک دامنه خروجی نرون را محدود میسازد به این علت به این توابع، توابع محدودساز[۶۹] یا فشرده ساز[۷۰] نیز میگویند. در عمل هنگام توسعه شبکه های عصبی مصنوعی تعداد محدودی از توابع محرک مورد استفاده قرار میگیرند. سه نمونه از معمولترین توابع مورد استفاده در حوزه شبکه عصبی مصنوعی در زیر شرح داده شده است [۲۶].
۳-۶-۱٫ تابع محرک خطی (تابع همانی):
خروجی این تابع معادل ورودی آن است.
(۵-۳)
در اینجا n همان ورودی خالص نرون یا net میباشد. تابع خطی در شکل زیر نشان داده شده است.
شکل(۳-۳): تابع محرک خطی
۳-۶-۲٫ تابع محرک تانژانت هایپربولیک:
(۶-۳)
دامنه این تابع تمامی اعداد را شامل می شود و در خروجی مقادیر بین ۱- تا ۱ را ایجاد مینماید.
شکل(۴-۳): تابع محرک تانژانت هیپر بولیک
۳-۶-۳٫ تابع محرک سیگموئیدی:
(۷-۳)
این تابع در شبکه های عصبی موارد استفاده زیادی دارد. به عنوان مثالی از این کاربردها می توان به شبکه های عصبی چند لایه با قانون یادگیری پس انتشار خطا (BP)[71] اشاره کرد. این تابع انتقال به دلیل مشتقپذیر بودنش عموماً در شبکه های پس انتشار خطا بهکار می رود. اما کاربر می تواند این تابع را با سایر توابع مشتقپذیر جایگزین نماید. شکل کاربردی خاصی که اغلب برای تابع محرک سیگموئیدی لگاریتمی استفاده میگردد به صورت زیر است .
(۳-۸)
شکل(۳-۵): تابع محرک سیگموئیدی
بعد از معرفی مدل ریاضی نرون مصنوعی، نوبت به بررسی چگونگی ارتباط میان نرونها در قالب ساختار شبکه میباشد. تعداد ساختارهای پیشنهاد شده شبکه های عصبی مصنوعی بسیار زیاد میباشد و نمی توان انتظار داشت کسی با تمام آنها آشنایی داشته باشد [۲۳].
۳-۷٫ انواع شبکه های عصبی مصنوعی
شبکه های عصبی به دو دسته پیشخور و برگشتی تقسیم میگردند.
۳-۷-۱٫ شبکه های پیشخور
در یک شبکه پیشخور، نرونها به صورت کلی به صورت لایه هایی گروهبندی میشوند. سیگنالها از لایه ورودی بهطرف لایه خارجی با اتصالات یکطرفه جریان پیدا می کنند. نرونها از یک لایه به لایهی بعدی در داخل خود لایه، متصل میشوند. خروجی در یک لحظه فقط یک تابعی از ورودی در همان لحظه است.
[۷۲]MLPجزء شناخته شدهترین نوع شبکه های پیشخور میباشند. در اکثر کارهای انجام شده در حوزه سیستمهای غیر خطی از سیستم پیشخور مانند MLP استفاده شده است. شکل ذیل یک MLP را نشان میدهد. این شبکه یک لایهی ورودی، یک لایهی خروجی و یک لایهی مخفی یا میانی دارد. شبکه های مک لاچ پیتز، پرسپترون، آدلاین و مادلاین از جمله شبکه های پیش خور هستند [۲۳].
شکل(۳-۶): شبکه عصبی پرسپترون چند لایه[۲۳]
۳-۷-۲٫ شبکه های برگشتی
در شبکه های برگشتی حداقل یک سیگنال برگشتی از یک نرون به همان نرون یا نرونهای همان لایه یا لایهی قبل وجود دارد. شبکه های برگشتی بهتر میتوانند رفتار مربوط به ویژگیهای زمانی و پویایی سیستم را نشان دهند. در این شبکه ها که با توجه به ماهیت پویایی مسأله مطرح میگردند بعد از مرحله یادگیری شبکه پارامترها تغییر کرده و تصحیح میشوند. نوع خاصی از شبکه های برگشتی، شبکه هاپفیلد میباشد [۲۳].
[دوشنبه 1400-09-29] [ 05:07:00 ق.ظ ]
|