47

شبکه ها ی عصبی مصنوعی

  • Upload
    korene

  • View
    102

  • Download
    11

Embed Size (px)

DESCRIPTION

شبکه ‌ها ی عصبی مصنوعی. مدرس: دکتر فریبرز محمودی گروه مهندسی کامپیوتر دانشگاه آزاد اسلامی قزوین & Mitchell Ch. 4. مقدمه. شبکه عصبی مصنوعی روشی عملی برای یادگیری توابع گوناگون نظیر توابع با مقادیر حقیقی ، توابع با مقادیر گسسته و توابع با مقادیر برداری می‌باشد . - PowerPoint PPT Presentation

Citation preview

Page 2: شبکه ها ی عصبی مصنوعی

‌عصبی‌مصنوعیی‌هاشبکهمدرس: دکتر فریبرز محمودی

گروه‌مهندسی‌کامپیوترآزاد‌اسالمی‌قزویندانشگاه‌

‌&Mitchell‌Ch.‌4

2

Page 3: شبکه ها ی عصبی مصنوعی

3

مقدمه

ب11رای‌شبکه عملی‌ روش11ی‌ مص11نوعی‌ عص11بی‌ ‌ب1ا‌ تواب1ع‌ نظ1یر‌ گون1اگون‌ تواب1ع‌ مق1ادیر‌ی1ادگیری‌

تواب1ع‌ب1ا‌مق1ادیر‌گسس1ته‌و‌تواب1ع‌ب1ا‌مق1ادیر‌،‌حقیقیمی‌باشد.‌برداری

ه1ای‌یادگیری‌ش1بکه‌عص1بی‌در‌براب1ر‌خطاه1ای‌داده‌ب1ا‌م1وفقیت‌‌ها‌آموزش1ی‌مق1اوم‌ب1وده‌و‌اینگون1ه‌ش1بکه

مس1ا شناس1ایلی‌ب1ه‌ شناس1ایی‌نظ1یر‌ و‌یی‌گفت1ار،‌تعبیر‌تصاویر،‌و‌یادگیری‌روبات‌اعمال‌شده‌است.

Page 4: شبکه ها ی عصبی مصنوعی

‌عصبی‌چیست؟شبکه

ب1رای‌محاس1به‌اس1ت‌ک1ه‌ب1ر‌پای1ه‌روش1ی‌واح1د‌ چن1دین‌ پیوس1ته‌ هم‌ ب1ه‌ اتص1ال‌

می‌شود.پردازشی‌ساخته‌

شبکه‌از‌تع1داد‌دلخ1واهی‌س1لول‌ی1ا‌گ1ره‌‌ک1ه‌می‌ش1ودی1ا‌واح1د‌ی1ا‌ن1رون‌تش1کیل‌

ب1ه‌خ1روجی‌رب1ط‌ را‌ ورودی‌ مجموع1ه‌می‌دهند.

4

Input 0 Input 1 Input n...

Output 0 Output 1 Output o...

O0 O1 Oo

H0 H1 Hm...

...

Hidden Layer

Page 5: شبکه ها ی عصبی مصنوعی

دارد؟یی‌‌چه‌قابلیتهاشبکه‌عصبی

یک‌تابع‌معلوممحاسبه‌

تقریب‌یک‌تابع‌ناشناخته

الگویی‌شناسا

پردازش‌سیگنال

یادگیری‌انجام‌موارد‌فوق

5

Page 6: شبکه ها ی عصبی مصنوعی

‌از‌طبیعتالهام

عص1بی‌مص1نوعی‌ت1ا‌ح1د‌زی1ادی‌ملهم‌از‌‌های‌‌ش1بکهمطالع1هی1ادگیر‌ط1بیعی‌اس1ت‌ک1ه‌در‌آنه1ا‌ی1ک‌مجموع1ه‌‌های‌سیس1تم

دخی1ل‌ ی1ادگیری‌ ک1ار‌ در‌ متص1ل‌ هم‌ ب1ه‌ نرونه1ای‌ از‌ پیچی1ده‌هستند.

ن1رون‌تش1کیل‌1011ک1ه‌مغ1ز‌انس1ان‌از‌تع1داد‌می‌رود‌گم1ان‌‌‌ن1رون‌دیگ1ر‌در‌ارتب1اط‌104ش1ده‌باش1د‌ک1ه‌ه1ر‌ن1رون‌ب1ا‌تقریب1ا‌

است.ثانی1ه‌اس1ت‌ک1ه‌در‌3-10نرونه1ا‌در‌ح1دود‌ییچنگ‌سرعت‌س1و‌

.‌می‌نمای1د(‌ثانی1ه‌)بس1یار‌ن1اچیز‌10-10مقایس1ه‌ب1ا‌کامپیوتره1ا‌در‌ اس1ت‌ ق1ادر‌ آدمی‌ وج1ود‌ این‌ ی1ک‌0.1ب1ا‌ تص1ویر‌ ثانی1ه‌ ‌

نمای1د.‌این‌ق1درت‌ف1وق‌الع1اده‌بای1د‌از‌یی‌انس1ان‌را‌بازشناس1انرونه1ا‌ از‌ زی1ادی‌ تع1دادی‌ در‌ توزی1ع‌ش1ده‌ م1وازی‌ پ1ردازش‌

حاصل‌شده‌باشد.

6

Page 7: شبکه ها ی عصبی مصنوعی

7

خط11ا‌در‌داده‌ه11ای‌آموزش11ی‌وج11ود‌داش11ته‌باش11د.‌مث11ل‌‌حاص11ل‌از‌دارای‌ن11ویزمس11ایلی‌ک11ه‌داده‌ه11ای‌آموزش11ی‌

.‌نظیر‌دوربین‌و‌میکروفن‌ها‌هستندسنسورها‌های‌دهدازی11ادی‌زوج‌وی11ژگی-مواردی‌ک11ه‌نمونه‌ه11ا‌توس11ط‌مق11ادیر‌

‌نش1ان‌داده‌ش1ده‌باش1ند.‌نظ1یر‌داده‌ه1ای‌حاص1ل‌از‌ی1ک‌مق1داری.یویدوربین‌وید

باشد.پیوسته‌تابع‌هدف‌دارای‌مقادیر‌‌زم1ان‌ک1افی‌ب1رای‌ی1ادگیری‌وج1ود‌داش1ته‌باش1د.‌این‌روش‌در‌

زم1ان‌مقایس1ه‌ب1ا‌روش1های‌دیگ1ر‌نظ1یر‌درخت‌تص1میم‌نی1از‌ب1ه‌‌دارد.بیشتری‌برای‌یادگیری

می‌ت1وان‌ت1ابع‌ه1دف‌نباش1د.‌زی1را‌ب1ه‌س1ختی‌‌تعب1یر‌نی1ازی‌ب1هاوزان‌یاد‌گرفته‌شده‌توسط‌شبکه‌را‌تعبیر‌نمود.

مناسب برای یادگیری یلمساعصبی های شبکه

Page 8: شبکه ها ی عصبی مصنوعی

8

x1

x2

xn

{1‌or‌–1}

X0=1

w0

w1

w2

wn

Σ

از‌ش1بکه‌عص1بی‌ب1ر‌مبن1ای‌ی1ک‌واح1د‌محاس1باتی‌ب1ه‌ن1امنوعی‌‌ی1کمی‌ش1ودس1اخته‌پرس1پترون‌ ‌از‌ب1رداری‌پرس1پترون‌.‌

‌از‌خطی‌را‌گرفت1ه‌و‌ی1ک‌ت1رکیب‌حقیقی‌مق1ادیر‌ب1ا‌ورودیه1ای.‌اگ1ر‌حاص1ل‌از‌ی1ک‌مق1دار‌می‌کن1داین‌ورودیه1ا‌را‌محاس1به‌

‌و‌در‌غ1یر‌1براب1ر‌ب1ا‌‌پرس1پترون‌‌بیش1تر‌ب1ود‌خ1روجیآس1تانه‌خواهد‌بود.1اینصورت‌معادل‌-

Perceptron

Page 9: شبکه ها ی عصبی مصنوعی

9

می‌شود:توسط‌رابطه‌زیر‌مشخص‌‌‌پرسپترونخروجی

نشان‌داد:می‌توان‌به‌صورت‌زیر‌که‌برای‌سادگی‌آنرا‌

پرسپترون یکیادگیری

O(x1,x2,…,xn) = 1 if w0 + w1x1 + w2x2 + … + wnxn > 0-1 otherwise

O(X) = sgn(WX) where

Sgn(y) = 1 if y > 0-1 otherwise

عبارت‌است‌از:‌‌پرسپترونیادگیری‌Wپیدا‌کردن‌مقادیر‌درستی‌برای‌

عبارت‌است‌ازمجموعه‌‌پرسپترون‌‌در‌یادگیریHبنابراین‌فضای‌فرضیه‌.وزن‌بردارهایتمام‌مقادیر‌حقیقی‌ممکن‌برای‌

Page 10: شبکه ها ی عصبی مصنوعی

10

سطح‌تصمیم‌می‌توان‌به‌صورت‌یک‌‌را‌پرسپترونhyper planeدر‌فض1ای‌‌nپرسپترون‌در‌نظ1ر‌گ1رفت‌.‌ه1ا‌بع1دی‌نمونه

‌و‌ب1رای‌مق1ادیر‌1ی1ک‌ط1رف‌ص1فحه‌مق1دار‌‌ه1ای‌ب1رای‌نمونهآورد.می‌‌بوجود‌1طرف‌دیگر‌مقدار‌-

پرسپترون ییتوانا

++

+

--

-

Decision‌boundary‌)WX‌=‌0(

Page 11: شبکه ها ی عصبی مصنوعی

11

ب1ه‌را‌ی1اد‌بگ1یرد‌ک1ه‌یی‌ق1ادر‌اس1ت‌مثاله1ا‌‌پرس1پترون‌فق1طیکم1واردی‌جداپ1ذیرخطی‌ص1ورت‌ مثاله1ا‌ .اینگونه‌ باش1ند‌ ‌

ی1ک‌ توس1ط‌ کام1ل‌ بط1ور‌ ک1ه‌ قاب1ل‌hyper planeهس1تند‌ ‌باشند. میجداسازی‌

قادر به پرسپترون کهتوابعیباشد‌مییادگیری آنها

++

+

--

-

+

+

+-

-

-

Linearly‌separable Non-linearly‌separable

Page 12: شبکه ها ی عصبی مصنوعی

بسیاری‌از‌توابع‌بولی‌را‌نمایش‌دهد‌نظیر‌‌می‌تواند‌‌پرسپترونیکAND, OR, NAND, NOR‌

می‌تواند‌اما‌نXOR‌.را‌نمایش‌دهد

نشان‌داد.‌پرسپترونهاسطحی‌از‌ای‌دو‌با‌شبکهمی‌توان‌در‌واقع‌هر‌تابع‌بولی‌را‌‌

12

پرسپترون بولی وتوابع

AND:‌ x1

x2

X0=1

W0‌=‌-0.8

W1=0.5

W2=0.5Σ

Page 13: شبکه ها ی عصبی مصنوعی

ب1رای‌مثاله1ای‌‌پرس1پترون‌واح1د‌را‌ی1اد‌بگ1یریم‌ب1ه‌نح1وی‌ک1ه‌پرس1پترون‌‌وزنه1ای‌ی1کچگون1هآموزشی‌مقادیر‌صحیح‌را‌ایجاد‌نماید؟

:دو‌راه‌مختلف‌قاعده‌پرسپترون

دلتاقاعده‌

13

پرسپترونآموزش

Page 14: شبکه ها ی عصبی مصنوعی

‌پرسپترون‌یادگیریالگوریتم

می‌دهیم.مقادیری‌تصادفی‌به‌وزنها‌نسبت‌1.

.‌اگ1ر‌مث1ال‌غل1ط‌ارزی1ابی‌ش1ود‌می‌ک1نیمب1ه‌ت1ک‌ت1ک‌مثاله1ای‌آموزش1ی‌اعم1ال‌پرس1پترون‌را‌2.می‌کنیم.را‌تصحیح‌‌پرسپترون‌مقادیر‌وزنهای

می‌شوند:آیا‌تمامی‌مثالهای‌آموزشی‌درست‌ارزیابی‌3.

بله‌پایان‌الگوریتم‌

خیرمی‌گردیم‌بر2به‌مرحله‌

14

پرسپترونآموزش

Page 15: شبکه ها ی عصبی مصنوعی

ی5ک مث5ال آموزش5یبرای X = (x1, x2, …, xn) در ه5ر مرحل5ه وزنه5ا ب5ر اس5اس می کند:تغییر به صورت زیر پرسپترون قاعده

wi = wi + Δwi

که در آن

15

قاعده پرسپترون

Δwi‌=‌η‌)‌t‌–‌o‌(‌xi

t:‌target‌outputo:‌output‌generated‌by‌the‌perceptronη:‌constant‌called‌the‌learning‌rate‌)e.g.,‌0.1(

‌شده‌است‌که‌برای‌یک‌مجموعه‌مثال‌جداپذیر‌خطی‌این‌اثباتصحیح‌مثالها‌جداسازی‌قادر‌به‌‌پرسپترون‌‌شده‌وهمگراروش‌

خواهد‌شد.

Page 16: شبکه ها ی عصبی مصنوعی

‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌Delta Ruleدلتا‌‌قاعده

همگ1را‌نخواه1د‌ش1د.‌قاع1ده‌پرس1پترون‌‌جداپ1ذیر‌نباش1ندخطی‌ب1ه‌ص1ورت‌‌ک1ه‌مثاله1ا‌وق1تیمی‌شود.دلتا‌استفاده‌قاعده‌برای‌غلبه‌بر‌این‌مشکل‌از‌

این‌ اص1لی‌ از‌قاع1ده‌ای1ده‌ فض1ای‌Gradient descentاس1تفاده‌ در‌ جس1تجو‌ ب1رای‌ ‌

‌اس1ت‌‌Back propagationروش‌پای1هقاع1ده‌.‌این‌می‌باش1دفرض1یه‌وزنه1ای‌ممکن‌می‌رود.که‌برای‌آموزش‌شبکه‌با‌چندین‌نرون‌به‌هم‌متصل‌بکار‌

پ1ایه روش‌ این‌ فض1ای‌‌ای‌ب1رایهمچ1نین‌ بای1د‌ ک1ه‌ اس1ت‌ ی1ادگیری‌ الگوریتمه1ای‌ ان1واع‌ ‌مختلف‌پیوسته‌را‌جستجو‌کنند.‌های‌فرضیه‌ای‌شامل‌فرضیه

16

Page 17: شبکه ها ی عصبی مصنوعی

‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌Delta Ruleدلتا‌‌قاعده

فاق1د‌ح1د‌‌پرس1پترون‌‌درک‌به1تر‌این‌روش‌آن1را‌ب1ه‌ی1کبرای.‌یعنی‌داریم:می‌کنیمآستانه‌اعمال‌

ش1ود.‌ی1ه‌ارا‌ی‌آم1وزشخط1اابت1دا‌الزم‌اس1ت‌تع1ریفی‌ب1رای‌یک‌تعریف‌متداول‌این‌چنین‌است:

D = Training Set

که‌این‌مجموع‌برای‌تمام‌مثالهای‌آموزشی‌انجام‌می‌شود.

xwxO

.)(

Dd

dd otwE 221 )()(

17

Page 18: شبکه ها ی عصبی مصنوعی

‌‌Gradient descentالگوریتم

توج1ه‌ب1ه‌نح1وه‌تعری1ف‌با‌Eس1طح‌خط1ا‌ب1ه‌ص1ورت‌ی1ک‌‌وزنه1ا ب1دنبال‌ م1ا‌ ب1ود.‌ خواه1د‌ ک1ه‌یی‌س1همی‌ هس1تیم‌

.الگوریتم‌ باشند‌ داشته‌ را‌ خطا‌ Gradientحداقل‌descentب1رداری‌‌ ب1دنبال‌ ک1ه‌می‌گ1ردد‌‌در‌فض1ای‌وزنه1ا‌

خط1ا‌را‌ح1داقل‌کن1د.‌این‌الگ1وریتم‌از‌ی1ک‌مق1دار‌دلخ1واه‌ب1رای‌ب1ردار‌وزن‌ش1روع‌ک1رده‌و‌در‌ه1ر‌مرحل1ه‌وزنه1ا‌را‌

تغی1یر‌ کاهش1ی‌می‌ده1د‌ط1وری‌ ش1یب‌ جهت‌ در‌ ک1ه‌منحنی‌فوق‌خطا‌کاهش‌داده‌شود.

18

w1

w2

E(W)

Page 19: شبکه ها ی عصبی مصنوعی

‌Gradient descentقاعده‌‌آوردن‌بدست

اصلی:‌گرادیان‌همواره‌در‌جهت‌افزایش‌شیب‌ایده‌E‌می‌کند.عمل‌

گرادیان‌Eنسبت‌به‌بردار‌وزن‌‌wتعریف‌به‌صورت‌زیر‌‌می‌شود:

نسبت‌یی‌که‌در‌آن‌‌‌‌‌‌‌‌‌‌‌‌‌یک‌بردار‌و‌‌‌‌‌‌‌‌مشتق‌جزمی‌باشد.به‌هر‌وزن‌

iw

E

)(wE

19

nw

E

w

E

w

EwE ,...,,)(

10

Page 20: شبکه ها ی عصبی مصنوعی

‌Delta Ruleدلتا‌‌قاعده

یک‌مثال‌آموزشیبرای‌X = (x1, x2, …, xn)به‌دلتا‌قاعده‌‌‌در‌هر‌مرحله‌وزنها‌بر‌اساس‌

می‌کند:تغییر‌صورت‌زیر‌

η: learning rate (e.g., 0.1)

عالمت‌منفی‌نشاندهنده‌حرکت‌در‌جهت‌کاهش‌شیب‌است.

20

Page 21: شبکه ها ی عصبی مصنوعی

‌گرادیانمحاسبه

بس1ادگی‌می‌ت1وان‌از‌رابط1ه‌خط1ا‌یی‌ج1ز‌گیری‌‌مش1تقباگرادیان‌را‌محاسبه‌نمود:

.لذا‌وزنها‌طبق‌رابطه‌زیر‌تغییر‌خواهند‌نمود

Ddiddd

i

xotw

E))((

Dd

idddi xOtw )(

21

Page 22: شبکه ها ی عصبی مصنوعی

دلتاقاعده‌‌یادگیری‌خالصه

به‌صورت‌زیر‌دلتا‌قاعده‌‌یادگیری‌با‌استفاده‌از‌الگوریتممی‌باشد.

به‌وزنها‌مقدار‌تصادفی‌کوچک‌نسبت‌دهید.1.

‌مراحل‌(خطا‌شدن‌کوچکتا‌رسیدن‌به‌شرایط‌توقف‌)2.:زیر‌را‌ادامه‌دهید

هر‌وزن‌‌Δwiدهی‌اولیه‌کنیدمقداررا‌با‌مقدار‌صفر‌.

هاهمه‌نمونهبرای‌‌‌(xi, t‌)در‌مجموعه‌آموزشی‌وزن‌‌Δwiرا‌به‌:صورت‌زیر‌تغییر‌دهید

برای‌هر‌wiتغییر‌دهیدبه‌صورت‌زیر‌‌آنرا‌:wi = wi + Δwi

iii xotww )(

22

Page 23: شبکه ها ی عصبی مصنوعی

‌‌Gradient descentروش‌مشکالت

‌الزم‌داشته‌باشد.زیادی‌زمان‌شدن‌به‌یک‌مقدار‌مینیمم‌همگرا‌است‌ممکن1.

‌وج1ود‌داش1ته‌باش1د‌تض1مینی‌وج1ود‌ن1دارد‌ک1ه‌محلی‌می1نیمماگ1ر‌در‌س1طح‌خط1ا‌چن1دین‌2.الگوریتم‌مینیمم‌مطلق‌را‌پیدا‌کند.

در‌ضمن‌این‌روش‌وقتی‌قابل‌استفاده‌است‌که:

باشد.پارامتریک‌پیوسته‌های‌فرضیه‌فضای‌فرضیه‌دارای‌‌

باشد.‌‌گیریقابل‌مشتقرابطه‌خطا‌

23

Page 24: شبکه ها ی عصبی مصنوعی

‌‌Gradient descentافزایشی‌تقریب

مش1اهده‌ازای‌ه1ر‌مث1ال‌مثاله1ا،‌آنه1ا‌را‌ب1ه‌پس‌از‌مش1اهده‌هم1هبج1ای‌تغی1یر‌وزنه1ا‌‌می‌ت1وان‌

وزنه1ا‌ ح1الت‌ این‌ در‌ داد.‌ تغی1یر‌ تغی1یر‌‌(Incremental)ب1ه‌ص1ورت‌افزایش1ی‌ش1ده‌

می‌نامند.‌نیز‌Stochastic gradient descent.‌این‌روش‌رامی‌کنند

وزنه1ا‌ افزایش1ی‌ تغی1یر‌ بعض1ی‌م1وارد‌ ب1روز‌می‌توان1د‌در‌ کن1د.‌جلوگ1یری‌می1نیمم‌محلیاز‌ ‌

‌بزرگ1تری‌stepط1ول‌می‌توان1د‌روش‌اس1تاندارد‌نی1از‌ب1ه‌محاس1بات‌بیش1تری‌دارد‌درع1وض‌هم‌داشته‌باشد.

24

ii xotw )(

Page 25: شبکه ها ی عصبی مصنوعی

چند‌الیه‌‌هایشبکه

25

الیه های شبکهپرسپترونها خالف بر برای می‌توانند چندمسا مسا غیرخطییل یادگیری همچنین با یلی و

.گیری‌های تصمیم روند بکار متعدد

Input‌nodes

Internal‌nodes

Output‌nodes

Page 26: شبکه ها ی عصبی مصنوعی

مثال

26

x1

x2

Page 27: شبکه ها ی عصبی مصنوعی

‌سلول‌واحدیک

27

تصمیم برای فضای بتوانیم صورت را گیری اینکه بهتا غیرخطی است الزم بکنیم، جدا هم سلول از واحد هر

یک را صورت نما غیرخطیتابع به از. ییمتعریف مثالیسلولی واحد می‌تواند چنین باشد: ییدسیگمویک

Page 28: شبکه ها ی عصبی مصنوعی

یید‌سیگموتابع

28

سیگمو σ تابع نامیده یید تابع لجستیک این. شود مییا: است زیر خاصیت دارای تابع

را خروجی واحد سلول می این زیر صورت بیان توان بهنمود:

Page 29: شبکه ها ی عصبی مصنوعی

‌‌Back propagationالگوریتم

وزنبرای یادگیری‌ شبکه‌‌های‌‌ الیهیک‌ روش‌چند‌ از‌ ‌Back Propagationدر‌این‌روش‌ب1ا‌اس1تفاده‌از‌‌می‌ش1ود‌اس1تفاده‌‌.

Gradient descentبین‌می‌ش11ود‌س11عی‌ خط11ای‌ مرب11ع‌ ت11ا‌شبکه‌و‌تابع‌هدف‌مینیمم‌شود.‌های‌خروجی

می‌شودتعریف‌به‌صورت‌زیر‌خطا‌:

29

Dd outputsk

kdkd otwE2

2

1)(

‌و‌‌الی1ه‌خ1روجیهای‌ مجموع1ه‌واح1د‌‌خروجیه1ای‌‌outputsازمرادtkdو‌okdمق1دار‌ه1دف‌و‌خ1روجی‌متن1اظر‌ب1ا‌‌kامین‌واح1د‌خ1روجی‌و‌‌

‌است.dمثال‌آموزشی‌

Page 30: شبکه ها ی عصبی مصنوعی

‌‌Back propagationالگوریتم

هم1ه‌‌ب1زرگی‌ک1ه‌توس1ط‌فض1ای‌فرض1یه‌م1ورد‌جس1تجو‌در‌این‌روش‌عب1ارت‌اس1ت‌از‌فض1ایت1ا‌ب1ا‌می‌کن1د‌‌س1عی‌Gradient descent.‌روش‌می‌ش1ود‌تعری1ف‌مق1ادیر‌ممکن‌ب1رای‌وزنه1ا

ام1ا‌ کن1د.‌ پی1دا‌ مناس1بی‌دس1ت‌ فرض1یه‌ ب1ه‌ ک1ردن‌خط1ا‌ این‌تض1مینیمی1نیمم‌ اینک1ه‌ ب1رای‌ ‌‌برسد‌وجود‌ندارد.مینیمم‌مطلقالگوریتم‌به‌

30

Page 31: شبکه ها ی عصبی مصنوعی

‌‌BPالگوریتم

‌گ1ره‌در‌الی1ه‌خ1روجی‌ایج1اد‌‌noutگ1ره‌مخفی،‌و‌nhiddenگ1ره‌در‌الی1ه‌ورودی،‌‌‌‌ninای‌ب1اشبکه1.کنید.

همه‌وزنها‌را‌با‌یک‌مقدار‌تصادفی‌کوچک‌مقداردهی‌کنید.2.

تا‌رسیدن‌به‌شرط‌پایانی(‌کوچک‌شدن‌خطا)‌مراحل‌زیر‌را‌انجام‌دهید:3.

.aبرای‌هر‌‌X:متعلق‌به‌مثالهای‌آموزشی

.bمثال‌Xدر‌شبکه‌انتشار‌دهید.سمت‌جلو‌را‌به‌‌

.cخطای‌Eدر‌شبکه‌انتشار‌دهید.سمت‌عقب‌را‌به‌‌

31 آموزش1ی‌هر مث1ال‌ ارا(x,t)زوج‌ب1ه‌ص1ورت‌ی1ک‌‌ ب1ردارش1ود‌ ی1ه‌می‌ مق1ادیر‌‌xک1ه‌ ‌کنند. می‌مقادیر‌هدف‌برای‌خروجی‌شبکه‌را‌تعیین‌tورودی‌و‌بردار‌

Page 32: شبکه ها ی عصبی مصنوعی

‌به‌سمت‌جلوانتشار

هر‌مثال‌برای‌Xبرسید.خروجی‌های‌‌مقدار‌خروجی‌هر‌واحد‌را‌محاسبه‌کنید‌تا‌به‌گره‌

32

Input nodes

Internal nodes

Output nodes

Example X

Compute sigmoid function

Page 33: شبکه ها ی عصبی مصنوعی

‌به‌سمت‌عقبانتشار

– δk = ok (1-ok)(tkمحاسبه‌کنید:‌به‌صورت‌زیر‌‌را‌خطا‌جمله‌هر‌واحد‌خروجی‌برای1.ok)

δh = oh (1-oh) Σk wkhمحاسبه‌کنید:‌به‌صورت‌زیر‌‌را‌خطا‌جمله‌واحد‌مخفی‌هربرای‌2.δk

تغییر‌دهید:به‌صورت‌زیر‌‌را‌وزنمقدارهر‌3.

wji = wji + Δwji‌

که‌در‌آن‌:

Δwji = η δj xji

33 η = یادگیری واحد xji = نرخ واحد j = wjiبه iورودی jبه iوزن

Stochastic gradient descent .نسخه

Page 34: شبکه ها ی عصبی مصنوعی

‌خاتمهشرط

آموزش1ی‌تک1رار‌‌ه1ای‌‌پیش‌از‌خاتم1ه‌ه1زاران‌ب1ار‌ب1ا‌اس1تفاده‌هم1ان‌داده‌BPالگ1وریتم‌معم1والبرای‌خاتمه‌الگوریتم‌بکار‌برد:می‌توان‌شروط‌مختلفی‌را‌می‌گردد‌

تکرار‌به‌دفعات‌معینتوقف‌بعد‌از‌.شده‌کمتر‌شود.مقدار‌تعییناز‌یک‌خطا‌توقف‌وقتی‌که‌‌پیروی‌نماید.قاعده‌خاصیاز‌یید‌توقف‌وقتی‌که‌خطا‌در‌مثالهای‌مجموعه‌تا‌باش1د‌خط1ا‌خ1واهیم‌داش1ت‌و‌اگ1ر‌زی1اد‌باش1د‌مس1اله‌تک1رار‌کماگ1ر‌دفع1ات‌‌Over fittingرخ‌‌

خواهد‌داد.

34

Page 35: شبکه ها ی عصبی مصنوعی

‌‌BPالگوریتم‌مرور

الگوریتم‌یک‌جستجوی‌این‌Gradient descentمی‌دهد.‌در‌فضای‌وزنها‌انجام‌گیر‌بیافتد.مینیمم‌محلیممکن‌است‌در‌یک‌‌بسیار‌موثر‌بوده‌است.عملدر‌‌

برای‌پرهیز‌از‌مینیمم‌محلی‌روشهای‌مختلفی‌وجود‌دارد:ممنتمافزودن‌.

.استفاده‌از‌Stochastic gradient descent

اولیه‌وزنهای‌برای‌متفاوتی‌با‌مقادیر‌مختلف‌‌هایازشبکهاستفاده‌.

35

Page 36: شبکه ها ی عصبی مصنوعی

‌ممنتمافزودن

تغی1یر‌وزنه1ا‌را‌ط1وری‌در‌نظ1ر‌گ1رفت‌ک1ه‌تغی1یر‌وزن‌در‌تک1رار‌‌قاع1ده‌می‌ت1وانnام‌ت1ا‌‌‌داشته‌باشد.تغییر‌وزن‌در‌تکرار‌قبلی‌بستگیحدی‌به‌اندازه‌

Δwji (n) = η δj xji + αΔwji (n-1)

می‌باشد.‌‌‌α <= 1>=‌0به‌صورت‌‌αکه‌در‌آن‌مقدارممنتم‌

تا‌با‌حرکت‌در‌مسیر‌قبلی‌در‌سطح‌خطا:می‌شود‌افزودن‌ممنتم‌باعث‌

شود.مینیم‌محلی‌پرهیزاز‌گیر‌افتادن‌در‌‌

شود.سطوح‌صاف‌پرهیزاز‌قرارگرفتن‌در‌‌

‌،یابد.سرعت‌جستجو‌افزایشبا‌افزایش‌تدریجی‌مقدار‌پله‌تغییرات‌

36

وزن قاعده تغییر ممنتم عبارت

Page 37: شبکه ها ی عصبی مصنوعی

‌نمایش‌توابعقدرت

ق1درت‌نم1ایش‌تواب1ع‌توس1ط‌ی1ک‌ش1بکه‌گرچ1ه‌feedforwardبس1ته‌ب1ه‌عم1ق‌و‌‌ز1ی1ر‌1ر1ا‌ ب1ا‌1ا1ین‌1وج1ود‌1م1وا1رد‌ دا1ر1د،‌ ب1ه1‌1ص1ور1ت‌1م1ی‌1ت1وا1ن‌گس1تر1دگ1ی‌1ش1ب1ک1ه‌

قوانین‌کلی‌بیان‌نمود:س1ازی‌‌پیادهدو‌الی1هتوس1ط‌ی1ک‌ش1بکه‌می‌ت1وان‌:‌ه1ر‌ت1ابع‌ب1ولی‌را‌تواب1ع‌ب1ولی‌

.نموددو‌الی1هتوس1ط‌ی1ک‌ش1بکه‌می‌ت1وان‌:‌ه1ر‌ت1ابع‌پیوس1ته‌مح1دود‌را‌تواب1ع‌پیوس1ته‌

در‌ی1ید‌س1یگموک1ه‌ا1ز‌1ت1ابع‌‌ه1ایی‌1ت1ق1ر1یب‌ز1د.‌ت1ئ1وری‌1م1ربوط1ه‌در1‌1م1ورد‌ش1بک1هیه‌پ1ن1هان ص1ادق‌1است.می‌کن1ن1د‌‌اس1ت1فا1ده‌1الیه‌خ1ط1ی‌در‌ش1بک1ه‌1خ1روج1ی‌1و‌1ال1

:ت1ا‌ح1د‌قاب1ل‌س1ه‌الی1هب1ا‌ی1ک‌ش1بکه‌می‌ت1وان‌‌ه1ر‌ت1ابع‌دلخ1واه‌را‌تواب1ع‌دلخ1واه‌قبولی‌تفریب‌زد.

37 بای1د‌درنظ1ر‌داش1ت‌ک1ه‌فض1ای‌فرض1یه‌جس1تجو‌ش1ده‌توس1ط‌با این‌وج1ود‌ ‌‌ممکن‌اس1ت‌در‌برگیرن1ده‌تم1ام‌مق1ادیر‌ممکن‌وزنه1ا‌Gradient descentروش‌نباشد.

Page 38: شبکه ها ی عصبی مصنوعی

‌فرضیه‌و‌بایاس‌استقرافضای

فض1ای‌می‌ت1وان‌ب1ه‌ص1ورت‌ی1ک‌‌م1ورد‌جس1تجو‌را‌‌فرض1یهفض1ایاقلیدس11ی‌ بع11دیnفرض11یه‌ نظ11ر‌‌ در‌ ش11بکه‌ وزنه11ای‌ از‌ ‌

‌‌تعداد‌وزنهاست)nگرفت.‌(کهاین‌فض1ای‌فرض1یه‌ب1ر‌خالف‌فض1ای‌فرض1یه‌درخت‌تص1میم‌ی1ک‌

‌است.پیوستهفضای‌بیان‌کرد:می‌توان‌به‌صورت‌زیر‌بایاس‌استقرا‌این‌روش‌را‌

“smooth interpolation between data points”

نق1اط‌درونی1ابی‌ش1ده‌بین‌دو‌نقط1ه‌‌BPبه‌این‌معن1ا‌ک1ه‌الگ1وریتم‌.‌ب1ه‌عب1ارت‌دان1د‌ب1ا‌کالس‌معین‌را‌ب1ه‌هم1ان‌کالس‌متعل1ق‌می

‌هس1تند‌در‌نزدیک1تر‌را‌ک1ه‌ب1ه‌هم‌نق1اطیت1ا‌می‌کن1د‌دیگ1ر‌س1عی‌.‌‌قرار‌دهد‌بندیدستهیک‌

38

Page 39: شبکه ها ی عصبی مصنوعی

مثال

39

x1

x2

Smooth regions

Page 40: شبکه ها ی عصبی مصنوعی

‌نمایش‌الیه‌پنهانقدرت

از‌خواص‌یکی‌BPاز‌ویژگیهای‌نا‌آشکاریپنهان‌شبکه‌‌های‌در‌الیهمی‌تواند‌‌این‌است‌که‌‌‌نشان‌دهد.ورودیداده‌

40

ورودی خروجی

‌زی1ر‌ط1وری‌‌8x3x8مث1ال‌ش1بکه‌برایک1ه‌مق1دار‌ه1ر‌ش1ود‌ میآم1وزش‌داده‌

خ1روجی‌ در‌ عین1ا‌ را‌ ورودی‌ مث1ال‌(ت11ابع‌ آورد‌ ی11اد‌f(x)=xبوج11ود‌ را‌ ‌

ش1بکه‌ این‌ خ1اص‌ بگ1یرد).س1اختار‌واح1دش1ود‌ میب1اعث‌ الی1ه‌های‌ ت1ا‌‌را‌مق1ادیر‌ورودیه1ای‌ ‌ویژگیوس1ط

نح1وی‌ الی1ه‌کدبن1دیب1ه‌ ک1ه‌ کنن1د‌ ‌‌نم1ایش‌بتوان1د‌از‌آن1ان‌ب1رای‌خ1روحی

استفاده‌نماید.ها‌ ‌دادهمجدد

Page 41: شبکه ها ی عصبی مصنوعی

‌نمایش‌الیه‌پنهانقدرت

41

تع1داد‌در ب1ه‌ ک1ه‌ آزم1ایش‌ این‌ از‌‌5000 تک1رار‌ش1ده‌ ب1ار‌ داده‌‌8 ‌از‌ ب1ا‌اس1تفاده‌ ب1ه‌عن1وان‌ورودی‌اس1تفاده‌ش1ده‌و‌ش1بکه‌ مختل1ف‌

‌موفق‌شده‌تا‌تابع‌هدف‌را‌بیاموزد.BPالگوریتم‌

واح1دبا خ1روجی‌ مش1اهده‌ مش1خص‌های‌ ‌ می1انی‌ ک1ه‌ش1ود‌ میالی1ه‌‌ه1ای‌ورودی‌ب1وده‌اس1ت‌‌دادهانک1دینگ‌اس1تانداردب1ردار‌حاص1ل‌مع1ادل‌

(111‌،‌...‌،001‌،‌000)

Page 42: شبکه ها ی عصبی مصنوعی

‌نمودارخطا

42

Error

iterations

Different units

iterations

Different weights

weight

Page 43: شبکه ها ی عصبی مصنوعی

‌‌‌Over fittingتعمیم‌وقدرت

43Number of weight updates

Err

or Validation set error

Training set error

الگوریتم شرط چیست؟ BPپایان ادامه آنقدر را الگوریتم که است این انتخاب یک

. امر این شود کمتر معینی مقدار از خطا تا دهیمبه تواند می .Over fittingمنجر شود

Page 44: شبکه ها ی عصبی مصنوعی

‌‌Over fittingرخ‌دادن‌دالیل

‌Over fittingاس1ت‌ک1ه‌ممکن‌ن1ادری‌مثاله1ایناش1ی‌از‌تنظیم‌وزنه1ا‌ب1رای‌در‌نظ1ر‌گ1رفتن‌‌‌‌ی1ک‌ش1بکه‌عص1بی‌تع1داد‌زی1اد‌وزنه1ای‌باش1ند.‌مط1ابقت‌نداش1ته‌ه1ا‌توزی1ع‌کلی‌دادهاس1ت‌ب1ا‌

‌با‌این‌مثالها‌داشته‌باشد.انطباقزیادی‌برای‌‌آزادی‌تا‌شبکه‌درجهمی‌شود‌باعث‌

پیچی1دگی‌فض1ای‌فرض1یه‌ی1اد‌گرفت1ه‌ش1ده‌توس1ط‌الگ1وریتم‌بیش1تر‌و‌تک1رار‌تع1داد‌اف1زایشبا‌‌،بتوان1د‌می‌ش1ود‌بیش1تر‌ ش1بکه‌ مثاله1ای‌ن1ویزت1ا‌ و‌ را‌ن1ادر‌ آم1وزش‌ مجموع1ه‌ در‌ موج1ود‌ ‌

بدرستی‌ارزیابی‌نماید.

44

Page 45: شبکه ها ی عصبی مصنوعی

‌حلراه

45

از‌ی1ک‌اس1تفاده تا‌ ی1ادگیری‌و‌‌Validationیی1دمجموع1ه‌ ‌توق1ف‌ک1ه‌ ک1افی‌خط1اهنگ1امی‌ ان1دازه‌ ب1ه‌ مجموع1ه‌ این‌ در‌ ‌کوچ1ک‌

شود. میی1ک‌راه‌‌تربای1اس‌ک1ردن‌ش1بکه‌ب1رای‌فض1اهای‌فرض1یه‌س1اده‌:

از‌توان1د‌ می مق1دار‌weight decayاس1تفاده‌ آن‌ در‌ ک1ه‌ باش1د‌ ‌خیلی‌وزنه1ا‌ ان1دازه‌ ب1ه‌ تک1رار‌ ب1ار‌ ه1ر‌ ک1اهشدر‌ ‌داده‌کمی‌

شود. میk-fold cross validationمثاله1ای‌آموزش1ی‌کم‌وق1تی‌ک1ه‌تع1داد‌‌

‌دس1ته‌تقس1یم‌بن1دی‌‌kداده‌آموزش1ی‌را‌ب1ه‌mت1وان‌ میباش1د‌‌دفع1ه‌تک1رار‌نم1ود.‌در‌ه1ر‌دفع1ه‌kنم1وده‌و‌آزم1ایش‌را‌ب1ه‌تع1داد‌

دس1تهیکی از‌ مجموع1ه‌ها‌ ‌ بعن1وان‌بقی1هو‌تس1ت‌بعن1وان‌ ‌آموزش1ی‌مجموع1ه تص1میم‌ ش1د.‌ خواهن1د‌ ب1ر‌گیری‌ اس1تفاده‌

شود. می‌نتایج‌انجام‌میانگیناساس‌

Page 46: شبکه ها ی عصبی مصنوعی

‌دیگرروشهای

‌وجود‌دارد‌از‌جمله:جدید‌های‌شبکهبسیار‌متنوعی‌برای‌ایجاد‌‌‌هایراهخطا‌برای‌تابع‌دیگری‌تعاریفاستفاده‌از‌یادگیریحین‌در‌خطا‌کاهش‌برای‌دیگریاستفاده‌از‌روشهای‌‌

Hybrid Global Learning

Simulated Annealing

Genetic Algorithms

در‌واحدهادیگری‌توابعاستفاده‌از‌‌Radial Basis Functions

شبکهدیگری‌برای‌‌‌هایساختاراستفاده‌از‌Recurrent Network

46