منبع مقاله درباره شبکه عصبی، پردازش اطلاعات، شبکه عصبی مصنوعی

دانلود پایان نامه ارشد

باشد(Smith,1993).
در نورون‏های بیولوژیکی امکان دارد استحکام سیناپس‏ها تحت شرایط خاصی جهت تنظیم و تطابق رفتار یک نورون با محرک ورودی‏اش تغییر داده شود. در نورون‏های مصنوعی، معادل این کار با تغییر در مقدار وزن‏ها در فرآیند یادگیری شبکه انجام می‏پذیرد. در پردازش اطلاعات، فرآیند تنظیم وزن‏ها و دستیابی به وزن‏های مطلوب را یادگیری شبکه می‏گویند. وزن‏های ذخیره شده در حقیقت دانش شبکه هستند. فرآیند تغییر وزن‏ها با ارائه الگوهای آموزشی به شبکه تا زمان دستیابی به دقت کافی در پاسخ شبکه ادامه می‏یابد(همان).
هر دستورالعمل و روش خاصی برای تنظیم وزن‏ها، یک الگوریتم یادگیری را می‏سازد. این فرآیند که به طور کلی شامل نحوه ارائه الگوهای آموزش دهنده، معیارهای پایان فرآیند آموزش و روش یادگیری است، الگوریتم آموزشی یک شبکه را تشکیل می‏دهد(Kohonen,1998- Mitchell,1997).
در یک نگاه کلی شبکه‏های عصبی مصنوعی حاوی سه جزء اصلی می‏باشند(Mitchell,1997):
توپولوژی : ویژگی‏های ساختاری یک شبکه عصبی
یادگیری : نحوه ذخیره اطلاعات درون شبکه
یادآوری : چگونگی بازیابی دوباره اطلاعات ذخیره شده در شبکه
در بخش‏های بعدی توضیحاتی درمورد اجزاء اصلی ، نحوه آموزش و ویژگی‏های یک شبکه عصبی داده می‏شود.
2-17-7-مو شکافی شبکه‏های عصبی مصنوعی
هر شبکه عصبی حداقل دو جزء فیزیکی دارد: ارتباط‏ها ( وزن‏ها ) و واحدهای پردازشگر. ترکیب این دو جزء یک شبکه عصبی را ایجاد می‏کند. علاوه بر این موارد، توابع تحریک و نحوه ارائه بردارهای ورودی و خروجی شبکه نیز در طراحی و اجرای یک مدل بسیار مهم هستند
2-17-8-بردارهای ورودی – خروجی
شبکه‏های عصبی نمی‏توانند کارکنند مگر اینکه اطلاعات داشته باشند. برخی از شبکه‏های عصبی در فرآیند آموزش، نیازمند بردارهای منفرد و در حقیقت فقط بردارهای ورودی هستند و برخی دیگر نیازمند یک زوج بردار هستند یعنی علاوه بر ورودی باید خروجی‏های مربوط به آن ورودی نیز به شبکه داده شود. الگوهای ورودی که ممکن است مقادیر حقیقی یا گسسته باشند به صورت یک بردار n بعدی مشخص می‏شوند. همچنین واحدهای پردازشگر خروجی شبکه نیز یک بردار m بعدی را تشکیل می‏دهد(Patterson,1996).

2-17-9-الگوهای ارتباطی بین واحدهای پردازشگر
چگونگی ارتباط بین واحدهای پردازشگر و جهت جریان سیگنال‏ها درون یک شبکه عصبی از موارد اساسی یک شبکه می‏باشد. وزن‏های یک شبکه عصبی از یک طرف، جهت جریان اطلاعات و از طرف دیگر میزان تبادل اطلاعات بین واحدهای مختلف و تأثیرگذاری یک واحد بر واحد دیگر را نشان می‏دهند. همان‏طور که توضیح داده شد وزن‏های ارتباطی در خلال فرآیند یادگیری شبکه تنظیم می‏شوند. به وزن‏های ارتباطی که دارای مقادیر مثبت هستند وزن‏های محرک و به وزن‏های منفی، وزن‏های بازدارنده گفته می‏شود. وزن صفر نیز نشان‏دهنده عدم ارتباط بین دو واحد پردازشگر است. وزن‏های ارتباطی بین دو لایه به وسیله یک ماتریس w مشخص می‏شوند و هر درایه آن نشان‏دهنده ارتباط بین دو واحد پردازشگر است. برای مثال درایهw نشان‏دهنده انتقال خروجی واحد j ام به واحد iام است ( البته در برخی نوشتارها w مفهوم عکس دارد ). با توجه به این مسئله سیگنال‏ها می‏توانند به طور کلی به سمت جلو ، عقب و یا به صورت جانبی حرکت کنند و حتی به خود واحد پردازشگر برگردند(همان).
در اغلب موارد، برای یک واحد پردازشگر داشتن یک پیش‏قدر درونی (مقدار آستانه) مطلوب است. به سادگی می‏توان این ورودی پیش‏قدر را به صورت یک ارتباط اضافی به یک واحد پردازشگر از لایه قبلی با مقدار یک و وزن w در نظر گرفت که وزن آن در فرآیند یادگیری تنظیم می‏شود (Patterson,1996- Mitchell,1997).

2-17-10-واحدهای پردازشگر شبکه عصبی مصنوعی
هر شبکه مصنوعی از یکسری پردازشگر تشکیل شده است که عملیات پردازش اطلاعات در آن‏ها انجام می‏شود. در شکل شماره 5 معمول‏ترین نوع یک واحد پردازش‏کننده نشان داده شده است. خروجی هر واحد محاسباتی مطابق رابطه شماره 1 تابعی از وزن‏های ارتباط دهنده و ورودی‏های آن می‏باشد.
رابطه شماره 1

شكل 2-5- نماي شماتيكي از يك واحد پردازشگر
ماخذ: (Mitchell,1997)

روش‏های مختلفی برای ترکیب ورودی‏ها با یکدیگر وجود دارد که معمول‏ترین آن‏ها ترکیب خطی با یکدیگر می‏باشد ؛ در این صورت رابطه شماره 1 به صورت زیر( رابطه شماره 2 ) تبدیل می‏شود.
رابطه شماره 2
اطلاعات وزن‏دار شده پس از ترکیب با یکدیگر به تابع F داده شده و در نهایت خروجی یک واحد پردازشگر تولید می‏شود(Patterson,1996- Mitchell,1997).

2-17-11-توابع تحریک
بسته به نوع عملکردی که یک شبکه عصبی دارد از توابع تحریک متفاوتی در واحدهای پردازشگر استفاده خواهد شد. اگر چه توابع مورد استفاده در این واحدها تقریباً نامتناهی هستند ولی پنج نوع از آن‏ها که در اکثریت شبکه‏های عصبی استفاده می‏شوند، عبارتند از : تابع خطی، تابع پله‏ای، تابع R شیب، تابع سگیموئید و تابع گاوسین. به استثاء تابع خطی، تمامی‏ توابع فوق غیرخطی بوده و همچنین خروجی آن‏ها در یک محدوده مشخص قرار می‏گیرد، از این رو به آن‏ها توابع فشرده کننده نیز گفته می‏شود. در شکل شماره 6 توابع ذکر شده به ترتیب نشان داده شده‏اند.
معمول‏ترین تابع سگیموئید مورد استفاده در شبکه‏های عصبی تابع logistic است که با رابطه شماره 3 نشان داده می‏شود.
رابطه شماره 3

شكل2-6- توابع تحريك متداول مورد استفاده در واحدهاي پردازشگر
ماخذ: (Mitchell,1997)

در این رابطه (a ) معمولاً یک است و خروجی این تابع در بازۀ [1 ، 0] قرار دارد. این تابع معمولاً تحت عنوان سگیموئید شناخته می‏شود . البته یک حالت خاص از تابع logistic، تابع تانژانت هیپربولیک رابطه شماره 4 می‏باشد که خروجی آن در بازۀ[1 ، 1-] قرار دارد. این تابع نیز کاربردهای بسیار زیادی در شبکه‏های عصبی دارد، که در بخش‏های بعدی توضیحاتی در مورد آن داده می‏شود.
رابطه شماره 4

2-17-12-توپولوژی
در شبکه‏های عصبی مصنوعی معمولاً واحدهای پردازشگر به صورت لایه لایه قرار می‏گیرند و این لایه‏ها از طریق وزن‏های ارتباط‏دهنده به یکدیگر متصل می‏شوند. در هر لایه از شبکه عصبی تعدادی واحد پردازشگر با توابع تحریک مخصوص به خود وجود دارد. البته معمولاً واحدهای پردازشگر موجود در هر لایه از شبکه عصبی دارای توابع تحریک یکسانی هستند. به طور کلی، منظور از توپولوژی یک شبکه، تعیین تعداد لایه‏ها و تعداد واحدهای پردازشگر هر کدام از آن‏ها، تعیین نوع توابع تحریک واحدهای محاسباتی و نحوۀ ارتباط بین آن‏ها و در نهایت ویژگی‏های بردارهای ورودی – خروجی می‏باشد. البته، معمولاً بهترین ساختار برای مدلسازی یک فرآیند از طریق آزمایش بدست می‏آید(Sawhney,1992). در شکل شماره 7 یک شبکه چند لایه پیشرونده، نشان داده شده است.

شكل 2-7- نماي شماتيكي از يك شبكه چند لايه پيشرونده
ماخذ: (Patterson,1996)

این شبکه شامل یک لایه ورودی، دو لایه میانی و یک لایه خروجی است. البته در لایه ورودی واحدهای پردازشگر وجود ندارد و فقط ارتباط بین محیط بیرون با شبکه از طریق آن صورت می‏گیرد. لایه‏های میانی، لایه‏های مخفی نیز نامیده می‏شوند چون هیچ ارتباطی با جهان بیرون ندارند (Gurney,1997- Patterson,1996). شبکه‏های عصبی مطابق شکل شماره 8 از لحاظ ساختار به سه دسته تقسیم می‏شوند:
1- شبکه‏های عصبی یک لایه که در آن‏ها فرآیند پردازش اطلاعات فقط پیشرونده است.
2- شبکه‏های یک لایه که فرآیند پردازش اطلاعات فقط پیشرونده است.
3- شبکه‏های عصبی بازگشتی که احتمال برگشت خروجی یک واحد پردازشگر به لایه‏های قبلی یا همان لایه وجود دارد.
همچنین در شکل شماره 2-7 برخی از شبکه‏های متعلق به این دسته‏ها ذکر شده است که از آن جمله به شبکه‏های چند لایه با الگوریتم انتشار خطا به عقب در ساختارهای چند لایه پیشرونده ، شبکه‏های پرسپترون متعلق به ساختار یک لایه پیشرونده و شبکه‏های هاپفیلد و ART در ساختارهای بازگشتی را می‏توان اشاره کرد (Patterson,1996).
2-17-13-یادگیری در شبکه‏های عصبی مصنوعی
یادگیری به فرآیند تغییر وزن‏های ارتباط دهنده جهت دستیابی به قابلیت پاسخگویی به داده‏های ارائه شده در آموزش شبكه و همچنين داده‏هاي متفاوت از ورودي‏هايي كه براي آموزش شبكه استفاده شده است ( داده‏های آزمایش کننده ) اطلاق می‏شود(Gurney,1997- Patterson,1996).
یادگیری یک شبکه عصبی به یکی از روش‏های ذیل انجام می‏شود(همان):
تنظیم مقدار وزن‏های اتصالات واحدهای پردازشگر
تنظیم مقادیر آستانه توابع تحریک واحدهای پردازشگر
استقرار و تشکیل ارتباطات بین واحدهای پردازشگر
و ترکیبی از این سه فرآیند
البته شایان ذکر است که رایج‏ترین روش آموزش، روش اول می‏باشد.
الگوریتم‏های یادگیری مطابق شکل شماره 2-8 به سه دسته زیر تقسیم می‏شوند(Patterson,1996- Mitchell,1997):
یادگیری با ناظر؛ در یادگیری با ناظر الگوهای ارائه شده به شبکه جهت آموزش، دارای خروجی‏های مطلوب نیز هستند. در این روش، ابتدا میزان خطای بین خروجی‏های مطلوب و خروجی‏های محاسبه شده تعیین می‏گردد و سپس از خطای محاسبه شده جهت تغییر پارامترهای شبکه به منظور بهبود عملکرد آن می‏توان استفاده کرد. یادگیری تا وقتیکه خطا برای الگوهای آموزشی شبکه به حد قابل قبولی برسد، ادامه می‏یابد. از شبکه‏هایی که از این روش استفاده می‏کنند می‏توان به شبکه‏های چند لایه پیشرونده با الگوریتم یادگیری انتشار به عقب و شبکه‏های تک لایه پرستپرون با الگوریتم یادگیری ویدرو- هاف (قانون دلتا) اشاره کرد.

Learning Strategy

شكل 2-8- طبقه‏بندي الگوريتم‏هاي يادگيري شبكه‏هاي عصبي
ماخذ: (Demuth)
تقویتی؛ در یادگیری تقویتی، یک راهنما در فرآیند آموزش شبکه وجود دارد با این تفاوت که خروجی مطلوب به شبکه داده نمی‏شود بلکه فقط عددی که نشانگر میزان عملکرد شبکه است، ارائه می‏شود. اگر چه یادگیری تقویتی بوسیله محققان مورد مطالعه قرار گرفته است ولی روش مرسومی برای آموزش شبکه‏های عصبی نیست.
بدون ناظر؛ در الگوریتم‏های یادگیری بدون ناظر، خروجی مطلوب الگوهای آموزشی به شبکه طراحی شده داده نمی‏شود. در این روش، آموزش از طریق کشف ویژگی‏های موجود در الگوهای ورودی آموزش دهنده و با دسته‏بندی آن‏ها صورت می‏گیرد. نمونه‏هایی از این الگوریتم در شبکه‏های ART ، گراسبرگ ، مدل کوهکن و مدل لنیسکر استفاده شده است.
2-17-14-الگوریتم آموزشی انتشار به عقب
یکی از مهم‏ترین پیشرفت‏های شبکه‏های عصبی مصنوعی کشف الگوریتم یادگیری انتشار خطا به عقب برای تنظیم وزن‏ها در شبکه‏های چند لایه پیشرونده ( MLFF ) است که به عنوان شبکه‏های چند لایه پرستپرون ( MLP ) نیز شناخته می‏شود. به نظر می‏رسد برای اولین بار این الگوریتم به وسیله وربوس در سال 1974برای پیش بینی و تحلیل رفتار فرآیندهای مختلف جهت برتری بر الگوریتم رگرسیون ارائه شد. در سال 1985 این الگوریتم بوسیله پارکر دوباره ارائه گردید. با این وجود اعتبار این روش به تلاش‏های روملهارت و دیگر محققان گروه PDP به علت عمومیت بخشی و ارائه الگوریتم به صورت کاربردی نسبت داده شده است(Smith,1993).
روش یادگیری انتشار خطا به عقب برای هر شبکه چند لایه که از توابع تحریک مشتق‏پذیر و روش آموزش با ناظر استفاده می‏کند، بکار برده می‏شود. قبل از استفاده از این الگوریتم، ماتریس وزن‏های تمامی لایه‏ها به صورت تصادفی و با مقادیر کوچک مقداردهی می‏شود. سپس بردارهای ورودی به شبکه ارائه و خروجی آن محاسبه می‏گردد. خروجی محاسبه شده با خروجی مطلوب مقایسه و مقدار خطا تعیین شده و در نهایت از این خطا به عنوان معیاری جهت تنظیم وزن‏ها استفاده

پایان نامه
Previous Entries منبع مقاله درباره هوش مصنوعی، شبکه عصبی، پردازش اطلاعات Next Entries منبع مقاله درباره ارزش افزوده، عملکرد مالی، استان مازندران