شبكههاي عصبي: رهيافتي نوين در پيشبيني آينده
اگر عضو یکی از شبکههای زیر هستید میتوانید این مطلب را به شبکهی خود ارسال کنید:
[28 Apr 2009]
[ سید علیرضا حجازی]
در سال 1957 نظريهپردازي به نام سیمون[1] اين جملهها را در يكي از آثارش نوشت:
"هدف من متعجب ساختن شما نیست، اما سادهترین راه براي خلاصه نمودن آنچه در ذهن دارم گفتن این مطلب است که اينك در دنیا، ماشینهایی وجود دارند که میتوانند فکر کنند، یاد بگیرند و خلق کنند. افزون بر اين، توانایی آنها برای انجام چنین کارهایی رو به افزایش است و زمانی فرا خواهد رسيد كه گسترهای از مسایل که ماشین ها قادر به حل آنها باشند با مجموعه مسایلي که انسان قادر به حل آن است، برابری کند".
شايد این پیشگوییها اغراق آمیز به نظر برسند، اما برخي از پیشبینیهای سیمون، واقعیتر بودند. در سال 1958، او پیشبینی کرد که در 10 سال آینده، رایانهها قادر خواهند بود قهرمانان شطرنج باشند و یک قضیة جدید ریاضی توسط رایانه اثبات خواهد شد و البته چنين نيز شد!
امروز نيم قرن از رويا پردازيهاي سيمون ميگذرد و شايد ميزان پيشرفت بشر در علومي مانند "هوش مصنوعي" كه الهام گرفته از رفتار طبيعي سامانه عصبي و مغز انسان است براي خود او نيز چندان مشخص نبود، اما واقعيت اين است كه انسان قرن 21 به مدد تلاش خستگيناپذير در كاوشهاي دانشبنيان خود توانسته مرزهاي دانش را يكي پس از ديگري در نوردد و به افقهاي تازهاي دست يابد.
با اين حال، دانشمندان هرچه بيشتر در خصوص مغز بشر به پژوهش ميپردازند، بيشتر در مييابند که آگاهي كامل از كاركردهاي مغز بشر دست نيافتنيتر از آنچيزي است كه تاكنون پنداشته شده است. تا به حال در در مورد مغز و ساختار سيستم عصبي انسان اطلاعات زيادي بهدست آمده، اما پيادهسازي ساختاري كامل با پيچيدگي در حد مغز انسان بر اساس اطلاعات و فناوري امروز ميسر نشده است. اين ناتواني موجب توقف كوششهاي بشري نشده، و پژوهشگران مسير ديگري را در پيش گرفتهاند و با نگاه بخشي و جزئي به كاركردهاي سامانه عصبي در صدد محقق ساختن هدف و آرزوي ديرين خود بر آمدهاند. اما اين هدف يا آرزوي ديرين چيست؟
از هنگامي كه انسان به وجود مغز در كالبد خود پي برد و با كاركردهاي شگفتانگيز آن به تدريج آشنايي يافت، كوشش كرد نمونهاي مصنوعي از آن را به وجود آورد و از آن در انجام امور فكري و محاسباتي بهرهبرداري نمايد. ساختن يك مغز مصنوعي هيچگاه محقق نشد، اما تلاش براي اين آرزوي به ظاهر دست نيافتني راه ديگري را به روي آدمي گشود و ذهنهاي پژوهشگر را به جاي "مغز مصنوعي" متوجه "هوش مصنوعي" ساخت.
طرح مبحث هوش مصنوعی به طور جدي و پیشرفت آن از سال 1950 شروع شد. در این سال شخصی بنام آلن تورینگ[2] آزموني موسوم به نام خود يعني "تورینگ تست"[3] را معرفی كرد. اما واژهی هوش مصنوعی[4] اولین بار توسط شخصی به نام جان مك كارتي[5] استفاده شد و آن را اين گونه تعریف كرد: "دانش و مهندسی ساخت ماشین های هوشمند". پس از آن در بسياري از منابع علمي هوش مصنوعي را اين گونه تعريف كردند: " هوش مصنوعی عبارت است از مطالعهی این که چگونه کامپیوترها را می توان وادار به انجام کارهایی کرد که در حال حاضر انسانها آنها را بهتر انجام میدهند". تكامل پژوهش در حوزه هوش مصنوعي مطرح شدن مباحث ديگري مانند شبكههاي عصبي مصنوعي را به همراه داشت.
شبكههاي عصبي مصنوعي را (كه از اين پس در ادامه اين مقاله از تكرار واژه مصنوعي آن خودداري ميكنم) ميتوان مدلهاي الكترونيكي از ساختار عصبي مغز انسان دانست. مكانيسم فراگيري و آموزش مغز بر پايهي تجربه استوار است. مدلهاي الكترونيكي شبكههاي عصبي طبيعي نيز بر اساس همين الگو بنا شدهاند و روش برخورد چنين مدلهايي با مسائل، با روشهاي محاسباتي كه بهطور معمول توسط سيستمهاي كامپيوتري در پيش گرفته شدهاند، متفاوت است.
امروز روشن شده كه حتا سادهترين مغزهاي جانوري نيز قادر به حل مسايلي هستند كه اگر نگوييم كامپيوترهاي امروزي از حل آنها عاجز هستند، حداقل در حل آنها دچار مشكل ميشوند. به عنوان مثال، مسايل مختلف شناسايي الگو، نمونهاي از مواردي هستند كه روشهاي معمول محاسباتي براي حل آنها به نتيجه مطلوب نميرسند. درحاليكه مغز سادهترين جانوران بهراحتي از عهده چنين مسايلي بر ميآيد.
اگرچه مكانيسمهاي دقيق كاركرد مغز انسان (يا حتا جانوران) بهطور كامل شناخته شده نيست، با اين وجود جنبههاي شناخته شدهاي نيز وجود دارند كه الهام بخش تئوري شبكههاي عصبي بودهاند. بهعنوان مثال، يكي ازسلولهاي عصبي، معروف به نرون[6] است كه دانش بشري آن را بهعنوان سازنده اصلي مغز ميانگارد. سلولهاي عصبي قادرند با اتصال بهيكديگر تشكيل شبكههاي عظيم بدهند. گفته ميشود كه هر نرون ميتواند به هزار تا ده هزار نرون ديگر اتصال يابد (حتي در اين مورد عدد دويست هزار هم به عنوان يك حد بالايي ذكر شده است).
قدرت خارقالعاده مغز انسان از تعداد بسيار زياد نرونها و ارتباطات بين آنها ناشي ميشود. ساختمان هر يك از نرونها نيز بهتنهايي بسيار پيچيده است. هر نرون از بخشها و زيرسيستمهاي زيادي تشكيل شده است كه از مكانيسمهاي كنترلي پيچيدهاي استفاده ميكنند. سلولهاي عصبي ميتوانند از طريق مكانيسمهاي الكتروشيميايي اطلاعات را انتقال دهند. برحسب مكانيــسمهاي بهكاررفته در سـاختار نرونها، آنها را به بيش از
يكصدگونه متفاوت طبقهبندي ميكنند. در اصطلاح فني، نرونها و ارتباطات بين آنها، فرايند دودويي[7]، پايدار[8] يا همزمان[9] محسوب نميشوند.
تحقيقات در اين زمينه نشان داده است كه مغز، اطلاعات را همانند الگوها[10] ذخيره ميكند. فرآيند ذخيرهسازي اطلاعات بهصورت الگو و تجزيه و تحليل آن الگو، اساس روش نوين محاسباتي را تشكيل ميدهند. اين حوزه از دانش محاسباتي[11] به هيچ وجه از روشهاي برنامهنويسي سنتي استفاده نميكند و بهجاي آن از شبكههاي بزرگي كه بهصورت موازي آرايش شدهاند و تعليم يافتهاند، بهره ميجويد.
وظیفه شبکه های عصبی یادگیری است. تقریباً چیزی شبیه یادگیری یک کودک خردسال. یادگیری در شبکههای عصبی رایج به شکل یادگیری تحت نظارت[12] است. والدین تصاویر حیوانات مختلف را به کودک نشان میدهند و نام هرکدام را به کودک میگویند. ما روی یک حیوان، مثلا سگ، تمرکز می کنیم. کودک تصاویر انواع مختلف سگ را می بیند و در کنار اطلاعات ورودی (تصاویر و صدا) برای هر نمونه، به او گفته میشود که این اطلاعات مربوط به یک نوع"سگ" هست یا خیر. بدون اینکه به او گفته شود، سیستم مغز او اطلاعات ورودی را تجزیه و تحلیل میکند و به یافتههایی در زمینه هر یک از پارامترهای ورودی از قبیل "رنگ، اندازه، صدا، داشتن پنجه یا سم یا شاخ" میرسد. پس از مدتی او قادر خواهد بود یک "نوع جدید" از سگ را که قبلاً هرگز ندیده است شناسایی کند. از آنجایی که در مورد هر نمونه جانور در مرحله یادگیری به کودک گفته شده که آیا سگ هست یا خیر، این نوع یادگیری، تحت نظارت نامیده می شود.
در واقع، شبكههاي عصبي شبيهسازي شده يا كامپيوتري، قادرند بخش كوچكي از خصوصيات و ويژگيهاي شبكههاي عصبي بيولوژيك را شبيهسازي كنند. به بياني ديگر، هدف از ايجاد يك شبكه عصبي مصنوعي (نرمافزاري)، بيش از آنكه شبيهسازي مغز انسان باشد، ايجاد مكانيسمي براي حل مسايل با الهام از الگوي رفتاري شبكههاي بيولوژيك است. اگر پيشبيني آينده را مجموعهاي از متغيرهاي مطرح در يك مساله در نظر بگيريم، ميتوان كارايي مكانيسم يادشده را در حل اين مساله مورد ارزيابي و بررسي قرار داد و در صورت موفقيت، از آن به عنوان رهيافتي براي پيشبيني آينده بهره جست. به اين منظور بايد شبكه عصبي بيولوژيك را بهتر بشناسيم.
در یک شبکه عصبی، اطلاعات و پارامترهای ورودی، هرکدام به شکل یک سیگنال الکتریکی تحریکكننده به کانالهای ورودی مدل ریاضی سلول عصبی وارد می شوند. مدل ریاضی یک سلول عصبی را ادراك[13] می نامند. هر یک از کانالهای ورودی شبیه اتصالات دندریتها دارای یک" ضریب عددی "هستند که وزن سیناپسی نامیده ميشود. شدت تحریک الکتریکی در این ضریب ضرب میشود و به جسم سلولی میرسد. اگر مجموع تحریکات رسیده به جسم سلولی کافی باشد، نرون شلیک میکند و در مسیرهای خروجی آکسونها جریان الکتریکی ثابتی را ایجاد می کند. تحریکات لایه ورودی سلولها به یک یا چند لايه واسط ميرود. ادامه جریان تحریکات به این لایهها میرود که لایه واسط[14] ناميده ميشود و توسط همان وزنهای سیناپسی به گونهاي هدایت میشود که پیچیدگیهای تاثیرات جریان ورودی را شبیه سازی میکند. سپس تحریکات به لایه خروجی میروند که مقصد نهایی است.
اگر هدف شبکه عصبی پیشبيني کمّی باشد، مجموع شدت تحریکات آخرین عصب خروجی كميت مورد نظر در واقع يك "عدد" خواهد بود و اگر هدف شبکه عصبی طبقهبندي[15] باشد، فعالیت یا خاموش بودن نرونهای لایه آخر نمایانگر این امر خواهد بود. به عنوان نمونه طبقهبندي شلیک نرون خروجی نشان دهنده حضور بیماری و خاموش بودن آن نشانهي سلامت است. سیستم شبکه عصبی در فرایند یادگیری به گونهاي وزنهای سیناپسی را تغییر میدهد که بتواند با هر سری تحریکات ورودی جريان خروجي مناسب را ايجاد كند.
بر اين اساس، شبکه های عصبی در واقع مثلثی هستند که 3 ضلع مفهومی دارند: 1. سیستم تجزیه و تحلیل دادهها، 2. نرون یا سلول عصبی، 3. شبکه یا قانون کار گروهی نرونها. شبکه عصبی عبارت است از مجموعهای عظیم از پردازشگرهای موازی که استعداد ذاتی برای ذخیره اطلاعات تجربی و بهکارگیری آن دارند و این شبکه دست کم از دو بابت شبیه مغز است: 1. مرحله ای موسوم به یادگیری دارد و، 2. وزن های سیناپسی كه جهت ذخیره دانش به کار میروند.
از بهم پیوستن سلولهای عصبی، مدل شبکه عصبی[16] به وجود ميآيد. وضعیت نسبی سلولها در شبکه (تعداد و گروه بندی و نوع اتصالات آنها) را توپولوژی شبکه می گویند. توپولوژی در واقع سیستم اتصال سخت افزار نورونها به یکدیگر است، که توام با نرم افزار مربوطه (یعنی روش ریاضی جریان اطلاعات و محاسبه وزنها) نوع عملکرد شبکه عصبی را تعیین می کنند. در این توپولوژی یک لایه ورودی وجود دارد که اطلاعات را دریافت می کند، تعدادی لایه مخفی وجود دارند که اطلاعات را از لایه های قبلی می گیرند و در نهایت یک لایه خروجی وجود دارد که نتیجه محاسبات به آنها می رود و جوابها در آن قرار میگیرند. هر سلول در هر لایه به کلیه سلولهای لایه مجاور بعدی متصل می شود.
در آغاز مرحله یادگیری[17] اطلاعات مربوط به نمونههايي از موضوع در دست بررسي یک به یک به شبکه داده ميشود. به عنوان نمونه، مقادير عددي غلظتهای شیمیایی و پارامترهای فیزیکی فرمولاسیون يك ماده و تک تک نمونههاي آن به لایه ورودی داده شده و از سوی دیگر مقدار تجربی و اندازهگیری شده پایداری آنها نیز به حافظه شبکه داده می شود (بهعنوان متغیری در حافظه کامپیوتر و خارج از توپولوژی شبکه نگهداری میشود). اطلاعات ورودی در شبکه جریان پیدا میکند به این معنی که در وزنهای سیناپسی ضرب شده و نتیجه فعالیت هر نرون به صورت سیگنالی، خود ورودی نرونهای لایه بعدی خواهد بود. در پایان جریان اطلاعات هرنمونه، شبکه پاسخی در لایه خروجی خواهد داشت.
مثلاً اگر هدف پیشبيني پایداری فرمولاسیون است، وزن تنها نرون لایه خروجی نمایشگر آن خواهد بود و در این مرحله ابتدایی، به دلیل استفاده از وزنهای سیناپسی اتفاقی، پاسخ ایجاد شده با میزان تجربی پایداری تفاوت خواهد داشت. این تفاوت[18] که تفاضل میزان پیشبيني شده پاسخ توسط شبکه و میزان اندازه گیری شده تجربی آن است، باید به صفر نزدیک شود تا شبکه از سطح مطلوبي از پیشبيني برخوردار شود. حال با وارد کردن اطلاعات مربوطه به یک نمونه جدید میتوانید میزان پایداری آن را پیشبيني کنید. این در حالی است که هیچگونه فرضیهای درباره نحوهي برهم کنش و روابط میان پارامترهای ورودی نداشتید و هیچگونه محاسبهي ریاضی نیز انجام ندادید. آيا این فوق العاده نيست؟! اصولاً استفاده از شبكههاي عصبي در امر پيشبيني به اين دلايل ضروري به نظر مي رسد: 1. توانايي يادگيري؛ 2. قابليت تعميم؛ 3. پردازش موازي؛ 4. مقاوم بودن؛ 5. قابليت كاربرد در حوزههايي كه دادههاي ورودي و خروجي وجود دارد اما شناخت روشني از پديدهاي كه دادهها به آن مربوط ميشود، وجود ندارد.
بر اين اساس ميتوان اين شيوه پيشبيني را به ديگر حوزههاي مطالعاتي نيز تعميم داد. البته دو نكته مهم نيز در ميان مطرح است كه بايد به آنها توجه نمود: نخست، اين است كه مبناي كار شبكه عصبي دادههاي عددي است و هر قدر دادههاي عددي بيشتر و دقيقتري به آن بدهيم پيشبينيهاي دقيقتري را دريافت خواهيم نمود. دوم اين كه كمّي نمودن متغيرهاي كيفي يكي از ضروريات اصلي براي گسترش اين شيوه در حوزههايي است كه لزوماً با دادههاي عددي سر و كار ندارند. كاربرد رهيافت شبكههاي عصبي براي پيشبيني در حوزه علوم انساني و اجتماعي نيازمند رعايت اين نكته مهم ميباشد. بايد اميدوار باشيم كه شبكههاي عصبي در آيندهاي نه چندان دور شيوههاي متعارف و كنوني آيندهنگاري و پيشبيني آينده را دستخوش تحولي چشمگير نمايد و پندارهاي گذشته از آينده را به درستي اصلاح كند.
هم اينك نيز تلاشهاي ارزشمندي در اين راه آغاز شده است. به عنوان نمونه شبكههاي عصبي به عنوان روشي نوين در پيش بينيهاي اقتصادي و بهبود روشهاي اقتصادسنجي كاربرد يافتهاند. اقتصاددانان دريافتهاند كه ميتوان با تركيب روش اقتصادسنجي و شبكههاي عصبي پيشبينيهاي دقيقتر و قابل اطمينانتري از آيندههاي اقتصادي داشت. به تازگي دو پژوهشگر ايراني به نامهاي حامد هاشمينيا و سيد تقي اخوان نياكي با درج مقاله پژوهشي خود در مجلهي علمي و پژهشي شريف با عنوان "روشي مركب از اقتصادسنجي و شبكههاي عصبي مصنوعي براي پيشبيني پديدههاي اقتصادي" كارايي شبكههاي عصبي را در مقام يك رهيافت كارآمد براي پيشبيني در حوزه اقتصاد به اثبات رساندند.
اين واقعيت در پژوهش ديگري توسط سيد كميل طيبي، ناصر موحدنيا و معصومه كاظميني در قالب نگارش مقالهاي پژوهشي پيرامون "بهكارگيري شبكههاي عصبي در پيشبيني متغيرهاي اقتصادي" مورد تاكيد مجدد قرار گرفته است. به نظر ميرسد در حال حاضر، پژوهشگران ايراني تنها مجذوب كاربردهاي شبكههاي عصبي در حوزههاي اقتصادي شدهاند كه شايد دليل آن جذابيت زمينههاي اقتصادي براي تحليل توسط شبكههاي عصبي باشد. در اين حوزه حداقل از دشواري كمّي كردن متغيرهاي كيفي خبري نيست! حال آنكه شبكههاي عصبي ميتوانند در ديگر حوزههاي دانش بنيان براي پيشبيني آينده به كار روند. پويش در اين جهت و مسير را به خود خوانندگان گرامي واگذار ميكنم و اميدوارم به زودي شاهد به بار نشستن دستاوردهاي اين رهيافت نوين در زمينه "پيشبيني" به عنوان يكي از مهمترين حوزههاي كاربردي آيندهپژوهي باشيم.
منابع:
1. شادنیا، هومن. "تجزیه و تحلیل داده ها به وسیله شبکه های عصبی مصنوعی"، http://www.ahooeg.com
2. شاه اميري، سيد رضا. "معرفي شبکه هاي عصبي مصنوعي"، 26 مهر 1385، http://www.irandoc.ac.ir
3. محموديان، سياوش. "مقدمه ای بر هوش مصنوعی"،
http://www.syavash.com/portal/users/siavash/blogs/farsi-what-is-artificial-intelligence-fa
4. حسینی، علی محمد. "مقدمه ای بر شبکه های عصبی"، زمستان 1385
5. هاشمينيا، حامد. روشي مركب از اقتصادسنجي و شبكههاي عصبي مصنوعي براي پيشبيني پديدههاي اقتصادي، مجله علمي و پژوهشي شريف، مرداد – شهريور 1387، ص. 39-46
6. طيبي، سيد كميل. "بهكارگيري شبكههاي عصبي مصنوعي در پيشبيني متغيرهاي اقتصادي و مقايسه آن با روشهاي اقتصادسنجي"، همان، ص. 99-104
--------------------------------------------------------------------------------
[1] Simon
[2] Alen Turing
[3] Turing Test
[4] Artificial Intelligence
[5] John McCarthy
[6] Neuron
[7] Binary
[8] Stable
[9] Synchronous
[10] Patterns
[11] Computational Science
[12] Supervised
[13] Perception
[14] Hidden Layers
[15] Classification
[16] Artificial Neural Network
[17] Learning
[18] Prediction Error
مطلبهای دیگر از همین نویسنده در سایت آیندهنگری:
|
بنیاد آیندهنگری ایران |
پنجشنبه ۲۴ آبان ۱۴۰۳ - ۱۴ نوامبر ۲۰۲۴
سید علیرضا حجازی
|
|