پیدایش شبکههای عصبی مصنوعی
مغر انسان به اذعان بسیاری از دانشمندان پیچیدهترین سیستمی است که تاکنون در کل گیتی مشاهدهشده و موردمطالعه قرارگرفته است؛ اما این سیستم پیچیده نه ابعادی در حد کهکشان دارد و نه تعداد اجزای سازندهاش بیشتر از پردازندههای ابررایانههای امروزی است.
پیچیدگی رازآلود این سیستم بینظیر، به اتصالهای فراوان موجود میان اجزای آن بازمیگردد. این همان چیزی است که مغز1400 گرمی انسان را از همه سیستمهای دیگر متمایز میکند.فرایندهای خودآگاه و ناخودآگاهی که در حدود جغرافیایی بدن انسان رخ میدهند، همگی تحت مدیریت مغز هستند. برخی از این فرایندها آنقدر پیچیده هستند که هیچ رایانه یا ابررایانهای در جهان امکان پردازش و انجام آن را ندارد. بااینحال، تحقیقات نشان میدهند که واحدهای سازنده مغز انسان، ازنظر سرعت عملکرد، حدود یکمیلیون بار کندتر از ترانزیستورهای مورداستفاده در تراشههای سیلیکونی CPU رایانه هستند.
سرعت و قدرت پردازش بسیار بالای مغز انسان، به ارتباطهای بسیار انبوهی بازمیگردد که در میان سلولهای سازنده مغز وجود دارد و اساساً، بدون وجود این لینکهای ارتباطی، مغز انسان هم به یک سیستم معمولی کاهش مییافت و قطعاً امکانات فعلی را نداشت.
گذشته از همه اینها، عملکرد عالی مغز در حل انواع مسائل و کارایی بالای آن، باعث شده است تا شبیهسازی مغز و قابلیتهای آن به مهمترین آرمان معماران سختافزار و نرمافزار تبدیل شود. درواقع اگر روزی فرابرسد (که البته ظاهراً خیلی هم دور نیست) که بتوانیم رایانهای در حد و اندازههای مغز انسان بسازیم، قطعاً یک انقلاب بزرگ در علم، صنعت و البته زندگی انسانها، رخ خواهد داد.
از چند دهه گذشته که رایانهها امکان پیادهسازی الگوریتمهای محاسباتی را فراهم ساختهاند، در راستای شبیهسازی رفتار محاسباتی مغز انسان، کارهای پژوهشی بسیاری از سوی متخصصین علوم رایانه، مهندسین و همچنین ریاضیدانها شروعشده است که نتایج کار آنها، در شاخهای از علم هوش مصنوعی و در زیرشاخه هوش محاسباتی تحت عنوان موضوع شبکههای عصبی مصنوعی یا Artificial Neural Networks (ANNs) طبقهبندیشده است. در مبحث شبکههای عصبی مصنوعی، مدلهای ریاضی و نرمافزاری متعددی با الهام گرفتن از مغز انسان پیشنهادشدهاند که برای حل گستره وسیعی از مسائل علمی، مهندسی و کاربردی در حوزههای مختلف کاربرد دارند.
کاربردهای شبکههای عصبی مصنوعی
امروز بهقدری استفاده از سیستمهای هوشمند و بهویژه شبکه عصبی مصنوعی گسترده شده است که میتوان این ابزارها را در ردیف عملیات پایه ریاضی و بهعنوان ابزارهای عمومی و مشترک طبقهبندی کرد. چراکه کمتر رشته دانشگاهی است که نیازی به تحلیل، تصمیمگیری، تخمین، پیشبینی، طراحی و ساخت داشته باشد و در آن از موضوع شبکههای عصبی استفادهنشده باشد. فهرستی که در ادامه آمده است، یک فهرست نهچندان کامل است؛ اما همین فهرست مختصر نیز گستردگی کاربردهای شبکههای عصبی مصنوعی را تا حدود زیادی به تصویر میکشد.
انواع شبکههای عصبی مصنوعی
انواع مختلفی از مدلهای محاسباتی تحت عنوان کلی شبکههای عصبی مصنوعی معرفیشدهاند که هر یک برای دستهای از کاربردها قابلاستفاده هستند و در هرکدام از وجه مشخصی از قابلیتها و خصوصیات مغز انسان الهام گرفتهشده است.
در همه این مدلها، یک ساختار ریاضی در نظر گرفتهشده است که البته بهصورت گرافیکی هم قابلنمایش دادن است و یک سری پارامترها و پیچهای تنظیم دارد. این ساختار کلی، توسط یک الگوریتم یادگیری یا تربیت (Training Algorithm) آنقدر تنظیم و بهینه میشود که بتواند رفتار مناسبی را از خود نشان دهد.
نگاهی به فرایند یادگیری در مغز انسان نیز نشان میدهد که درواقع ما نیز در مغزمان فرایندی مشابه را تجربه میکنیم و همه مهارتها، دانستهها و خاطرات ما، در اثر تضعیف یا تقویت ارتباط میان سلولهای عصبی مغز شکل میگیرند. این تقویت و تضعیف در زبان ریاضی، خود را بهصورت تنظیم یک پارامتر موسوم به وزن یا Weight مدلسازی و توصیف میکند.
اما طرز نگاه مدلهای مختلف شبکههای عصبی مصنوعی کاملاً متفاوت است و هر یک، تنها بخشی از قابلیتهای یادگیری و تطبیق مغز انسان را هدف قرار داده و تقلید کردهاند. در ادامه بهمرور انواع مختلف شبکههای عصبی پرداختهایم که مطالعه آن در ایجاد یک آشنایی اولیه بسیار مؤثر خواهد بود.
پرسپترون چندلایه یا MLP
یکی از پایهایترین مدلهای عصبی موجود، مدل پرسپترون چندلایه یا Multi-Layer Perceptron بهاختصار MLP است که عملکرد انتقالی مغز انسان را شبیهسازی میکند. در این نوع شبکه عصبی، بیشتر رفتار شبکهای مغز انسان و انتشار سیگنال در آن مدنظر بوده است و ازاینرو، گهگاه بانام شبکههای پیشخور Feedforward Networks نیز خوانده میشوند. هر یک از سلولهای عصبی مغز انسان، موسوم به نورون پس از دریافت ورودی از یک سلول عصبی یا غیرعصبی دیگر، پردازشی روی آن انجام میدهند و نتیجه را به یک سلول دیگر عصبی یا غیرعصبی انتقال میدهند. این رفتار تا حصول نتیجهای مشخص ادامه دارد که احتمالاً درنهایت منجر به یک تصمیم، پردازش، تفکر و یا حرکت خواهد شد.
شبکههای عصبی شعاعی یا RBF
مشابه الگوی شبکههای عصبی MLP، نوع دیگری از شبکههای عصبی وجود دارند که در آنها، واحدهای پردازنده، ازنظر پردازشی بر موقعیت خاصی متمرکز هستند. این تمرکز، از طریق توابع شعاعی یا Radial Basis Functions بهاختصار RBF مدلسازی میشود. ازنظر ساختار کلی، شبکههای عصبی RBF تفاوت چندانی با شبکههای MLP ندارند و صرفاً نوع پردازشی که نورونها روی ورودهایشان انجام میدهند، متفاوت است. بااینحال شبکههای RBF غالباً دارای فرایند یادگیری و آمادهسازی سریعتری هستند. درواقع، به دلیل تمرکز نورونها بر محدوده عملکردی خاص، کار تنظیم آنها راحتتر خواهد بود.
ماشینهای بردار پشتیبان یا SVM
در شبکههای عصبی MLP و RBF، غالباً توجه بر بهبود ساختار شبکه عصبی است، بهنحویکه خطای تخمین و میزان اشتباههای شبکه عصبی کمینه شود؛ اما در نوع خاصی از شبکه عصبی، موسوم به ماشین بردار پشتیبان یا Support Vector Machine بهاختصار SVM صرفاً بر روی کاهش ریسک عملیاتی مربوط به عدم عملکرد صحیح، تمرکز میشود. ساختار یک شبکه SVMاشتراکهای زیادی با شبکه عصبی MLP دارد و تفاوت اصلی آن عملاً در شیوه یادگیری است.
نگاشتهای خودسازمانده یا SOM
شبکه عصبی کوهونن (Kohonen) یا نگاشت خودسازمانده و یا Self-Organizing Map بهاختصار SOM نوع خاصی از شبکه عصبی است که ازنظر شیوه عملکرد، ساختار و کاربرد، کاملاً با انواع شبکه عصبی که پیشازاین موردبررسی قرار گرفتند، متفاوت است. ایده اصلی نگاشت خودسازمانده، از تقسیم عملکردی ناحیه قشری مغز، الهام گرفتهشده است و کاربرد اصلی آن در حل مسائلی است که به مسائل «یادگیری غیر نظارتشده» معروف هستند. درواقع کارکرد اصلی یک SOMدر پیدا کردن شباهتها و دستههای مشابه در میان انبوهی از دادههایی است که در اختیار آن قرارگرفته است. این وضعیت مشابه کاری است که قشر مغز انسان انجام میدهد و انبوهی از ورودیهای حسی و حرکتی به مغز را در گروههای مشابهی طبقهبندی (بهتر است بگوییم خوشهبندی) کرده است.
یادگیرنده رقمیساز بردار یا LVQ
این نوع خاص شبکه عصبی، تعمیم ایده شبکههای عصبی SOM برای حل مسائل یادگیری نظارتشده است. از طرفی شبکه عصبی LVQ یا Learning Vector Quantizationمیتواند به این صورت تعبیر شود که گویا شبکه عصبی MLP با یک رویکرد متفاوت کاری را که باید انجام بدهد یاد میگیرد.
اصلیترین کاربرد این نوع شبکه عصبی در حل مسائل طبقهبندی است که گستره وسیعی از کاربردهای سیستمهای هوشمند را پوشش میدهد.
شبکه عصبی هاپفیلد یا Hopfield
این نوع شبکه عصبی بیشتر دارای ماهیتی شبیه به یک سیستم دینامیکی است که دو یا چند نقطه تعادل پایدار دارد. این سیستم با شروع از هر شرایط اولیه نهایتاً به یکی از نقاط تعادلش همگرا میشود. همگرایی به هر نقطه تعادل، بهعنوان تشخیصی است که شبکه عصبی آن را ایجاد کرده است و درواقع میتواند بهعنوان یک رویکرد برای حل مسائل طبقهبندی استفاده شود. این سیستم یکی از قدیمیترین انواع شبکههای عصبی است که دارای ساختار بازگشتی است و در ساختار آن فیدبکهای داخلی وجود دارند.