محبوبترینها
چگونه با ثبت آگهی رایگان در سایت های نیازمندیها، کسب و کارتان را به دیگران معرفی کنید؟
بهترین لوله برای لوله کشی آب ساختمان
دانلود آهنگ های برتر ایرانی و خارجی 2024
ماندگاری بیشتر محصولات باغ شما با این روش ساده!
بارشهای سیلآسا در راه است! آیا خانه شما آماده است؟
بارشهای سیلآسا در راه است! آیا خانه شما آماده است؟
قیمت انواع دستگاه تصفیه آب خانگی در ایران
نمایش جنگ دینامیت شو در تهران [از بیوگرافی میلاد صالح پور تا خرید بلیط]
9 روش جرم گیری ماشین لباسشویی سامسونگ برای از بین بردن بوی بد
ساندویچ پانل: بهترین گزینه برای ساخت و ساز سریع
خرید بیمه، استعلام و مقایسه انواع بیمه درمان ✅?
صفحه اول
آرشیو مطالب
ورود/عضویت
هواشناسی
قیمت طلا سکه و ارز
قیمت خودرو
مطالب در سایت شما
تبادل لینک
ارتباط با ما
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
آمار وبسایت
تعداد کل بازدیدها :
1846640070
شبكه هاي عصبی مصنوعی و كاربرد های آن
واضح آرشیو وب فارسی:فان پاتوق: چکیده:
شبکه.های عصبی مصنوعی از مباحث جدیدی است که دانشمندان علوم کامپیوتر به آن علاقمند شده.اند و برای پیشرفت هرچه بیشتر علوم کامپیوتر وقت و هزینه بسیاری را صرف آن کرده و می.کنند. این موضوع با ایده گرفتن از سیستم عصبی بدن انسان و با هدف شبیه.سازی هرچه بیشتر کامپیوتر به انسان شکل گرفت و تا حال به خوبی پیشرفته است. از جمله کاربردهای این بحث می.توان از شناسایی الگوها, پردازش تصویر و رویت, هوش مصنوعی, کنترل رباتها و موارد بسیار دیگر نام برد. ما در این مقاله پس از مقدمه به مسائل در خور شبکه.های عصبی مصنوعی و نیز کاربردهای آن خواهیم پرداخت, در ادامه Perceptron ها را که یکی از مهمترین الگوریتم.های شبکه.های عصبی مصنوعی می.باشد معرفی می.کنیم.
1- مقدمه
1-1- ایده پیدایش شبکه.های عصبی مصنوعی
آیا کامپیوتر میتواند همان نوع از محاسباتی را که یک فرد هوشمند انجام میدهد به کار گیرد؟
بسیاری از دانشمندان عقیده داشته ودارند که این بحث باید مورد توجه قرار گیرد. شبکه.های عصبی در حل مسائل یک جهت جدید و متمایز نسبت به کامپیترهای عمومی می.گشود. کامپیوترهای عمومی از یک الگوریتم استفاده می.کنند یعنی برای حل مسائل از یک سری دستورات از پیش تعیین شده پیروی می.کنند مگر در مواقع ویژه.ای که کامپیوتر نیاز به یک.سری اطلاعات برای حل مسئله دارد. و همین مسئله توانایی پردازش را از کامپیوترهای عمومی به مسائلی که ما قبلا فهمیده.ایم و روش حل آنها را شناخته.ایم محدود می.کند و تنها سرعت عمل و قدرت در حل نمونه.های بزرگتر را به همراه دارند. اما کامپیوترها باید به قدری مفید باشند که بتوانند کارهایی را انجام دهند که واقعا ما نمی.دانیم چگونه باید آنها را انجام دهیم.
1-2- بررسی سلولهای مغزی افراد
تحقیق درباره سلولهای مغزی افراد و همچنین شناخت ..Neuron ها یا رشته.های مغزی وبیان یک راه نسبتا متفاوت که یک سیستم هوشمند را بنا می.کند شروع شد. مغز بشر متشکل از میلیونها نرون عصبی منحصر بفرد است واین رشته.های عصبی به اشکال و اندازه.های مختلف تغییر می.کنند.. هر نرون عموما یک هسته دارد و یک.سری سلولهای عصبی Axon (آکسون)ـ که علائم خروجی را به سلولهای عصبی نرون دیگر حمل می.کنندـ و Dendrite ها (شاخه.های سلولهای عصبی). علائم در سلولهای عصبی میان شاخه.های سلولهای عصبی ونواحی خروجی جریان دارند.
در اینجا برای حالت برانگیزش باید آشفتگی از یک حدی تجاوز کند که آستانه یا سرحد نامیده می.شود و پس از برانگیزش نرون.ها پیامهایی برای نرون.های دیگر می.فرستند و خود را برای دریافت و پاسخ به اطلاعات عمومی آماده می.کنند.
1-3- تاریخچه
شبکه.های عصبی دهها سال است که جلب توجه می.کنند وتاکنون راه حلهایی برای استفاده از هوش بشری ارائه شده است. اولین نرون مصنوعی درسال 1943 توسط نروفیزیولوژیست وارن.مک.کالوک و منطق دان والتر.پیتز تولید شد.در دهه 60 به دلایلی که خارج از بحث این مقاله است مردم به.سوی شبکه.های عصبی متمایل شدند و تنها در دهه 80 دانشمندان توانایی.های واقعی شبکه.های عصبی را دیدند.
2- شبکه.های عصبی مصنوعی
2-1- شبکه.های عصبی مصنوعی
شبکه.های عصبی شبیه به مغز انسان اطلاعاتی را پردازش می.کنند. شبکه. از تعداد زیادی سلولهای عصبی(Neuron ها) تشکیل شده با پردازشی بسیار بزرگ و به.هم پیوسته که در حل موازی مسائل ویژه مشغول به کارند.
یادگیری شبکه.های عصبی از طریق مثالهاست. آنها برای انجام یک کار خاص برنامه.ریزی نشده.اند. مثالها باید با دقت بسیار بالایی انتخاب شوند والا زمان مفید هدر خواهد رفت و یا حتی ممکن است شبکه به طور ناقص دایر شود و در اینجا راهی برای فهمیدن اینکه سیستم معیوب است یا خیر وجود ندارد مگر اینکه خطایی رخ دهد.
شبکه.های عصبی مصنوعی یک ترکیبی از مجموعه نرون.هاست و البته نرونهای مصنوعی.ای که بسیار شبیه به نرونهای زیستی کار می.کنند. و بدین گونه است که ورودیهای زیادی با وزنهای مختلف می.گیرد و یک خروجی که به ورودی وابسته است تولید می.کند. نرونهای زیستی می.توانند در حال برانگیزش باشند یا نباشند. ( وقتی یک نرون برانگیخته می.شود ضربه علائم خروجی آن مقداری کمتر از 100 هرتز است)
شبکه.های عصبی استفاده وسیعی در شناسایی الگوها دارند زیرا از خودشان قابلیت آن را دارند که بطور عمومی به ورودی.های غیر منتظره نیز پاسخ دهند. در طول ساخت نرونها می.آموزند که چگونه الگوهای ویژه گوناگون را تشخیص دهند. اگر الگویی پذیرفته شود در حالی که در طول اجرا ورودی با خروجی مرتبط نباشد، نرون از مجموعه.ای از الگوهایی که سابقا آموخته خروجیی را که شبیه به الگو می.باشد وکمترین تفاوت را با ورودی دارد انتخاب می.کند. این روال عموما فراخوانی می.شود.
مثال:
وقتی که ورودی نرون 1111 باشد چهار ورودی بر حسب برانگیزش مرتب شده.اند و وقتی ورودی.های 0000 را داریم نرون برای برانگیزش مرتب نیست. قاعده عمومی این است که نرونها مایلند برانگیخته شوند وقتی که ورودی.ها 0111 ، 1011 ، 1101 ، 1110 یا 1111 باشند و در صورتی که ورودی آنها 1000 ، 0001 ، 0010 ، 0100 یا 0000 باشند مایل به برانگیخته شدن نیستند.
شناسایی الگوهای پیچیده سطح بالا می.تواند به وسیله شبکه.ای از نرونها انجام شود و بدین ترتیب نام آن را شبکه.های عصبی مصنوعی گذاشتند. اکنون شبکه.های عصبی کاربردهای زیادی دارند(درمنطق وکلام و شناسایی عکسها)البته شناسایی الگوهامی.تواند به.طور موفقیت آمیز بر روی کامپیوترهای عمومی انجام شود. این شبکه.های عمومی که برای شناسایی الگوها استفاده می.شوند Feed-Forward نامیده می.شدند زیرا آنها یک بازخورد (Feed-Back) داشتند. آنها به.طور ساده ورودی.ها را با خروجی.ها می.آمیختند. اما شناسایی الگوها به تدریج کاملتر شد به.طوریکه بر روی کامپیوترهای عمومی با سیستم خاص خودشان به.سختی انجام می.شد پس برای شناسایی الگوها شبکه.های Feed-Forward کافی نبودند.
در شبکه.های عصبی خروجی هر نرون به ورودی نرونهای مجاورش متصل شده است. شبکه.های عصبی نمی.توانند معجزه کنند اما اگر به درستی استفاده شوند نتایج شگفت.انگیزی خواهند داشت.
2-2- مشخصات مسائل در خور شبکه.های عصبی مصنوعی ANN(Artificial Neural Network)
تقلید از ساختارهای محاسباتی سیستم زیستی ممکن است ایده اصلی نمونه.های محاسباتی برای ساخت کلاسهایی از مسائل باشد. از جمله این مسائل می.توان از مسائل مشکل NP که شامل مسائل طبقه.بندی شده، زمانبندی.شده، جستجو وغیره نام برد، کلاس مسائل شناسایی الگوها، افراد و موضوعات مشخص را در دیدار و تماس با آنها می.شناسد و کلاس مربوط به داده.های ناقص، اشتباه، متناقض، فازی و احتمالی. این مسائل توسط همه یا برخی از موارد زیر توصیف می.شوند:
یک فضای مسئله با بعد بزرگ، پیچیده، ناشناخته با اثرات متقابل پیچیده ریاضی.وار بین متغییرها و یک فضای راه.حل که ممکن است خالی باشد(شامل یک راه.حل یکتا یا بیشتر ، شامل تعدادی از راه.حلهای مفید)به نظر می.رسد ANN ها راه.حلهایی برای مسائلی که با ورودی.های حسی بیشتر درگیرند ارائه می.دهد(صحبت.کردن، دیدن، شناسایی دستخط و…).
2-3- کاربردهای شبکه.های عصبی مصنوعی ANN
می.توان موارد زیر را از کاربردهای شبکه.های عصبی مصنوعی ذکر کرد:
پردازش تصویر و دید( Image processing and computer vision )
پردازش علائم( Signal processing ): شامل ریخت.شناسی و تجزیه و تحلیل علائم مربوط به زمین.لرزه.ها و…
شناسایی الگوها( Pattern recognition ): شامل شناسایی چهره، اثر انگشت، تشخیص نوع صدا و نوع صحبت کردن، دستخط و …
پزشکی( Medicine ): شامل تجزیه و تحلیل و تشخیص علائم دستگاه ضربان.نگار قلب (الکتروکاردیوگرافیک)، تشخیص امراض گوناگون و …
سیستم.های نظامی( Military systems ): شامل ردیابی مین.های زیردریایی، دسته.بندی صداهای نابه.هنجار و مخل در رادارها و شناسایی گوینده رزمی.
سیستم.های تجاری( Financial systems ): شامل تجزیه و تحلیل انبار مغازه.ها، ارزیابی واقعی املاک و …
برنامه.ریزی، کنترل و جستجو( Planning, control, and search ): شامل اجرای موازی مسائل و کنترل رباتها.
هوش مصنوعی( Artificial intelligence ): شامل برخی سیستم.های طبی و اجرای سیستم.های خبره.
سیستم.های قدرت( Power systems ): شامل برآورد وضعیت سیستم، ردیابی سریع و دسته.بندی ردیابی، ردیابی خطا و ترمیم آن، پیش.بینی و برآورد تخمین امنیت.
--انواع یادگیری برای شبکه های عصبی:1.یادگیری با ناظر
در یادگیری با ناظر به قانون یاد گیری مجموعه ای از زوجهای داده ها به نام داده های یادگیری (Pi,Ti)i={1 … l } می دهند که در آن Pi ورودی به شبکه و Ti خروجی مطلوب شبکه برای ورودی Pi است. پس از اعمال ورودی Pi به شبکه عصبی در خروجی شبکه ai با Ti مقایسه شده و سپس خطای یادگیری محاسبه و از آن در جهت تنظیم پارامترهای شبکه استفاده می شود به گونه ای که اگر دفعه بعد به شبکه همان ورودی Pi اعمال شود خروجی شبکه به Ti نزدیکتر می گردد با توجه به این نکته که معلم سیستمی است که بر محیط وقوف دارد ( مثلا می داند که برای ورودی Pi خروجی مطلوب Ti است ).توجه داریم که محیط برای شبکه عصبی مجهول است . در لحظه k بردار ورودی Pi(k) با تابع توضیع احتمال معینی که برای شبکه عصبی نا معلوماست انتخاب و بطور همزمان به شبکه عصبی و معلم اعمال می شود . جواب مطلوب Ti(k) نیز توسط معلم به شبکه عصبی داده می شود . در حقیقت پاسخ مطلوب پاسخ بهینه ای است که شبکه عصبی برای ورودی مفروض باید به آن برسد . پارامترهای شبکه عصبی توسط دو سیگنال ورودی و خطا تنظیم می شود.به این صورت که پس از چند تکرار الگوریتم یادگیری که عموما توسط معادله تفاضلی بیان می شودبه پارامترهایی در فضای پارامترهای شبکه همگرا می شوند که برای آنها خطای یادگیری بسیار کوچک است و عملا شبکه عصبی شبکه عصبی معادل معلم می شود . یا به عبارتی دیگر اطلاعات مربوط به محیط (نگاشت بین TiوPi )که برای معلم روشن است به شبکه عصبی منتقل می شود و پس از این مرحله عملا می توان بجای معلم از شبکه عصبی استفاده کرد تا یادگیری تکمیل شود .
--2.یادگیری تشدیدی:
یک اشکال یادگیری با ناظر این است که شبکه عصبی ممکن است بدون معلم نتواند مواضع جدیدی را که توسط مجموعه داده های جدید تجربی پوشانده نشده است یاد بگیرد . یادگیری از نوع تشدیدی این محدودیت را برطرف می کند . این نوع یادگیری بطور on-line صورت می گیرد در حالی که یادگیری با ناظر را به دو صورت on-line & off-line می توان انجام داد. در حالت off-line می توان از یک سیستم محاسب با در اختیار داشتن داده های یادگیری استفاده کرد و طراحی شبکه عصبی را به پایان رساند . پس از مرحله طراحی و یادگیری شبکه عصبی به عنوان یک سیستم استاتیکی عمل می کند . اما در یادگیری on-line شبکه عصبی همراه با خود سیستم یادگیر در حال انجام کار است و از این رو مثل یک سیستم دینامیکی عمل می کند .
یادگیری از نوع تشدیدی یک یادگیری on-line از یک نگاشت ورودی-خروجی است . این کار از طریق یک پروسه سعی و خطا به صورتی انجام می پذیرد که یک شاخص اجرایی موسوم به سیگنال تشدید ماکزیمم شود و بنابر این الگوریتم نوعی از یادگیری با ناظر است که در آن به جای فراهم نمودن جواب واقعی ، به شبکه عددی که نشانگر میزان عملکرد شبکه است ارایه می شود. این بدین معنی است که اگر شبکه عصبی پارامترهایش را به گونه ای تغییر داد که منجر به یک حالت مساعد شد آنگاه تمایل سیستم یادگیر جهت تولید آن عمل خاص تقویت یا تشدید می شود . در غیر این صورت تمایل شبکه عصبی جهت تولید آن عمل خاص تضعیف می شود . یادگیری تقویتی مثل یادگیری با ناظر نیست و این الگوریتم بیشتر برای سیستمهای کنترلی کاربرد دارد .
--3. یادگیری بدون ناظر
در یادگیری بدون ناظر یا یادگیری خود سامانده پارامترهای شبکه عصبی تنها توسط پاسخ سیستم اصلاح و تنظیم می شوند . به عبارتی تنها اطلاعات دریافتی از محیط به شبکه را برداغرهای ورودی تشکیل می دهند. و در مقایسه با مورد بالا (یادگیری با ناظر) بردار جواب مطلوب به شبکه اعمال نمی شود . به عبارتی به شبکه عصبی هیچ نمونه ای از تابعی که قرار است بیاموزد داده نمی شود . در عمل می بینیم که یادگیری با ناظر در مورد شبکه هایی که از تعداد زیادی لایه های نرونی تشکیل شده باشند بسیار کند عمل می کند و در این گونه موارد تلفیق یادگیری با ناظر و بدون ناظر پیشنهاد می گردد .
2-4- زمینه.ای در مورد perceptron
Perceptron های ساده
یک خانواده ساده از شبکه.های عصبی مدل perceptron می.باشد. در یک دسته.بندی تک.خروجی، تعداد n ورودی و یک خروجی دارد . با هر ورودی یک ضریب وزنی Wi و با هر خروجی یک مقدار آستانه q مرتبط است.
Perceptron به گونه زیر عمل می.کند:
ورودی.های Perceptron یک بردار ورودی از n مقدار حقیقی است.
Perceptron مجموع وزنها را محاسبه می.کند a= ه Wi.Xi. این مقدار با مقدار آستانه q مقایسه می.شود. اگر این مقدار از مقدار آستانه کوچکتر باشد خروجی 0 است و در غیر این صورت 1 است.
قدرت Perceptron
به وسیله تنظیم اعداد ورودی، وزن آنها و مقدار آستانه می.توان یک Perceptron برای انجام نسبتا خوب محاسبات گوناگون طراحی کرد. برای مثال توابع منطقی بولین مانند AND ، OR و NOT را می.توان به وسیله Perceptron طراحی کرد و هر مدار منطقی دیگر را به وسیله گیتهای AND و NOT یا AND و OR طراحی کرد. دسته.های زیادی از Perceptronها ممکن است خروجی.های دسته.های دیگر را به عنوان ورودی خود درخواست کنند.
به عنوان مثالی ازPerceptron ها می.توان یک تشخیص دهنده قالب متن را نام برد. حرفA درآرایه.ای 5*5 به.رمز درمی.آید(encode می.شود). این متن(حرف) به.وسیله یک Perceptron با 25 ورودی تشخیص داده می.شود که در آن وزنها مقادیری برابر با مقادیر عددی داخل آرایه را می.گیرند و مقدار آســتانه برابر است با: e-25 =q که در آن 0 < e < 1 .
خروجی Perceptron 1 است اگر و فقط اگر ورودی آن از 1 و 1- هایی باشد که عینا در آرایه آمده است.
دنباله.های Perceptron
یکی از خصوصیات جالب Perception این است که آنها می.توانند به وسیله مثالهای مثبت و منفی ( صحیح و اشتباه) برای انجام توابع دسته.بندی شده مخصوص بارها مرتب شوند.
حال به یک مثال ساده از Perceptron با دو ورودیX1 وX2 ، که تشخیص می.دهد که کدام.یک از دو کلاس، عناصر متعلق به خودش را دارد. ما فرض می.کنیم که این Perceptron دو طرح از کارکترهای چاپ شده از یک متن را بررسی کند، خروجی 1 است اگر و فقط اگر کاراکتر رقم 8 باشد. فرض کنیم که X1 بیانگر تعداد حفره.های کاراکتر است و X2 درجه راستی سمت چپ کاراکتر را نشان می.دهد. ما با 4 ورودی .
اگر ما perceptron را در اول کار با وزنهایی برابر 0 و مقدار آستانه را برابر 10 مقداردهی کنیم یک رده.بندی از همه مثالهای منفی انجام داده.ایم. با قرار دادن رده.بندی.های نادرست از 8 ، مقادیر ورودی از مثال 8 با بعضی فاکتورها مثل d جمع می.شوند و تولیدات جدید با وزنهای متناظر با ایجاد می.شوند.
فرض کنیم 1=d پس وزن ورودی.ها از 0 به 1 و 2 رشد پیدا می.کند. حال در اینجا 5 = a به دست می.آید که هنوز از مقدار آستانه 10 کوچکتر است. مثال هنوز به رده.بندی صحیحی نرسیده است واین قدم دنباله باید تکرار شود. بعد از دو قدم وزنها برابر 2 و 4 می.شوند که مقدار 10 = a را نتیجه می.دهد که برابر مقدار آستانه است و مثال مثبت از 8 به طور صحیح دسته.بندی شده است. از آنجا که ضرایب وزنی تغییر کرده بودند لازم است که در همه مثالها رده.بندی.ها بازنشان ( Reset ) شوند. این را می.توان به سادگی دید که مثال B رده.بندی نادرستی است زیرا با وزنهای 2 و 4 داریم 24 = a ولی این حرف مورد نظر ما نیست، چون این مرحله را پیش رفته.ایم لازم است که d.1 از W1 و d.2 از W2 کم شود تا رده.بندی نادرستی از B ثابت شود. به هر حال یک رده.بندی از 8 را دوباره بیرون می.دهد.
بعدها موقع بروز خطا ما وزنها را برای درست کردن خطاهای رده.بندی اصلاح می.کنیم. اگر مثالها دارای خاصیت صحیحی باشند وزنها در مجموعه.ای از مقادیری که به درستی روی هر ورودی کار می.کنند قرار می.گیرند.
قضیه بنیادی دنباله.ها:
یک خصوصیت قابل توجه perceptron این است که آنها می.توانند دنباله.ای از رده.بندی صحیح مثالهای مثبت ومنفی باشند.
فرض کنیم: X = X+ ب X-
X+ : مجموعه..ای از مثالهای مثبت
X- : مجموعه..ای از مثالهای منفی
گوییم که رشته بی.کران S x= X1 , X2 , …, Xk ,… یک رشته متوالی(ترتیبی) برای X است در صورتی که هر Xi یک مثال در X است و هر عنصر از X اغلب به طور نامحدود در Sx رخ می.دهد(نمایان می.شود).
فرض کنیم Wk ضریب وزنی در سطح k دنباله باشد. وزن اولیه می.تواند به صورت قراردادی باشد (برای مثال W1=0 ). حال رشته استاندارد حاصله، وزنها را به صورت زیر ارتقا می.دهد:
بسته به استرادژی مورد نظر ممکن است مقادیر C k همگی یکسان باشند یا ممکن است با k تغییر کنند.
قضیه 1)
باشد و یک بردار حل وزنها برای X وجود داشته باشد, در این صورت رویه رشته استاندارد باید بعد از یک تعداد فرض کنیم یک مجموعه از رشته نمونه X و هر رشته ترتیبی برای آن داریم, اگر Ck یک ثابت مثبت مراحل مشخص یک راه.حل پیدا کند به طوری که اگر برای بعضی k0 ها داشته باشیم:
WK0 = WK0+1 = WK0+2 = …
که WK0 یک راه.حل برای X است.
بنابراین ما می.توانیم با استفاده از شبکه.های عصبی هر چه بیشتر به شبیه.سازی انسان توسط کامپیوترها نزدیک شویم به منظور واگذاری کارهای تکراری, وقت.گیر و مسائلی که با توجه به پیشرفت بشری دیگر درخور بشر نیست.
این صفحه را در گوگل محبوب کنید
[ارسال شده از: فان پاتوق]
[مشاهده در: www.funpatogh.com]
[تعداد بازديد از اين مطلب: 3850]
-
گوناگون
پربازدیدترینها