Transcript ANN
N e u r a l
N e t w o r k s
University of Tehran - http://www.ut.ac.ir
1
رئوس مطالب
.1مقدمه
.2کاربردهای شبکه عصبی
.3مبانی نظری شبکه های عصبی مصنوعی
شبکه های عصبی مصنوعی
2
University of Tehran - http://www.ut.ac.ir
:بخش اول
مقدمه
University of Tehran - http://www.ut.ac.ir
3
شبکه های عصبی مصنوعی
هوش مصنوعی ()AI
• شبکه های عصبی مصنوعی ()ANNs
•منطق فازی ()FL
•محاسبات تکاملی ()EC
•الگوریتهای ژنتیک ()GAs
• حرکت مورچگان
• …
ANNs
GAs
FL
سوال :شباهت این تکنیکها در چیست؟
شبکه های عصبی مصنوعی
4
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
5
شبکه های عصبی مصنوعی
تعریف شبکه عصبی مصنوعی
روش ی کامپیوتری برای محاسبه است که بر پایه اتصال به هم پیوسته چندین واحد
پردازش ی ساخته می شود.
شبکه از تعداد دلخواهی واحد پردازش ی (یا نرون ،سلول یا گره) که در الیه (ها) قرار می
گیرند تشکیل می شود که مجموعه ورودی را به مجموعه خروجی ربط می دهند.
شبکه های عصبی مصنوعی
6
University of Tehran - http://www.ut.ac.ir
انواع شبکه های عصبی مصنوعی
شبکه های عصبی مصنوعی
7
University of Tehran - http://www.ut.ac.ir
بخش دوم:
کاربردهای شبکه عصبی مصنوعی
شبکه های عصبی مصنوعی
8
University of Tehran - http://www.ut.ac.ir
کاربردهای عمومی ANNs
تشخیص الگو (گروهبندي اشكالي كه مشابه هم هستند)
ذخیره كردن و بازبيني دادهها
تقریب تابع (رگرسیون غیر خطی ،تخمین و پیشگویی)
بهينه سازي و تعيین جواب با وجود قيود متعدد
داده کاوی (استخراج دانش کالن ،قابل استناد و جديد از پايگاه داده ها ي بزرگ )
به طور کلی هر جا که سخن از تخمین ،تشخیص الگو یا طبقه بندی باشد می توان از
شبکه های عصبی مصنوعی استفاده کرد.
شبکه های عصبی مصنوعی
9
University of Tehran - http://www.ut.ac.ir
فرایند داده کاوی
make
model
.1
.2
.3
.4
.5
.6
تعريف مساله
انبارش داده ها ساختن پايگاه داده مربوط به داده كاوي
انتخاب داده ها جستجوي داده
تبديل داده ها آماده ساختن داده براي مدل سازي
data prospecting
کاوش در داده ها ساختن مدل
and surveying
ارزيابي مدل
.7
تفسیر نتيجه ساخت مدل و ارائه نتايج
transformed
data
preprocess
& transform
(normalization,
)…PCA, pruning,
selected
select
database
data
& Interpretation
rule formulation
شبکه های عصبی مصنوعی
10
University of Tehran - http://www.ut.ac.ir
کاربردهای مختلف ANNs
شناسایی تصویر /سیگنال
بینایی ماشین
مدل کردن غیر خطی
کنترل فرآیند ساخت
ارزیابی بکارگیری یک سیاست
بهینه سازی محصول
تشخیص ماشین و فرآیند
مدل کردن کنترل سیستمها
مدل کردن ساختارهای شیمیایی
مدل کردن سیستمهای دینامیکی
تشخیص بیماری
پردازش سیگنالهای تصویری
زمانبندی وسیله نقلیه
سیستمهای مسیریابی
کالسه بندی نمودارهای مشتری/بازار
شبکه های عصبی مصنوعی
11
سیستمهای بازرس ی کیفیت،
پیش بینی کیفیت،
کالسه بندی انواع سلولها ,میکروبها و نمونه ها،
پیش بینی فروشهای آینده
پیش بینی نیازهای محصول
پیش بینی وضعیت بازار
پیش بینی شاخصهای اقتصادی
تعیین قیمت وضعیت فعلی
پیش بینی ملزومات انرژی پیش بینی هوا
پیش بینی محصول
مدیریت و برنامه ریزی
کنترل سیستم فرایند شیمیایی و دینامیکی
کنترل مسیر در دستگاههای خودکار ,ربات ,جرثقیل
مدل کردن کنترل فرآیند
University of Tehran - http://www.ut.ac.ir
ANNs کاربردهای تخصص ی
Aerospace
High performance aircraft autopilots, flight path simulations, aircraft
control systems, autopilot enhancements, aircraft component
simulations, aircraft component fault detectors
Agriculture
Agri-product classification, inspection, grading and sorting, soil and
yield modeling, prediction and estimation, modeling, regression and
non-linear curve-fitting, fault diagnoses and detection, …
Automotive
Automobile automatic guidance systems, warranty activity analyzers
Banking
Check and other document readers, credit application evaluators
Defense
Weapon steering, target tracking, object discrimination, facial
recognition, new kinds of sensors, sonar, radar and image signal
processing including data compression, feature extraction and noise
suppression, signal/image identification
University of Tehran - http://www.ut.ac.ir
12
شبکه های عصبی مصنوعی
ANNs کاربردهای تخصص ی
Electronics
Code sequence prediction, integrated circuit chip layout, process
control, chip failure analysis, machine vision, voice synthesis, nonlinear
modeling
Financial
Real estate appraisal, loan advisor, mortgage screening, corporate bond
rating, credit line use analysis, portfolio trading program, corporate
financial analysis, currency price prediction
Manufacturing
Manufacturing process control, product design and analysis, process
and machine diagnosis, real-time particle identification, visual quality
inspection systems, beer testing, welding quality analysis, paper quality
prediction, computer chip quality analysis, analysis of grinding
operations, chemical product design analysis, machine maintenance
analysis, project bidding, planning and management, dynamic modeling
of chemical process systems
University of Tehran - http://www.ut.ac.ir
13
شبکه های عصبی مصنوعی
ANNs کاربردهای تخصص ی
Medical
Breast cancer cell analysis, EEG and ECG analysis, prosthesis design,
optimization of transplant times, hospital expense reduction, hospital
quality improvement, emergency room test advisement
Robotics
Trajectory control, forklift robot, manipulator controllers, vision systems
Speech
Speech recognition, speech compression, vowel classification, text to
speech synthesis
Securities
Market analysis, automatic bond rating, stock trading advisory systems
Telecommunications
Image and data compression, automated information services, real-time
translation of spoken language, customer payment processing systems
Transportation
Truck brake diagnosis systems, vehicle scheduling, routing systems
University of Tehran - http://www.ut.ac.ir
14
شبکه های عصبی مصنوعی
چند کاربرد شبکه عصبی
Bankruptcy prediction modeling with hybrid case-based reasoning and
genetic algorithms approach Applied Soft Computing, Volume 9, Issue
2, March 2009, Pages 599-607
Bankruptcy prediction using support vector machine with optimal choice of
kernel function parameters Expert Systems with Applications, Volume
28, Issue 4, May 2005, Pages 603-614
Jae H. Min, Young-Chan Lee
A threshold-varying artificial neural network approach for classification and
its application to bankruptcy prediction problem Computers & perations
Research, Volume 32, Issue 10, October 2005, Pages 2561-2582
Hybrid neural network models for bankruptcy predictions Decision Support
Systems, Volume 18, Issue 1, September 1996, Pages 63-72
A multivariate neuro-fuzzy system for foreign currency risk management
decision making Neurocomputing, Volume 70, Issues 4-6, January
2007, Pages 942-951
University of Tehran - http://www.ut.ac.ir
15
شبکه های عصبی مصنوعی
چند کاربرد شبکه عصبی
Forecasting currency prices using a genetically evolved neural network
architecture International Review of Financial Analysis, Volume 8, Issue 1,
1999, Pages 67-82
ارزيابي روش هاي سنجش کيفيت خدمات به وسيله شبکه هاي عصبي مصنوعي
میرغفوري سيدحبيب اله,طاهري دمنه محسن*,زارع احمدآبادي حبيب
ارزیابی یک مدل شبکه عصبی جهت پیش بینی قیمت نفت
اصفهانیان و ناصری
پیش بینی نرخ ارز با مدل نروفازی
ایمان دوست
شبکه های عصبی مصنوعی
16
University of Tehran - http://www.ut.ac.ir
بخش سوم:
مبانی شبکه های عصبی مصنوعی
شبکه های عصبی مصنوعی
17
University of Tehran - http://www.ut.ac.ir
تاریخچه
ANN has past through three phases
1940’s – 1970’s, 1970’s – 1980’s,
1980’s – Now
Major contributors
- McCulloch & Walter Pitts (Mathematical model)
- Donald Hebb (Hebbian Rule)
- Rosenblatt (Perceptron)
- Widrow & Hoff (Delta rule)
- Minsky & Papert
- Kohonen
- Grossberg
- Hopfield
- Rumelhart & McClelland (Backpropagation)
University of Tehran - http://www.ut.ac.ir
18
شبکه های عصبی مصنوعی
تاريخچه
مطالعه برروي شبكههاي عصبي توسط مك كالخ و پيتس در سال 1943آغاز شد.
شبكههاي تك اليه ،با توابع فعال سازی آستانهاي ،توسط روزنبالت در سال 1962
بنيانگذاري شدند كه اين نوع شبكهها ،پرسپترون ناميده شدند.
در دهه ،1960به صورت تجربي نشان داده شد كه پرسپترونها قابليت حل مسائل
فراواني را دارند ،ولی بسياري از مسائل پيچيده توسط آنها قابل حل نبود.
محدوديت پرسپترونهای يك اليه در سال 1966توسط مينسكي و پپرت در كتاب
پرسپترون آنها به چاپ رسيد .نتايج مطالعه اين كتاب باعث شد كه شبكههاي عصبي
به مدت دو دهه كمتر مورد توجه قرار گیرند.
با کشف الگوريتم پس-انتشار توسط رملهات ،هينتن و ويليامز در سال 1986مطالعات
جديد بر روي شبكههاي عصبي مجددا شروع شد .اهميت ويژه اين الگوريتم اين بود
كه شبكههاي عصبي چند اليه توسط آن ميتوانستند آموزش داده شوند.
شبکه های عصبی مصنوعی
19
University of Tehran - http://www.ut.ac.ir
الهام از طبیعت
مطالعه شبکه های عصبی مصنوعی تا حد زیادی الهام گرفته
از سیستم های یادگیر طبیعی است که در آنها یک مجموعه
پیچیده از نرونهای به هم متصل در کار یادگیری دخیل هستند.
گمان میرود که مغز انسان از تعداد 10 11نرون تشکیل
شده باشد که هر نرون با تقریبا 104نرون دیگر در ارتباط
است.
سرعت سوئیچنگ نرونها در حدود 10-3ثانیه است که در
مقایسه با کامپیوترها ) 10 -10ثانیه ( بسیار ناچیز
مینماید .با این وجود آدمی قادر است در 0.1ثانیه تصویر
یک انسان را بازشناسائی نماید .این قدرت فوق العاده باید از
پردازش موازی توزیع شده در تعدادی زیادی از نرونها حاصل
شده باشد.
شبکه های عصبی مصنوعی
20
University of Tehran - http://www.ut.ac.ir
نرون بیولوژیکی
University of Tehran - http://www.ut.ac.ir
21
شبکه های عصبی مصنوعی
نرون مصنوعی
From experience:
A physical
neuron
examples
/ training
data
Strength of connection
between the neurons is
stored as a weight-value
for the specific connection.
An artificial neuron
Learning the solution to a
problem = changing the
connection weights
University of Tehran - http://www.ut.ac.ir
22
شبکه های عصبی مصنوعی
)1943-پیتس-مدل ریاض ی یک نرون (مک کالخ
x1
w1
x2
w2
…
…
xn
wn
b+
y
f(y)
O
w0
x0
Inputs
Weights
Summation
University of Tehran - http://www.ut.ac.ir
Activation
23
Output
شبکه های عصبی مصنوعی
توابع فعال سازی متداول
f(y)
sgn(y)
1
tanh(y)
y
-1
University of Tehran - http://www.ut.ac.ir
24
شبکه های عصبی مصنوعی
توابع فعال سازی سیکموئید
برای اینکه بتوانیم فضای تصمیم گیری را بصورت غیر خطی از هم جدا
کنیم ،الزم است تا هر سلول واحد را بصورت یک تابع غیر خطی تعریف
نمائیم .مثالی از چنین سلولی میتواند یک واحد سیگموئید باشد:
w1
net
O
)O = f(net
)= 1 / (1 + e –net
Σ
w2
w0
wn
x1
x2
xn
X0=1
شبکه های عصبی مصنوعی
25
University of Tehran - http://www.ut.ac.ir
ساختار شبکه عصبی
نرون ها به صورت طبيعي به روش خاص ي اتصال مي يابند تا يک شبکه عصبي را تشکيل
دهند نحوه اتصال نرون ها مي تواند به گونه اي باشد که شبکه تک اليه يا چند اليه
باشد.
شبکه هاي چند اليه از يک اليه ورودي ،يک اليه خروجي و يک يا چند اليه بین آنها (الیه
پنهان) که مستقيما به داده هاي ورودي و نتايج خروجي متصل نيستند تشکيل يافته اند.
واحدهاي اليه ورودي صرفا وظيفه توزيع مقادير ورودي را به اليه بعد برعهده دارند .و هيچ
گونه تاثیري بر روي سيگنال هاي ورودي ندارند .به همین دليل در شمارش تعداد اليه ها به
حساب نيامده اند .شبکه شامل يک اليه خروجي است که پاسخ سيگنال هاي ورودي را
ارائه مي دهد .که تعداد نرون ها در اليه ورودي و اليه خروجي برابر با تعداد ورودي ها و
خروجي ها مي باشد و اليه يا اليه هاي پنهان وظيفه ارتباط دادن اليه ورودي به اليه
خروجي را بر عهده دارند .شبکه با داشتن اين اليه هاي پنهان قادر مي گردد که روابط غیر
خطي را از داده هاي ارائه شده به شبکه استخراج کند.
شبکه های عصبی مصنوعی
26
University of Tehran - http://www.ut.ac.ir
MLP شبکه های عصبی چند الیه یا
x0=1
y0=1
y1
x1
y3
y2
Layer 2
Output
Layer 1
x2
Input
Hidden
University of Tehran - http://www.ut.ac.ir
27
شبکه های عصبی مصنوعی
كار با هر شبکه عصبی شامل سه مرحله می باشد :آموزش ،تعمیم و اجرا.
.1در مرحله آموزش ،شبکه الگوهای موجود در داده هاي ورودي را یاد می گیرد .هر شبکه عصبی
برای یادگیری از قانون خاص استفاده می کند.
.2تعمیم ،قدرت شبکه عصبی در ایجاد پاسخ های قابل قبول برای ورودی هایی است که عضو
مجموعه آموزش ی نبوده اند.
.3در مرحله اجرا نیز شبکه عصبی برای عملکردی که به آن منظور طراحی گردیده است ،استفاده می
شود.
آموزش
الگو های داده
های ورودی
پاسخ برای
ورودی های
مجهول
شبکه های عصبی مصنوعی
تعمیم
28
مراحل کار
با شبکه
عصبی
اجرا
University of Tehran - http://www.ut.ac.ir
یادگیری در شبكههاي عصبي مصنوعي
• هدف از آموزش شبكه ،رسيدن به شرايطي است كه شبكه قادر به پاسخگويي صحيح
به دادههاي ارائه شده در آموزش شبكه (به خاطر سپردن) و همچنین دادههاي مشابه و
متفاوت از ورودي هايي كه از آنها براي آموزش شبكه استفاده شده است(تعميم
دادن)،باشد.
• برتري عمدة شبكههاي عصبي آموزش دادهشده بر محاسبات كالسيك اين است كه
نتايج مورد نياز با تالش كمتر و در زمان كمتري قابل حصول است.در نتيجه اين مزايا
خصوصا براي مسائلي كه مستلزم محاسبات طوالني هستند بسيار مفيد و موثر واقع
گردد.
• دو نوع آموزش شبكه به شكل زير است:
الف ـ آموزش با معلم
ب ـ آموزش بدون معلم
شبکه های عصبی مصنوعی
29
University of Tehran - http://www.ut.ac.ir
آموزش شبكههاي عصبي مصنوعي
آموزش با معلم الفآموزش اكثر شبكههاي عصبي با استفاده از زوج بردارهاي نمونه صورت ميگیرد به طوري كه به هر بردار
ورودي يك بردار خروجي مشخص نسبت داده ميشود.با ارائة اين مجموعه بردارها به شبكه،وزنها بر اساس
الگوريتم يادگیري شبكه اصالح ميگردند.اينگونه آموزش را آموزش با معلم مينامند.
شبکههای دلتا ،آداالین ،ماداالین ،تابع پایه شعاعی ( )RBFو پسانتشار ()BP
ب-آموزش بدون معلم
در اين نوع آموزش،بردارهاي ورودي به شبكه ارائه گرديده بدون اينكه بردارهاي خروجي مربوط به شبكه داده
شوند،وزنهاي شبكه بصورتي اصالح ميشوند كه بردارهاي ورودي مشابه در يك گروهبندي قرار گیرند .پاسخ
شبكه بر اساس نزديكترين بردار به بردار ورودي خواهد بود.
یادگیری بدون ناظر را خود یادگیری هم میگویند .از شبکه های به کارگیرنده الگوریتم بدون ناظر میتوان به
شبکه های هب ،کوهونن و هاپفیلد اشاره کرد.
شبکه های عصبی مصنوعی
30
University of Tehran - http://www.ut.ac.ir
یادگیری با معلم -یادگیری بدون معلم
B
این بلوکها را در
دو کالس (گروه) قرار دهید.
B A
B
A
A
سوال :کدام روش یادگیری مناسب است؟
شبکه های عصبی مصنوعی
31
University of Tehran - http://www.ut.ac.ir
یادگیری با معلم
B
اي ن جعبه به ک دام کالس تعلق دارد ؟
Class
A
توجه :طبقات کالس به عنوان اطالعات
تکمیلی داده شده است.
Class
B
Class
B
Class
شبکه های عصبی مصنوعی
32
A
Class
A
B
Class
University of Tehran - http://www.ut.ac.ir
یادگیری بدون معلم
دو جواب ممکن ...
B
B
A
A
B
A
A
B
B
B
A
A
...هیچگونه هدایتی برای اینکه کدام را انتخاب کنیم نشده است.
شبکه های عصبی مصنوعی
33
University of Tehran - http://www.ut.ac.ir
الگوريتم هاي يادگیري
منظور از يادگیري در ،ANNتنظيم وزن ها و باياس هاي شبكه مي باشد .بر اين اساس الگوريتم هاي متفاوتي بيان
شده ،كه معمول ترين آنها عبارتند از:
.1يادگیري هب :در اين روش وزن مربوط به ورودي يك نرون ،زماني افزايش مي يابد كه سيگنال ورودي و خروجي هر دو
باال باشند که در واقع منظور تقويت كردن آن ورودي است.
.2قانون يادگیري دلتا :اين الگوريتم كه بعضا ميانگین مربع خطا ( )LMSنیز ناميده مي شود وقتي استفاده ميگردد كه
سيگنال خطا مينيمم شود كه به واقع اختالف بین خروجي واقعي شبكه و خروجي مورد انتظار (مطلوب) مينيمم
باشد .در اين روش سيگنال خطا جهت اصالح وزن ها و باياسهاي نرون ها به عقب منتشر ميشود .الگوريتم پس
انتشار خطا معمول ترين روش پياده سازي از قانون يادگیري دلتا است كه دست كم در %75از كاربردهاي شبكه
هاي عصبي مصنوعي استفاده ميگردد.
.3يادگیري رقابتي :در اين روش عناصر پردازش ي جهت اصالح وزن ها و باياس هاي خودشان با هم رقابت مي كنند.
شبکه های عصبی مصنوعی
34
University of Tehran - http://www.ut.ac.ir
الگوریتم نزول گرایان ()Gradient Descent
با توجه به نحوه تعریف Eسطح خطا بصورت یک سهمی
خواهد بود .ما بدنبال وزنهائی هستیم که حداقل خطا را
داشته باشند.
E = ½Σi (Ti – Oi)2
)E(W
w1
الگوریتم GDدر فضای وزنها بدنبال برداری میگردد که
خطا را حداقل کند.
w2
این الگوریتم از یک مقدار دلبخواه برای بردار وزن شروع
کرده و در هر مرحله وزنها را طوری تغییر میدهد که در
جهت شیب کاهش ی منحنی فوق خطا کاهش داده شود.
شبکه های عصبی مصنوعی
35
University of Tehran - http://www.ut.ac.ir
شرط خاتمه الگوریتم BP
معموال الگوریتم BPپیش از خاتمه هزاران بار با استفاده همان داده های
آموزش ی تکرار میگردد شروط مختلفی را میتوان برای خاتمه الگوریتم
بکار برد:
توقف بعد از تکرار به دفعات معین
توقف وقتی که خطا از یک مقدار تعیین شده کمتر شود.
توقف وقتی که خطا در مثالهای مجموعه اعتبار سنجی از قاعده خاص ی
پیروی نماید.
اگر دفعات تکرار کم باشد خطا خواهیم داشت و اگر زیاد باشد مسئله
Overfittingرخ خواهد داد.
شبکه های عصبی مصنوعی
36
University of Tehran - http://www.ut.ac.ir
قدرت تعمیم و overfitting
شرط خاتمه الگوریتم BPچیست؟
یک انتخاب این است که الگوریتم را آنقدر ادامه دهیم تا خطا از مقدار معینی کمتر
شود .این امر میتواند منجر به overfittingشود.
Validation set error
Training set error
epoch
overfittingناش ی از تنظیم وزنها برای در نظر گرفتن مثالهای نادری است که ممکن
است با توزیع کلی داده ها مطابقت نداشته باشند .تعداد زیاد وزنهای یک شبکه عصبی
باعث میشود تا شبکه درجه آزادی زیادی برای انطباق با این مثالها داشته باشد.
با افزایش تعداد تکرار ،پیچیدگی فضای فرضیه یادگرفته شده توسط الگوریتم بیشتر و
بیشتر میشود تا شبکه بتواند نویز و مثالهای نادر موجود در مجموعه آموزش را بدرستی
ارزیابی نماید.
شبکه های عصبی مصنوعی
37
University of Tehran - http://www.ut.ac.ir
MLP
Feed Forward- Back propagation
University of Tehran - http://www.ut.ac.ir
38
شبکه های عصبی مصنوعی
Inputs
Output
انتشار به سمت جلو
انتشار به سمت عقب
شبکه های عصبی مصنوعی
39
University of Tehran - http://www.ut.ac.ir
شبکه عصبی چگونه کار میکند؟
در واقع ایده اصلي شبکه عصبی تبديل پذير بودن پارامترهاي آن ( باياس و وزن هاي
ارتباطي بین نرون ها) بوده که اين پارامترها مي توانند طوري تنظيم شوند که انتظار
مورد نظر را تامین کنند .بنابراين با استفاده از آموزش شبکه مي توانيم اين پارامترها را
براي انجام کار مورد نظر خود تعديل کنيم
مقدار واقعی
مقایسه
40
(منهاج( ،)1387 ،کیا)1387،
خروجی ها
ورودی ها
شبکه عصبی
University of Tehran - http://www.ut.ac.ir
مثال پرسپترون
inputs
weights
x
threshold
output
w1
+
>8?
x w2
University of Tehran - http://www.ut.ac.ir
41
شبکه های عصبی مصنوعی
مثال
P2الگویی است که باید پرسپترون یاد بگیرد:
یعنی ،اگر هر دو ورودی 1هستند ،خروجی با ید 1باشد
T
x2
x1
0
1
0
1
1
1
…
…
…
= P1
= P2
= Pn
weights
threshold
output
x2
+
?>8
inputs
x3
شبکه های عصبی مصنوعی
42
University of Tehran - http://www.ut.ac.ir
)1و1( مثال آموزش ی
inputs
1
weights
threshold
output
x2
+
1
>8?
x3
University of Tehran - http://www.ut.ac.ir
43
شبکه های عصبی مصنوعی
)1و1( مثال آموزش ی
inputs
1
weights
x2
threshold
output
2
+
1
x3
>8?
3
University of Tehran - http://www.ut.ac.ir
44
شبکه های عصبی مصنوعی
)1و1( مثال آموزش ی
inputs
1
weights
x2
2
+
1
x3
threshold
output
5
>8?
3
University of Tehran - http://www.ut.ac.ir
45
شبکه های عصبی مصنوعی
)1و1( مثال آموزش ی
inputs
1
weights
x2
2
+
1
x3
threshold
output
5
>8?
0
3
University of Tehran - http://www.ut.ac.ir
46
شبکه های عصبی مصنوعی
P2 =
inputs
1
x1
x2
T
0
1
0
1
1
1
…
…
…
)1و1( مثال آموزش ی
weights
x2
2
+
1
x3
threshold
output
5
>8?
0
3
University of Tehran - http://www.ut.ac.ir
47
شبکه های عصبی مصنوعی
)1و1( مثال آموزش ی
inputs
1
weights
x2
2
+
1
x3
threshold
output
5
>8?
0
3
University of Tehran - http://www.ut.ac.ir
48
شبکه های عصبی مصنوعی
مراحل طراحي يك مدل شبكه عصبي به منظور طبقه بندي يا
پيش بيني (تخمین):
-1شناخت متغيیرهاي ورودي و خروجي
-2تبديل مقادير ورودي و خروجي به دامنه صفر تا يك
-3انتخاب هندسه (توپولوژی) مناسب براي شبكه عصبي
-4آموزش با داده هاي آموزش ي معرف
-5آزمون شبكه با داده هايي مستقل از مجموعه آموزش ي و در
صورت لزوم ادامه آموزش و تنظيم مثال هاي آموزش ي،
توپولوژی شبكه و پارامترهاي آن.
شبکه های عصبی مصنوعی
49
University of Tehran - http://www.ut.ac.ir
Initial Neural Net
Training
Training Set
Data set
Trained Neural Net
Testing
Testing Set
Trained Net with
Performance Measurement
University of Tehran - http://www.ut.ac.ir
50
شبکه های عصبی مصنوعی
مزایای شبکه های عصبی
توانایی حل طیف وسیعی از مسائل :شبکه های عصبی رهیافتی بسیار عمومی برای حل
مسائلی از قبیل پیش بینی،طبقه بندی و خوشه بندی است و این ماهیت عام مسبب شهرت
و مقبولیت آن است.
توانایی ایجاد جواب های مناسب در مسائل بسیار پیچیده :در مقایسه با رهیافت های آمار
استاندارد و درخت تصمیم گیری،شبکه های عصبی قدرتمندترند و در بسیاری از صنایع
کاربرد دارند.
قابلیت کاربرد بر روی هر دو نوع متغیر پیوسته و رسته ای :شبکه های عصبی می توانند از
هر دو متغیر پیوسته و رسته ای در ورودی ها و خروجی ها استفاده نمایند .داده های رسته
ای به دو روش مختلف به کار می روند ،هم به صورت استفاده از یک گره (سلول) که هر
ورودی رسته ای داده شده زیر مجموعه ای از دامنه [ ]0،1باشد و هم به صورت سلول
های مجزا برای هر دسته .داده های پیوسته نیز به سادگی به دامنه مورد نظر تبدیل می
شوند.
در دسترس بودن بسته های نرم افزاری :به دلیل جامعیت شبکه های عصبی و مناسب
بودن جواب های آن ها ،نرم افزارهای قدرتمند و مورد نظر کاربر در این زمینه به وجود آمده
است.
شبکه های عصبی مصنوعی
51
University of Tehran - http://www.ut.ac.ir
معایب شبکه های عصبی
نیاز به ورودی ها در دامنه صفر و یک :تغییر مقیاس داده ها نیازمند انجام تبدیل های اضافی بر روی
ورودی هاست .ابزارهای مناسب ،امکان مشاهده هیستوگرام توزیع مقادبر رسته ای و تبدیل خودکار داده
های عددی به دامنه مطلوب را فراهم می نمایند .البته پردازش اولیه داده ها یک مزیت نیز دارد و آن اینکه
این فرایند به تعیین صحت و سقم داده های آموزش کمک می کند .از آنجا که کیفیت ،مهمترین مسئله در
پردازش داده است ،لذا این مطالعه اضافی داده ها می تواند مانع بروز مشکالت بعدی گردد.
عدم ارائه توضیح در مورد پاسخ ها :شبکه های عصبی ابزار های مناسب برای مسائلی است که در آنها
جواب ها مهمتر از درک روابط علت و معلولی است .با اینکه شبکه های عصبی قادر به ارائه قوانین صریح
نیستند ،اما آنالیز حساسیت می تواند توضیح دهد که کدام ورودی ها مهمتر از بقیه هستند .در بسیاری از
موارد ،دانستن اهمیت نسبی هر متغیر به خوبی داشتن قوانین صریح است.
امکان ارائه یک جواب زودرس و نامناسب :معموال شبکه های عصبی برای هر مجموعه از داده های
آموزش ی ،به جواب همگرا می شود .متاسفانه هیچ تضمینی وجود ندارد که جواب ارائه شده ،بهترین مدل
داده ها باشد .برای رفع این مشکل باید بوسیله داده های موجود ،مناسب بودن مدل بدست آمده را
سنجید و سپس آن را بر روی داده های جدید به کاربرد.
شبکه های عصبی مصنوعی
52
University of Tehran - http://www.ut.ac.ir
معرفی چند کتاب و نرم افزار برای ادامه کار
.1البرزي ،م ۱۳۸۲آشنايي با شبكه هاي عصبي ،انتشارات دانشگاه صنعتي شريف.
(مقدماتی)
.2منهاج ،محمدباقر۱۳۸۱،هوش محاسباتي (جلد اول) ـ مباني شبكه هاي عصبي،
انتشارات دانشگاه صنعتي امیركبیر( .پیشرفته).
.3استفاده از جعبه ابزار شبکه عصبی MATLABو یا یکی از نرم افزار های حرفه
ای ( NeuralWare Professional II, Statistica Neural
)Networks, NeuroSolutions,
شبکه های عصبی مصنوعی
53
University of Tehran - http://www.ut.ac.ir
Software
MATLAB
University of Tehran - http://www.ut.ac.ir
NeuroSolutions
54
شبکه های عصبی مصنوعی
NeuroSolutions
:مراحل نصب
University of Tehran - http://www.ut.ac.ir
55
شبکه های عصبی مصنوعی
NeuroSolutions
:مراحل نصب
University of Tehran - http://www.ut.ac.ir
56
شبکه های عصبی مصنوعی
NeuroSolutions
:مراحل نصب
University of Tehran - http://www.ut.ac.ir
57
شبکه های عصبی مصنوعی
NeuroSolutions
:مراحل نصب
University of Tehran - http://www.ut.ac.ir
58
شبکه های عصبی مصنوعی
NeuroSolutions
:مراحل نصب
University of Tehran - http://www.ut.ac.ir
59
شبکه های عصبی مصنوعی
NeuroSolutions
:مراحل اجرا
University of Tehran - http://www.ut.ac.ir
60
شبکه های عصبی مصنوعی
مراحل اجرا برای طبقه بندی:
شبکه های عصبی مصنوعی
61
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
62
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
63
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
64
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
65
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
66
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
67
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
68
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
69
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
70
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
71
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
72
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
73
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
74
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
75
شبکه های عصبی مصنوعی
مراحل اجرا برای رگرسیون:
شبکه های عصبی مصنوعی
76
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
77
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
78
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
79
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
80
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
81
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
82
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
83
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
84
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
85
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
86
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
87
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
88
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
89
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
90
شبکه های عصبی مصنوعی
آنالیز حساسیت
University of Tehran - http://www.ut.ac.ir
91
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
92
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
93
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
94
شبکه های عصبی مصنوعی
استفاده از شبکه عصبی برای داده های جدید
شبکه های عصبی مصنوعی
95
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
96
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
97
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
98
شبکه های عصبی مصنوعی
روش های دیگر در نرم افزار
شبکه های عصبی مصنوعی
99
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
100
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
101
شبکه های عصبی مصنوعی
شبکه عصبی
پیش پردازش بروی داده:
.1تصادفی کردن داده ها
.2داده ها را به دو یا سه دسته تقسیم کردن
.3داده ها را بین 0تا یک قرار دادن
شبکه های عصبی مصنوعی
102
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
103
شبکه های عصبی مصنوعی
شبکه عصبی
وارد کردن داده ها به نرم افزار MATLAB
.1وارد کردن داده های ورودی (آموزش )
.2وارد کردن داده های خروجی(آموزش )
.3وارد کردن داده های ورودی (آزمون)
شبکه های عصبی مصنوعی
104
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
105
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
106
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
107
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
108
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
109
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
110
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
111
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
112
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
113
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
114
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
115
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
116
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
117
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
118
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
119
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
120
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
121
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
122
شبکه های عصبی مصنوعی
فازی-شبکه عصبی
University of Tehran - http://www.ut.ac.ir
123
شبکه های عصبی مصنوعی
فازی-شبکه عصبی
University of Tehran - http://www.ut.ac.ir
124
شبکه های عصبی مصنوعی
شبکه عصبی-فازی
وارد کردن داده ها به نرم افزار MATLAB
.1وارد کردن داده های ورودی و خروجی (آموزش )
.2وارد کردن داده های ورودی و خروجی(آزمون )
شبکه های عصبی مصنوعی
125
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
126
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
127
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
128
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
129
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
130
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
131
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
132
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
133
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
134
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
135
شبکه های عصبی مصنوعی
شبکه عصبی-فازی
گرفتن داده از مدل عصبی-فازی
.1وارد کردن داده های ورودی (آزمون)
شبکه های عصبی مصنوعی
136
University of Tehran - http://www.ut.ac.ir
University of Tehran - http://www.ut.ac.ir
137
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
138
شبکه های عصبی مصنوعی
University of Tehran - http://www.ut.ac.ir
139
شبکه های عصبی مصنوعی
ارزیابی مدل
معیارهای مختلف مقایسه مدل ها
شبکه های عصبی مصنوعی
140
University of Tehran - http://www.ut.ac.ir
C:\Program Files\NeuroSolutions 5\Excel\Demos
University of Tehran - http://www.ut.ac.ir
141
شبکه های عصبی مصنوعی