
کتاب شبکه های عصبی در MATLAB نوشته سید مصطفی کیا
نویسنده:مصطفی کیا
ناشر:نشر کیان
سال انتشار:۱۳۹۷
نوبت چاپ:ششم
تعداد صفحات:۴۰۸
شابک:۹۷۸۶۰۰۶۰۲۱۴۱۶
زبان:فارسی
معرفی کتاب
امروزه، روش های هوشمند و الهامی از طبیعت در حل مسائل پیچیدۀ دنیای واقعی طرفداران زیادی دارند. یکی از پرطرفدارترین و کاراترین این ساختارها شبکه های عصبی مصنوعی هستند که از نقش آنها در حل مسائل دنیای امروز به هیچ وجه نمی توان چشم پوشید. این ساختارهای هوشمند در علوم مختلف مهندسی از جایگاه بسیار مناسبی بهره مند هستند به گونه ای که پژوهشگران و مهندسان برای حل مسائلی که حل آنها با روش های معمول بسیار دشوار و یا حتی غیرممکن می باشد رو به این روش ها آورده اند.
در این کتاب پس از آشنایی اجمالی با نحوۀ کار با نرم افزار MATLAB ،ضمن معرفی مبانی پایۀ شبکه های عصبی، به پیاده سازی انواع مختلف آن ها در نرم افزار MATLAB پرداخته شده است. در این راستا انواع شبکه های عصبی مثل پرسپترون، فیلتر های خطی، پس انتشار، پویا، شعاع مبنا، خود سازمان و هاپفیلد مورد بحث قرار می گیرند. همچنین با مطرح شدن مسائل متنوع سعی می شود تا خواننده پس از فراگیری مفاهیم اولیه با نحوۀ حل مسائل مختلف دنیای واقعی آشنا شود.
در ویرایش دوم سعی شده تا ضمن رفع اشکال های ویرایش اول با استفاده از منابع تکمیلی مرجع بهتری برای عالقمندان به فراگیری مبانی شبکه های عصبی فراهم آید.
نگاهي به محيط عملياتي MATLAB
نرم افزار MATLAB يك محیط كارا براي انجام محاسبات تكنيكي است كه امكان محاسبات، نمايش اطلاعات و برنامه نويسي را در قالب يك محيط ساده به همراه علائم مرسوم رياضي فراهم مي آورد.
كاربردهاي معمول MATLAB را ميتوان درموارد زير خلاصه نمود:
- رياضيات و محاسبات
- توسعة الگوريتم ها
- دريافت و جمع آوري داده ها
- مدلسازي، شبيه سازي و ساخت نمونههاي اوليه
- تحليل داده ها، اكتشاف و نمايش داده ها
- گرافيك مهندسي و علمي
- توسعه برنامه هاي كاربردي و ساخت رابط هاي گرافيكي كاربر
متلب يك سيستم محاوره اي است كه آرايه هاي فاقد اندازه، اجزای اوليه آنرا تشكيل مي دهند. MATLAB شما را قادر به حل بسياري از مسائل محاسباتي به خصوص مسائلي كه در قالب برداري و ماتريسي فرموله مي شوند، مي سازد. زمان مورد نیاز جهت انجام محاسبات در MATLAB نسبت به زبانهايي مثل C و Fortran بسيار اندك است. نام نرم افزار MATLAB از حروف ابتدای دو کلمه) Matrix Laboratory آزمايشگاه ماتريس( استخراج شده است. اين نرم افزار اولين بار براي دسترسي بهتر به نرم افزار ماتريسي توسعه داده شده در پروژه هاي LINPACK و EISPACK ، نوشته شد. امروزه MATLAB تركيبي از كتابخانه هاي LAPACK و BLAS را گردهم مي آورد.
در طول سال هاي اخير با توجه به نظرات كاربران متعدد، ابزارهاي MATLAB رشد و نمو پيدا كرده اند. در محيط هاي دانشگاهي اين نرم افزار يك ابزار مناسب جهت استفاده در مباحث رياضي، مهندسي و علوم پايه مي باشد. در صنعت از MATLAB براي بهينه سازي در توليد محصولات، توسعه و تحليل استفاده ميشود. ابزارها و توابع مختلف MATLAB در قالب جعبه ابزارهاي متنوع دسته بندي شده اند. هر يك از اين جعبه ابزارها شما را قادر به يادگيري و به كارگيري يك تكنولوژي خاص مي سازند. هر جعبه ابزار حاوي مجموعه اي از توابع MATLAB براي حل گروه خاصي از مسائل ميباشد.
فهرست مطالب کتاب شبکه های عصبی در MATLAB
فصل اول: آشنايي با نرم افزار MATLAB
- نگاهي به محيط عملياتي MATLAB
- ميز كار MATLAB
- چينش ميزكار
- كليد Start
- پنجرة دستور
- پنجرة تاريخچه دستور
- استفاده از مرورگر راهنماي MATLAB
- جستجوي اسناد و Demoها
- مرورگر فضاي كاري
- ويرايشگر متغيرها
- مديريت فايلها در MATLAB
- استفاده از مرورگر پوشة جاري براي مديريت فايل ها
- ويرايشگرM-File
- يافتن خطاها با استفاده از M-Lint
- بهبود كارآيي كد با استفاده Profiler
- ماتريسها و آرایه ها در MATLAB
- ايجاد يك ماتريس در MATLAB
- عملگر کولون
- تابع magic
- عبارات رياضي
- كار با ماتريس ها
- ماتريس ها و جبر خطي
- آرايه ها
- داده هاي چند مقداري
- بسط عددي
- انديس هاي منطقي
- تابع Find
- كنترل ورودي و خروجي خط فرمان
- کنترل جریان در MATLAB
- دستورات elseif ,else ,if
- دستور switch-case
- دستور for
- دستور while
- دستور Continue
- دستور break
- دستورtry-catch
- دستور return
- ساختارهاي داده اي
- آرايه هاي چند بعدي
- آرايه هاي سلولي
- كاراكترها و متن ها
- ساختارها
- اسكريپت ها و توابع
- انواع توابع
- متغيرهاي سراسري
- ارسال رشته ها به توابع
- تابع eval
- مربوط به توابع Handle
- توابعي كه برروي توابع ديگر عمل ميكنند
- بردارسازي
- پيش تخصيص حافظه
فصل دوم: آشنایی با شبكه هاي عصبي
- الهام از طبيعت
- علائم فني مورد استفاده در اين كتاب
- نوشتار مورد استفاده در رياضيات
- كتب مرجع شبكه هاي عصبي
- كاربردهاي شبكه هاي عصبي
- برازش توابع
- تعريف مسئله
- استفاده از توابع خط فرمان
- استفاده از رابط گرافيكي برازش توابع nftool) )
- تشخيص الگوها
- تعريف مسئله
- استفاده از توابع خط فرمان
- استفاده از رابط گرافيكي تشخيص الگو
- كالسترينگ داده ها
- تعريف مسئله
- استفاده از توابع خط فرمان
- استفاده از رابط گرافيكي كالسترینگ
فصل سوم: آشنایی با مدل نورون و معماری
- نورون با يك ورودي عددی
- توابع انتقال
- نورون با يك بردار به عنوان ورودي
- معماري شبكه هاي عصبي
- ورودي ها و لايه ها
- شبكه هاي چند لايه
- ساختمان داده های مورد استفاده
- شبيه سازي با ورودي هاي هم زمان در يك شبكه ايستا
- شبيه سازي با ورودي هاي ترتيبي در يك شبكه پويا
- شبيه سازي ورودي هاي همزمان در يك شبكه پويا
- روش هاي آموزش
- آموزش گام به گام
- آموزش گام به گام در شبكه هاي ايستا
- آموزش گام به گام در شبکه های پویا
- آموزش دسته اي
- آموزش دسته ای در شبکه های ایستا
- آموزش دسته اي در شبكه هاي پويا
- پسخورد آموزش
فصل چهارم: شبکه های پرسپترون
- مقدمه
- مدل نورون پرسپترون
- معماری پرسپترون
- ایجاد یک شبکه پرسپترون
- شبيه سازي
- مقداردهی آغازین پارامترها
- قوانين يادگيري
- قاعده یادگیری پرسپترون (learnp)
- آموزش پرسپترون
- محدوديت ها و تضمين هاي پرسپترون
- قاعده یادگیری نرمال پرسپترون
- رابط گرافيكي شبکه های پرسپترون
- ايجاد يك شبكة پرسپترون (nntool)
- ذخيره يك متغير در فايل و بارگذاري مجدد آن
فصل پنجم: فیلترهای خطی
- مقدمه
- مدل نورون خطی
- معماري شبكه
- ایجاد یک نورون خطی
- طراحی یک سیستم خطی
- شبکه های خطی همراه با تأخیر
- فيلتر خطي
- الگوریتم LMS
- طبقه بندی خطی
- محدوديت هاي فيلترهاي خطي
فصل ششم: شبکه های پس انتشار
- مقدمه
- حل يك مسئله
- بهبود نتايج
- معماري شبکه های پس انتشار
- شبکه های Feedforward
- ایجاد یک شبکه Feedforward
- مقداردهی آغازین به وزن ها
- شبیه سازی شبکه
- آموزش شبکه
- الگوریتم پس انتشار
- آموزش دسته ای
- آموزش دسته ای کاهش شیب
- آموزش دسته ای کاهش شیب با Momentum
- روشهاي آموزشي سريع تر و كاراتر
- سرعت یادگیری متغیر traingdx , traingda
- پس انتشار ارتجاعي
- الگوريتم هاي گرادیان توأم
- الگوریتم گراديان توأم Fletcher-Reeves
- الگوریتم گراديان توأم Polak- Ribiere
- الگوریتم شروع مجدد Powell – Beale
- الگوریتم گراديان توأم مقیاس شده
- رويه هاي جستجوي خطي
- جستجوي ناحيه طلايي srchgol
- جستجوي Brent(srchbre)
- جستجوي دوبخشي درجة 3 تركيبي (srchhyb)
- جستجویCharalambous (srchcha)
- جستجوي پيمايش معكوس (srchcha)
- الگوریتم های شبه نیوتن
- الگوریتم BFGS
- الگوریتم Secant تک مرحله ای
- الگوریتم Levenberg- Marquardt
- محاسبة ماتريس ژاكوبين
- کاهش مصرف حافظه در الگوریت Levenberg- Marquardt
- مقايسة میزان سرعت و حافظه در الگوريتم هاي مختلف
- تابع Sin
- تشخیص بیت Parity
- مسئله ENGINE
- مسئله CANCER
- مسئله کلسترول
- مسئله DIABETS
- نتیجه گیری
- انتخاب معماري شبكه
- همگرايي
- بهبود عمومیت شبکه
- تنظيم
- تابع کارایی اصلاح شده
- تنظیم خودکار
- توقف زودرس
- نتیجه گیری
- پيشپردازش و پسپردازش
- روش مینیمم و ماکسیمم
- میانگین و انحراف معیار
- تحلیل اجزا اصلی
- پردازش ورودي هاي نامعلوم
- نمايش مقادير نامعلوم و بي اهميت در ماتريس اهداف
- تحلیل Posttraining
- بررسي يك مثال
- محدودیت های شبکه های پس انتشار
فصل هفتم: شبکه های عصبی پویا
- مقدمه
- چند مثال از شبکه های پویا
- كاربردهاي شبكه هاي پويا
- ساختار شبكه هاي پويا
- آموزش شبكه هاي پويا
- شبكه هاي عصبي تأخير زماني متمركز
- شبكه هاي عصبي تأخير زماني توزيع شده
- شبكه هاي عصبي NARX
- شبكه های Layer–Recurrent
فصل هشتم: سيستم هاي كنترلي و شبکه های عصبی
- شبكههاي عصبي كنترل پيش گويانه
- تعريف سيستم
- كنترل پيشگويانه
- استفاده از شبكة عصبي كنترل كنندة پيش گو در Simulink
- كنترل NARMA-L2
- تعريف يك مدلNARMA- L2
- كنترل كنندة NARMA- L2
- استفاده از NARMAL-l2 درSimulink
- كنترل مدل مرجع
- استفاده از كنترل كنندة مدل مرجع در Simulink
- ورود و خروج دادهها
- ورود و خروج شبكه
- ورود و خروج دادههاي آموزشي
فصل نهم: شبكه هاي شعاع مبنا
- مقدمه
- توابع شعاع مبنا
- معماري شبكه
- تابع newbre
- تابع newrb
- شبكه هاي GRNN
- شبكه هاي عصبي احتمالي (PNN )
فصل دهم: شبکه های خود سازمان و تدریج بردار
- مقدمه
- یادگیری رقابتی
- ايجاد يك شبكه عصبي رقابتي
- قاعده یادگیری کوهنن
- قاعده یادگیری بایاس
- يادگيري
- يك مثال شهودي
- نگاشت های ویژگی خود سازمان
- توپولوژي ها
- توابع فاصله
- معماري شبکه های SOFM
- ايجاد يك شبكه عصبي SOFM
- آموزش شبکه
- فاز1 :فاز مرتب سازي
- فاز2 :فاز تنظيم
- چند مثال
- مثال 1 :SOFM يك بعدي
- مثال 2 :SOFM دو بعدي
- آموزش با استفاده از الگوريتم دسته اي
- یادگیری تدریج بردار (LVQ)
- ايجاد يك شبكه LVQ
- قانون يادگيري LVQ1
- آموزش شبکه
- قانون يادگيري تكميل شده 1.2 LVQ
فصل یازدهم: شبکه های عصبی Recurrent
- مقدمه
- شبكه هاي عصبی المان
- ايجاد يك شبكه المان
- شبيه سازي اولیه شبکه
- آموزش يك شبكه المان
- شبكه هاي عصبي هاپفیلد
- معماري شبکه های هاپفیلد
- طراحي شبکه های هاپفیلد
فصل دوازدهم: فيلترهاي انطباقي و يادگيري انطباقي
- مقدمه
- مدل نورون هاي خطي
- معماري شبكه هاي انطباق پذير خطي
- یک نورون آدالاين
- خطاي ميانگين مربعات
- الگوريتم LMS
- تحليل همگرايي
- فيلترهاي انطباقي
- مثال 1 : فيلتر انطباقي
- مثال 2 :كاربرد فيلترهاي انطباقي در توابع پيشگو
- مثال 3 :كاربرد فيلترهاي انطباقي در حذف نويز
- فيلترهاي انطباقي با چند نورون
فصل سیزدهم: مثالهاي كاربردي از شبكه هاي عصبي
- مقدمه
- كاربرد شبكه هاي خطي در پردازش سيگنال ها
- تعريف مسئله
- طراحي شبكه
- تست شبكه
- نتيجه گيري
- كاربرد شبكه هاي خطي در پیش گویی انطباقی
- تعريف مسئله
- تعريف شبكه
- آموزش شبكه
- تست شبكه
- نتيجه گيري
- كاربرد شبكه هاي المان در تشخيص دامنۀ سيگنال
- تعريف مسئله
- تعريف شبكه
- آموزش شبكه
- عموميت شبكه
- كاربرد شبكه هاي عصبي در تشخيص حروف لاتین
- تعريف مسئله
- تعريف شبكه
- كارايي سيستم
- نتیجه گیری
فصل چهاردهم: مباحث پيشرفته در طراحی معماری شبکه های عصبی
- شبكه هاي سفارشي
- نمونه اي از شبكه هاي سفارشي
- تعريف شبكه
- خصوصیات مربوط به معماري شبکه
- خصوصيات Subobject
- توابع شبكه
- مقادير وزن ها و باياس ها
- رفتار شبكه
- مقداردهي آغازين
- آموزش
- توابع سفارشي
- توابع شبيه سازي
- توابع انتقال
- توابع ورودي شبكه
- توابع وزن
- توابع مقداردهی آغازین
- توابع مقداردهی آغازین شبکه
- توابع مقداردهی آغازین لایهها
- توابع مقداردهی آغازین وزنها و بایاسها
- توابع یادگیری
- توابع آموزشی
- توابع انطباق
- توابع کارایی
- توابع یادگیری وزنها و بایاسها
- توابع نگاشت خودسازمان
- توابع توپولوژی
- توابع فاصله
- منابع
























هیچ نظری ثبت نشده است