چکیده: شبکههای عصبی مصنوعی از مباحث جدیدی است که دانشمندان علوم کامپیوتر به آن علاقمند شدهاند و برای پیشرفت هرچه بیشتر علوم کامپیوتر وقت و هزینه بسیاری را صرف آن کرده و میکنند.
این موضوع با ایده گرفتن از سیستم عصبی بدن انسان و با هدف شبیهسازی هرچه بیشتر کامپیوتر به انسان شکل گرفت و تا حال به خوبی پیشرفته است.
از جمله کاربردهای این بحث میتوان از شناسایی الگوها, پردازش تصویر و رویت, هوش مصنوعی, کنترل رباتها و موارد بسیار دیگر نام برد.
ما در این مقاله پس از مقدمه به مسائل در خور شبکههای عصبی مصنوعی و نیز کاربردهای آن خواهیم پرداخت, در ادامه 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 )که برای معلم روشن است به شبکه عصبی منتقل می شود و پس از این مرحله عملا می توان بجای معلم از شبکه عصبی استفاده کرد تا یادگیری تکمیل شود .
1.یادگیری با ناظر در یادگیری با ناظر به قانون یاد گیری مجموعه ای از زوجهای داده ها به نام داده های یادگیری (Pi,Ti)i={1 … l } می دهند که در آن Pi ورودی به شبکه و 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 تا حالا به این فکر کردی که مثلا تو یه آدمیو 10 سال قبل دیدی، بعد اتفاقا امروز دوباره اونو بعد از 10 سال می بینی!
همه چی کلی تغییر کرده، صورتش، مقدار موش، صداش، قدش و خیلی چیزای دیگه.
اما تو باز میشناسیش!
خیلی جالبه ها!
آخه از کجا؟؟؟
چطوری؟؟؟
مغز آدم خیلی انعطاف پذیری داره توی تغییرات یا خطا ها، همین مغز آدم رو خیلی جالب و پیچیده می کنه!
شما نوشتن و خوندن رو یاد گرفتین!
تا حالا به این فکر کردید که دست خط هر کسی با اون یکی فرق داره اما شما همه ی اونا رو می تونید بخونید؟
این دوباره منعطف بودن مغز آدم رو می رسونه!
یا یه نکته ی دیگه، شما هر چقدر بیشتر تمرین کنید دست خطتون بهتر میشه!
اینم نشون میده مغز آدم خودشو در طی تمرین به یه معیاری که به نظرش بهتره نزدیک تر می کنه!
اما چطوری؟
مغز آدم چجوری کار میکنه؟
تا حالا از خودتون پرسیدید چجوری یه چیز جدید یاد می گیرید یا چطوری فکر می کنید؟
هر آدمی باید اینو بدونه بنظر من!
لا اقل باید یکم خودمونو بشناسیم.
مغز آدم از یه سری سلول عصبی (Neuron) تشکیل شده که هر کدوم سیگنال هایی برای هم میفرستند!
جالبه بدونید این سلول های عصبی کاری که می کنن خیلییی سادست مثلا مثل حمع دو تا عدده اما چیزی که باعث میشه بتونن این کارای پیچیدرو انجام بدن اینه که تعداد این سلول ها خیلییی زیاده!
مغز آدم حدود 10 به توان 11 تا از این سلول ها داره!
تصور این عدد خیلی آسون نیست!
هر نورون تعدادی axom داره که مثل خروجی عمل می کنن و تعداد خیلی زیادی هم dendrite که به عنوان ورودی عمل می کنن.
نورون ها یه مقدار مشخصی قدرت سیگنال نیاز دارن تا فعال شن، وقتی فعال شدن یه سیگنال الکتریکی برای سایر نورون ها میفرستن!
هر چقدر نورون ها بیشتر استفاده بشن ارتباط بینشون (axonها و dendriteها) قوی تر میشه.
حالا ما همین سیستم رو سعی می کنیم کوچیکترش رو توی کامپیوتر شبیه سازی کنیم.
کامپیوتر هایی که الان به اونا دسترسی داریم حتی قدرت پردازش 20 بیلیون نورون رو هم ندارن، ولی با تعداد کمی نورون هم می شه پاسخ های مناسبی از شبکه ی عصبی گرفت.
خوب حالا تو کامپیوتر چطوری نورون ها رو سازمان می دیم؟
نورون ها همونطوری که تو عکس می بینین توی لایه های مختلف قرار می گیرن، لایه ی اول رو لایه ی ورودی (Input Layer) می گن که ورودی ها رو میگیره و بر حسب قدرت ارتباطش با هر نورون توی لایه ی بعدی سیگنال ورودی رو به لایه ی بعد میفرسته!
از این به بعد به قدرت ارتباط هر نورون با نورون دیگه وزن (Weight) اون نورون می گیم.
مقدار هر نورون توی هر لایه به وزن و مقدار نورون های لایه ی قبلش بستگی داره.
در نهایت ما یه لایه ی خروجی داریم که توی این شکل دو تا نورون توشه!
لایه های میانی تعدادشون می تونه هر اندازه ای باشه، و تعداد نورون هاشم مثل بقیه ی لایه ها می تونه هر چقدر که بخوایم باشه.
بعدا اشاره می کنیم که چطوری انتخاب کنیم تعداد لایه ها و نورون های هر لایه رو.
حالا اینو ما درست کردیم، به چه دردی می خوره؟
یه شبکه ی عصبی مثل یه تابع عمل می کنه که به تعداد نورون های ورودی، ورودی می گیره و به تعداد نورون های خروجی هم خروجی میده!
مثلا این شبکه عصبی که تو شکل می بینید به این صورته: f(x1, x2, x3, x4, x5) = y1 , y2 حالا این تابع چه تابعیه؟
اینجاس که قدرت شبکه ی عصبی معلوم میشه!
ما میایم و به این تابع 100 تا مثال که جوابشو می دونیم میگیم و هر بار عملیات بازپخشانی (Back propagating) رو انجام میدیم!
بازپخشانی یه عملیاتیه که طی اون وزن نورون ها رو طوری تغییر میدیم که جواب های شبکه به جواب هایی که انتظار داشتیم نزدیک تر بشن!
یعنی ما در اصل یه تابع می سازیم که خودمون نمیدونیم اون تابع چی هست و فقط چند تا مثال از اون رو داریم!
بگذارید یه مثال بزنم.
مثلا شما چطوری جمع کردن رو یاد گرفتین؟
بهتون گفتن 2+2 میشه 4، 2+3 میشه 5 و ...
انقدر مثال دیدید تا فهمیدید آهان پس جمع یعنی این!
دقیقا میتونیم همین رو به کامپیوتر یاد بدیم!
یعنی یه شبکه عصبی با دو نورون ورودی طراحی می کنیم و یه لایه ی میانی با 3 تا نورون و در نهایت یه لایه ی خروجی با یه نورون (چون تابع جمع دو تا ورودی داره و یک خروجی) بعد برای کامپیوتر چند تا جواب معلوم رو میگیم!
مثلا میگیم 2 و 2 باید بده 4، 2 و 3 باید بده 5 و براش 1000 تا مثال میزنیم!
در نهایت ازش میپرسیم حالا بگو 100 و 23 چی میشه؟
(اعدادی که تا بحال برای شبکه عصبیمون مثال نزدیم).
و جواب میگیریم مثلا 123.0223!
تعجب نکنید شبکه عصبی همیشه قرار نیست جواب قطعی بده، در نهایت می تونیم به یه روشی اونو به جواب قطعی تبدیل کنیم، مثلا توی این مثال روند کردن جواب میده!
ببخشید، چرا تعداد نورون های لایه ی میانی رو گفتین 3 تا؟
" سوال خوبیه!
تعداد نورون های لایه های میانی می تونه هر چیزی باشه به جای 3، اما باید توجه داشته باشین هر نورونی که اضافه می کنیم از یه طرف گپ خطا رو کمتر می کنی اما از طرف دیگه زمان بیشتری برای پردازش می گیره و چون تعداد نورون ها زیاد شده تعداد خطا های کوچک هم زیاد تر می شن و یه خطای بزرگ رو ایجاد می کنن!
پس باید با روش های مختلف بهترین حالت رو انتخاب کنیم.
توی این مثال با آزمایش و خطا به این نتیجه رسیدیم که 3 تا بهترین نتیجرو به ما میده!
" به اون پروسه ای که طی اون مثال میزنیم و عملیات بازپخشانی رو انجام میدیم پروسه ی تعلیم یا Training می گن!
پس بطور خلاصه ما اول یه شبکه ی عصبی طراحی می کنیم که در ابتدا می تونه هر نورونش وزن تصادفی داشته باشه، بعد شبکه ی عصبیمونو تعلیم میدیم با ورودی هایی که جوابشو داریم و بعد از تعلیم دادن به اون ورودی میدیم و ازش جواب می خوایم!
مثلا توی مسابقات شبیه سازی فوتبال خیلی وقت ها تیم ها بازی های دوستانه با هم میگذارن!
هدف چیه؟
اینه که Agent ها شبکه ی عصبیشون تعلیم ببینه!
جالب نیس؟
این یعنی کامپیوتر میتونه یاد بگیره و طی یادگیریاش تصمیم بگیره!
بدون اینکه مغز داشته باشه.
--------------------