Download
computer modeling and simulation n.
Skip this Video
Loading SlideShow in 5 Seconds..
Computer Modeling  And  Simulation PowerPoint Presentation
Download Presentation
Computer Modeling  And  Simulation

Computer Modeling  And  Simulation

234 Views Download Presentation
Download Presentation

Computer Modeling  And  Simulation

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Computer Modeling And Simulation F.Ramezani Department of Computer Engineering Islamic Azad University SARI Branch Introduction toComputer Modeling AndSimulation

  2. مقدمه • شبکهعصبیمصنوعیروشیعملیبراییادگیریتوابعگوناگوننظیرتوابعبامقادیرحقیقی،توابعبامقادیرگسستهوتوابعبامقادیربرداریمیباشد. • یادگیریشبکهعصبیدربرابرخطاهایدادههایآموزشیمصونبودهواینگونهشبکههاباموفقیتبهمسائلینظیر، تصمیم گیری، شناسائیگفتار،شناسائیوتعبیرتصاویر،ویادگیریرباتاعمالشدهاست. Neural Network

  3. شبکهعصبیچیست؟ • روشیبرایمحاسبهاستکهبرپایهاتصالبههمپیوستهچندینواحدپردازشیساختهمیشود. • شبکهازتعداددلخواهیسلولیاگرهیاواحدیانرونتشکیلمیشودکهمجموعهورودیرابهخروجیربطمیدهند. Neural Network

  4. شبکهعصبیچهقابلیتهائیدارد؟ • تصمیم گیری • محاسبهیکتابعمعلوم • تقریبیکتابعناشناخته • شناسائیالگو • پردازشسیگنال • یادگیری Neural Network

  5. مسائلمناسببراییادگیریشبکههایعصبیمسائلمناسببراییادگیریشبکههایعصبی • خطا در داده های آموزشی وجود داشته باشد. مثلمسائلی که داده های آموزشی دارای نویز حاصل از دادهای سنسورها نظیر دوربین و میکروفن ها هستند. • مواردی که نمونه ها توسط مقادیر زیادی زوج ویژگی-مقدار نشان داده شده باشند. نظیر داده های حاصل از یک دوربین ویدئوئی. • تابع هدف دارای مقادیر پیوسته باشد. • زمان کافی برای یادگیری وجود داشته باشد. این روش در مقایسه با روشهای دیگر نظیر درخت تصمیم نیاز به زمان بیشتری برای یادگیری دارد. • نیازیبهتعبیرتابعهدفنباشد. زیرابهسختیمیتواناوزانیادگرفتهشدهتوسطشبکهراتعبیرنمود. Neural Network

  6. الهامازطبیعت • مطالعهشبکههایعصبیمصنوعیتاحدزیادیملهمازسیستمهاییادگیرطبیعیاستکهدرآنهایکمجموعهپیچیدهازنرونهایبههممتصلدرکاریادگیریدخیلهستند. • گمانمیرودکهمغزانسانازتعداد 10 11نرونتشکیلشدهباشدکههرنرونباتقریبا 104نروندیگردرارتباطاست. • سرعتسوئیچنگنرونهادرحدود 10-3ثانیهاستکهدرمقایسهباکامپیوترها 10 -10 ) ثانیه ( بسیارناچیزمینماید. بااینوجودآدمیقادراستدر 0.1 ثانیهتصویریکانسانرابازشناسائینماید. اینقدرتفوقالعادهبایدازپردازشموازیتوزیعشدهدرتعدادیزیادیازنرونهاحاصلشدهباشد. Neural Network

  7. Biological Neural System • A human brain consists of about 1011 computing elements called neurons. They communicate through synaptic connections. Each neuron has about 10,000 synapses. Neural Network

  8. Perceptron • نوعیازشبکهعصبیبرمبناییکواحدمحاسباتیبهنام پرسپترونساختهمیشود. یک پرسپترونبرداریازورودیهایبامقادیرحقیقیراگرفتهویکترکیبخطیازاینورودیهارامحاسبهمیکند. اگرحاصلازیکمقدارآستانهبیشتربودخروجی پرسپترونبرابربا 1 ودرغیراینصورتمعادل -1 خواهدبود. x1 w1 x2 w2 {1 or –1} Σ w0 wn xn X0=1 Neural Network

  9. A simple neural model as a multi input (dendrites) and single-output (axon) processor Components: 1) Dendrites 2) Synapse 3) Soma 4)Axon Neural Network

  10. Simple model of a neuron showing (a) synaptic and (b) somatic operations Neural Network

  11. Neural Networks Notations Neural Network

  12. Neuron Model Neural Network

  13. یادگیرییک پرسپترون • خروحی پرسپترونتوسطرابطهزیرمشخصمیشود: • کهبرایسادگیآنرامیتوانبصورتزیرنشانداد: 1 if w0 + w1x1 + w2x2 + … + wnxn > 0 -1 otherwise O(x1,x2,…,xn) = O(X) = sgn(WX) where Sgn(y) = 1 if y > 0 -1 otherwise یادگیری پرسپترونعبارتاستاز: پیداکردنمقادیردرستیبرای W بنابراینفضایفرضیه H دریادگیری پرسپترونعبارتاستازمجموعهتماممقادیرحقیقیممکنبرایبردارهایوزن. Neural Network

  14. توانائیپرسپترون • پریسپترونرامیتوانبصورتیکسطحتصمیمhyperplaneدرفضای n بعدینمونههادرنظرگرفت. پرسپترونبراینمونههاییکطرفصفحهمقدار 1 وبرایمقادیرطرفدیگرمقدار -1 بوجودمیاورد. Decision boundary (WX = 0) + + + - - - Neural Network

  15. توابعیکه پرسپترونقادربهیادگیریآنهامیباشد • یک پرسپترونفقطقادراستمثالهائیرایادبگیردکهبصورتخطیجداپذیرباشند. اینگونهمثالهامواردیهستندکهبطورکاملتوسطیکhyperplaneقابلجداسازیمیباشند. + + + + + - - + - - - - Linearly separable Non-linearly separable Neural Network

  16. توابعبولیو پرسپترون • یک پرسپترونمیتواندبسیاریازتوابعبولیرانمایشدهدنظیر AND, OR, NAND, NOR • امانمیتواند XORرانمایشدهد. • درواقعهرتابعبولیرامیتوانباشبکهایدوسطحیاز پرسپترونهانشانداد. x1 AND: W1=0.5 Σ W2=0.5 W0 = -0.8 x2 X0=1 Neural Network

  17. اضافه کردن بایاس • افزودن بایاس موجب میشود تا استفاده از شبکه پرسپترون با سهولت بیشتری انجام شود. • برای اینکه برای یادگیری بایاس نیازی به استفاده از قانون دیگری نداشته باشیم بایاس را بصورت یک ورودی با مقدار ثابت 1 در نظر گرفته و وزن W0 را به آن اختصاص میدهیم. Neural Network

  18. Neuron Model Neural Network

  19. آموزش پرسپترون • چگونهوزنهاییک پرسپترونواحدرایادبگیریمبهنحویکه پرسپترونبرایمثالهایآموزشیمقادیرصحیحراایجادنماید؟ • دوراهمختلف : • قانون پرسپترون • قانوندلتا Neural Network

  20. آموزش پرسپترون الگوریتمیادگیری پرسپترون • مقادیریتصادفیبهوزنهانسبتمیدهیم • پریسپترونرابهتکتکمثالهایآموزشیاعمالمیکنیم. اگرمثالغلطارزیابیشودمقادیروزنهای پرسپترونراتصحیحمیکنیم. • آیاتمامیمثالهایآموزشیدرستارزیابیمیشوند: • بله پایانالگوریتم • خیربهمرحله 2 برمیگردیم Neural Network

  21. Neural Networks Architecture Neural Network

  22. قانون پرسپترون • براییکمثالآموزشیX = (x1, x2, …, xn)درهرمرحلهوزنهابراساسقانونپرسپترونبصورتزیرتغییرمیکند: wi = wi + Δwi کهدرآن Δwi = η ( t – o ) xi t: target output o: output generated by the perceptron η: constant called the learning rate (e.g., 0..1) اثباتشدهاستکهبراییکمجموعهمثالجداپذیرخطیاینروشهمگراشدهو پرسپترونقادربهجداسازیصحیحمثالهاخواهدشد. Neural Network

  23. قانوندلتا Delta Rule • وقتیکهمثالهابصورتخطیجداپذیرنباشندقانون پرسپترونهمگرانخواهدشد. برایغلبهبراینمشکلازقانوندلتااستفادهمیشود. • ایدهاصلیاینقانوناستفادهاز gradient descent برایجستجودرفضایفرضیهوزنهایممکنمیباشد. اینقانونپایهروش Backpropagation استکهبرایآموزششبکهباچندیننرونبههممتصلبکارمیرود. • همچنیناینروشپایهایبرایانواعالگوریتمهاییادگیریاستکهبایدفضایفرضیهایشاملفرضیههایمختلفپیوستهراجستجوکنند. Neural Network

  24. قانوندلتا Delta Rule • برایدرکبهتراینروشآنرابهیک پرسپترونفاقدحدآستانهاعمالمیکنیم. درانجالازماستابتداتعریفیبرایخطایآموزشارائهشود. یکتعریفمتداولاینچنیناست: E = ½ Σi (ti – oi) 2 • کهاینمجموعبرایتماممثالهایآموزشیانجاممیشود. Neural Network

  25. الگوریتم gradient descent • باتوجهبهنحوهتعریف E سطحخطابصورتیکسهمیخواهدبود. مابدنبالوزنهائیهستیمکهحداقلخطاراداشتهباشند . الگوریتم gradient descent درفضایوزنهابدنبالبرداریمیگرددکهخطاراحداقلکند. اینالگوریتمازیکمقداردلبخواهبرایبرداروزنشروعکردهودرهرمرحلهوزنهاراطوریتغییرمیدهدکهدرجهتشیبکاهشیمنحنیفوقخطاکاهشدادهشود. E(W) w1 w2 Neural Network

  26. بدستآوردنقانون gradient descent • ایدهاصلی: گرادیانهموارهدرجهتافزایششیب E عملمیکند. • گرادیان E نسبتبهبرداروزن w بصورتزیرتعریفمیشود: E (W) = [ E’/w0, E’/w1, …, E’/wn] • کهدرآن E (W) یکبردارو E’مشتقجزئینسبتبههروزنمیباشد. Δ Δ Neural Network

  27. قانوندلتا Delta Rule • براییکمثالآموزشیX = (x1, x2, …, xn)درهرمرحلهوزنهابراساسقانوندلتابصورتزیرتغییرمیکند: wi = wi + Δwi Where Δwi = -η E’(W)/wi η: learning rate (e.g., 0.1) علامتمنفینشاندهندهحرکتدرجهتافزایش شیباست. Neural Network

  28. محاسبهگرادیان • بامشتقگیریجزئیازرابطهخطامیتوانبسادگیگرادیانرامحاسبهنمود: E’(W)/ wi = Σi (ti – Oi) (-xi) • لذاوزنهاطبقرابطهزیرتغییرخواهندنمود. Δwi = η Σi (ti – oi) xi Neural Network

  29. خلاصهیادگیریقانوندلتا الگوریتمیادگیریبااستفادهازقانوندلتابصورتزیرمیباشد. • بهوزنهامقدارتصادفینسبتدهید • تارسیدنبهشرایطتوقفمراحلزیرراادامهدهید • هروزنwiرابامقدارصفرعدددهیاولیهکنید. • برایهرمثال: وزنwiرابصورتزیرتغییردهید: wi = wi + η (t – o) xi مقدارwiرابصورتزیرتغییردهید: wi = wi + wi تاخطابسیارکوچکشود Δ Δ Δ Δ Δ Neural Network

  30. مشکلاتروش gradient descent • ممکناستهمگراشدنبهیکمقدارمینیممزمانزیادیلازمداشتهباشد. • اگردرسطحخطاچندینمینیمممحلیوجودداشتهباشدتضمینیوجودنداردکهالگوریتممینیمممطلقراپیدابکند. درضمناینروشوقتیقابلاستفادهاستکه: • فضایفرضیهدارایفرضیههایپارامتریکپیوستهباشد. • رابطهخطاقابلمشتقگیریباشد Neural Network

  31. مقایسه آموزش یکجا و افزایشی • آموزش یکجا (Batch learning) • آموزش افزایشی (Online learning) w1 w1 w2 Neural Network w2

  32. شبکههایچندلایه برخلاف پرسپترونهاشبکههایچندلایهمیتوانندبراییادگیریمسائلغیرخطیوهمچنینمسائلیباتصمیمگیریهایمتعددبکارروند. Output nodes Internal nodes Input nodes Neural Network

  33. مثال x2 x1 Neural Network

  34. یکسلولواحد برایاینکهبتوانیمفضایتصمیمگیریرابصورتغیرخطیازهمجدابکنیم،لازماستتاهرسلولواحدرابصورتیکتابعغیرخطیتعریفنمائیم. مثالیازچنینسلولیمیتواندیکواحدسیگموئیدباشد: x1 w1 x2 net w2 Σ O = σ(net) = 1 / 1 + e -net w0 wn xn X0=1 Neural Network

  35. Activation Function Neural Network

  36. تابعسیگموئید خروجیاینسلولواحدرابصورتزیرمیتوانبیاننمود: O(x1,x2,…,xn) = σ ( WX ) where: σ ( WX ) = 1 / 1 + e -WX تابعσتابعسیگموئیدیالجستیکنامیدهمیشود. اینتابعدارایخاصیتزیراست: d σ(y) / dy = σ(y) (1 – σ(y)) Neural Network

  37. الگوریتم Back propagation • براییادگیریوزنهاییکشبکهچندلایهازروش Back Propagation استفادهمیشود. دراینروشبااستفادهاز gradient descent سعیمیشودتامربعخطایبینخروجیهایشبکهوتابعهدفمینیممشود. • خطابصورتزیرتعریفمیشود: مرادازoutputs خروجیهایمجموعهواحدهایلایهخروجیوtkdوokdمقدارهدفوخروجیمتناظربا k امینواحدخروجیومثالآموزشی d است. Neural Network

  38. الگوریتم Back propagation • فضایفرضیهموردجستجودراینروشعبارتاستازفضایبزرگیکهتوسطهمهمقادیرممکنبرایوزنهاتعریفمیشود. روش gradient descent سعیمیکندتابامینیممکردنخطابهفرضیهمناسبیدستپیداکند. اماتضمینیبرایاینکهاینالگوریتمبهمینیمممطلقبرسدوجودندارد. Neural Network

  39. الگوریتم BP • شبکهایباninگرهورودی،nhiddenگرهمخفی،وnoutگرهخروجیایجادکنید. • همهوزنهارابایکمقدارتصادفیکوچکعدددهیکنید. • تارسیدنبهشرطپایانی ) کوچکشدنخطا( مراحلزیرراانجامدهید: برایهر xمتعلقبهمثالهایآموزشی: مثال X رابهسمتجلودرشبکهانتشاردهید خطای E رابهسمتعقبدرشبکهانتشاردهید. هرمثالآموزشیبصورتیکزوج (x,t) ارائهمیشودکهبردار x مقادیرورودیوبردار t مقادیرهدفبرایخروجیشبکهراتعیینمیکنند. Neural Network

  40. انتشاربهسمتجلو • برایهرمثال X مقدارخروجیهرواحدرامحاسبهکنیدتابهگرههایخروجیبرسید. Output nodes Compute sigmoid function Internal nodes Input nodes Example X Neural Network

  41. انتشاربهسمتعقب • برایهرواحدخروجیجملهخطارابصورتزیرمحاسبهکنید: δk = Ok (1-Ok)(tk – Ok) • برایهرواحدمخفیجملهخطارابصورتزیرمحاسبهکنید: δh = Oh (1-Oh) ΣkWkhδk • مقدارهروزنرابصورتزیرتغییردهید: Wji = Wji + ΔWji کهدرآن : ΔWji = η δjXji ηعبارتاستازنرخیادگیری Neural Network

  42. -perceptron adaptation rule Neural Network

  43. شرطخاتمه معمولاالگوریتم BP پیشازخاتمههزارانباربااستفادههماندادههایآموزشیتکرارمیگرددشروطمختلفیرامیتوانبرایخاتمهالگوریتمبکاربرد: • توقفبعدازتکراربهدفعاتمعین • توقفوقتیکهخطاازیکمقدارتعیینشدهکمترشود. • توقفوقتیکهخطادرمثالهایمجموعهتائیدازقاعدهخاصیپیروینماید. اگردفعاتتکرارکمباشدخطاخواهیمداشتواگرزیادباشدمسئلهOverfittingرخخواهدداد. Neural Network

  44. محنی یادگیری Neural Network

  45. Neural Network

  46. Neural Network

  47. مرورالگوریتم BP • اینالگوریتمیکجستجوی gradient descent درفضایوزنهاانجاممیدهد. • ممکناستدریکمینیمممحلیگیربیافتد • درعملبسیارموثربودهاست برایپرهیزازمینیمممحلیروشهایمختلفیوجوددارد: • افزودنممنتم • استفادهازstochastic gradient descent • استفادهازشبکههایمختلفبامقادیرمتفاوتیبرایوزنهایاولیه Neural Network

  48. افزودنممنتم • میتوانقانونتغییروزنهاراطوریدرنظرگرفتکهتغییروزندرتکرار n امتاحدیبهاندازهتغییروزندرتکرارقبلیبستگیداشتهباشد. ΔWji (n) = η δjXji + αΔWji (n-1) کهدرآنمقدارممنتمα بصورت0 <= α <= 1میباشد. افزودنممنتمباعثمیشودتاباحرکتدرمسیرقبلیدرسطحخطا: • ازگیرافتادندرمینیممحلیپرهیزشود • ازقرارگرفتندرسطوحصافپرهیزشود • باافزایشتدریجیمقدارپلهتغییرات،سرعتجستجوافزایشیابد. قانونتغییروزن عبارتممنتم Neural Network

  49. قدرتنمایشتوابع • گرچهقدرتنمایشتوابعبهتوسطیکشبکهfeedforwardبستهبهعمقوگستردگیشبکهدارد،بااینوجودمواردزیررامیتوانبهصورتقوانینکلیبیاننمود: • توابعبولی: هرتابعبولیرامیتوانتوسطیکشبکهدولایهپیادهسازینمود. • توابعپیوسته: هرتابعپیوستهمحدودرامیتوانتوسطیکشبکهدولایهتقریبزد. تئوریمربوطهدرموردشبکههائیکهازتابعسیگموئیددرلایهپنهانولایهخطیدرشبکهخروجیاستفادهمیکنندصادقاست. • توابعدلخواه:هرتابعدلخواهرامیتوانبایکشبکهسهلایهتاحدقابلقبولیتفریبزد. بااینوجودبایددرنظرداستکهفضایفرضیهجستجوشدهتوسطروش gradient deescentممکناستدربرگیرندهتماممقادیرممکنوزنهانباشد. Neural Network

  50. فضایفرضیهوبایاساستقرا • فضایفرضیهموردجستجورامیتوانبصورتیکفضایفرضیهاقلیدسی n بعدیازوزنهایشبکهدرنظرگرفت )کهn تعدادوزنهاست( • اینفضایفرضیهبرخلاففضایفرضیهدرختتصمیمیکفضایپیوستهاست. • بایاساستقرااینروشرامیتوانبصورتزیربیانکرد: “smooth interpolation between data points” بهاینمعناکهالگوریتم BP سعیمیکندتانقاطیراکهبههمنزدیکترهستنددریکدستهبندیقراردهد. Neural Network