ورود / ثبت نام

چه نواحی از مغز در زمان برنامه ‌نویسی درگیر می ‌شود؟

به گفته دکتر سیرکانت، دانشجوی دکتری دانشگاه MIT، این روزها بسیاری از افراد با برنامه نویسی سر و کار دارند- خواندن، نوشتن، طراحی و رفع اشکالات کدها- اما هیچ کس نمی داند در حین انجام این فعالیت ها دقیقا در مغزش چه می گذرد.

به نظر می رسد یکی از فعالیت هایی که در حوزه آناتومی عملکردی (روشی که در آن مشخص می شود کدام یک از بخش های مغز در حین انجام تسک، بیشتر درگیر می شوند) تاکنون کمتر بدان توجه شده است برنامه نویسی کامپیوتری است. به عنوان مثال؛ 1) به هنگام نوشتن کد و یا 2) به هنگام تلاش شخص برای فهمیدن کد نوشته شده کدام یک از بخش های مغز بیشتر فعالیت می کنند. به گفته دکتر سیرکانت، دانشجوی دکتری دانشگاه MIT، این روزها بسیاری از افراد با برنامه نویسی سر و کار دارند- خواندن، نوشتن، طراحی و رفع اشکالات کدها- اما هیچ کس نمی داند در حین انجام این فعالیت ها دقیقا در مغزش چه می گذرد".

دکتر سیرکانت و همکارانش در جدیدترین تحقیقات خود، با استفاده از fMRI بخش هایی از مغز برنامه نویسان را در حین "درک" یا نوشتن بخش های کوچکی از کد، رصد کردند (منظور از واژه "درک"، نگاه کردن به یک بخش از کد و تعیین کردن درستی نتیجه محاسبات انجام شده توسط بخش های کد نویسی شده است).

آن ها در سال 2020 نشان دادند که به هنگام کد نویسی، بخش هایی از مغز که مربوط به سیستم زبانی است و در پردازش زبان کاربرد دارد تحریک نمی شود. در عوض، شبکه تقاضای چندگانه (یک سیستم مغزی که به استدلال عمومی مرتبط است و دامنه هایی مانند تفکر ریاضی و منطق را پشتیبانی می کند) در حین کد نویسی به شدت فعال می شود. در مقاله ی فعلی، با نگاه عمیق تری به این موضوع نگاه می شود و مغز هر فرد برنامه نویس با استفاده از اسکن های fMRI به طور دقیق تری بررسی می شود.

سیرکانت این پرسش را مطرح می کند: "آیا می توان با استفاده از سیگنال های واقعی مغز، مهندسی معکوس انجام داد و به طور خاص، متوجه شد که برنامه نویس به چه چیزی نگاه می کند؟" پاسخ به این پرسش نشان می دهد که چه ویژگی هایی، مربوط به برنامه های منحصر به فرد، در مغز ما کد گذاری می شود". او خطاب به دانشمندان علوم اعصاب این موضوع را متذکر می شود، "اگر با نگاه کردن به سیگنال های مغزی شخصی آن خصوصیت ها را بتوانند استنباط کنند، آن خصوصیت فیزیکی «کدگذاری شده» محسوب می شود".

به عنوان مثال، یک حلقه و یا یک شاخه را در نظر بگیرید. حلقه، دستورالعمل درون برنامه است به منظور تکرار یک عملیات خاص تا زمانی که نتیجه مورد نظر به دست بیاید. شاخه، نوع دیگری از ساختار برنامه نویسی است که باعث تغییر کامپیوتر از یک عملیات به عملیات دیگر می شود. بر اساس الگوهای مشاهده شده از فعالیت های مغزی افراد، این گروه تحقیقاتی می توانست بگوید که آیا شخص در حال ارزیابی قطعه ای از کد که شامل یک حلقه یا یک شاخه است، هست یا خیر. این محققان همچنین می توانستند بگویند که آیا کد مربوط به کلمات است یا نمادهای ریاضی، و اینکه آیا شخص در حال خواندن کد واقعی است و یا صرفاً در حال مشاهده توصیف کتبی از آن کد است. این یافته ها می تواند به پرسش اول پاسخ دهد؛ آیا چیزی به شکل کدگذاری شده در مغز وجود دارد و یا خیر. اگر پاسخ به این سوال مثبت باشد سوال بعدی ممکن است این باشد: این فرآیند در کجای مغز رمزگذاری شده است- در موارد ذکر شده در بالا (حلقه ها یا شاخه ها، کلمات یا نماد های ریاضی، کد یا یک توصیف از آن) سطوح فعال سازی مغز در هر دو سیستم زبانی و شبکه تقاضای چندگانه قابل مقایسه بود. با این حال، زمانی که نوبت به بررسی ویژگی های کد هایی به نام تجزیه و تحلیل پویا رسید، تفاوت قابل توجهی دیده شد. می دانیم که برنامه ها می توانند خواص "ایستا" از خود نشان دهند—مانند تعداد اعداد در یک دنباله—که در طول زمان تغییر نمی کند.  طبق گفته سیرکانت: "برنامه ها همچنین می توانند جنبه پویا داشته باشند، مانند تعداد زمان هایی که حلقه اجرا می شود". سیرکانت اضافه می کند: "من همیشه نمی توانم یک بخش از یک کد را بخوانم و از قبل بدانم، زمان اجرای آن برنامه چه خواهد بود." محققان MIT دریافتند که برای تجزیه و تحلیل پویا، اطلاعات در شبکه تقاضای چندگانه بسیار بهتر از آنچه در مرکز پردازش زبان است کدگذاری می شود. این یافته خود سرنخی برای فهمیدن این موضوع است که چگونه درک کد در سرتاسر مغز توزیع می شود-کدام بخش ها درگیر هستند و کدام نقش مهم تری را در جنبه های خاصی از آن تسک، ایفا می کنند. این تیم، مجموعه دوم آزمایش ها را نیز انجام داد. این مجموعه آزمایش ها که به طور خاص برای برنامه های کامپیوتری طراحی شده است مدل های یادگیری ماشینی به نام شبکه های عصبی را در خود جای داده است. این مدل ها در سال های اخیر برای کمک به برنامه نویسان جهت کامل کردن قطعات کد آن ها بسیار مفید بوده است. این بار محققان به دنبال یافتن پاسخی برای این پرسش بودند: "آیا سیگنال های مغزی تولید شده توسط شرکت کنندگان در زمان بررسی کدها، مشابه سیگنال های تولید شده توسط شبکه نورونی به هنگام بررسی کدهای مشابه است و یا خیر؟" پاسخ آن ها به این پرسش، یک بله ی قاطع بود.

طبق گفته ی سیرکانت " اگر بخشی از یک کد را در شبکه عصبی قرار دهید، فهرستی از اعداد را تولید می کند که نشان می دهد برنامه درباره چه چیزی است". اسکن مغز افرادی که برنامه های کامپیوتری را مطالعه می کنند به طور مشابه فهرستی از اعداد را تولید می کنند. دیده شد که فهرست اعداد تولید شده به هنگام خواندن یک شاخه و یا یک حلقه با یکدیگر متمایز هستند. علاوه بر این، سیرکانت نکته دیگری را نیز مطرح می کند: "زمانی که مدل یادگیری ماشینی سعی می کند همان بخش از کد را درک کند، شما الگوی مشابهی را مشاهده می کنید".

این دانشمندان در قدم بعدی تلاش می کنند تا به این سوال پاسخ دهند: "چگونگی ترکیب چند عملیات ساده به منظور ساخت برنامه های پیچیده و استفاده از آن استراتژی ها برای پرداختن مؤثر به تسک های مرتبط با استدلال عمومی".

برای مشاهده منبع کلیک کنید.

 

 

دیدگاه ها

برای ثبت دیدگاه کافیست وارد حساب کاربری خود شوید.

خبرنامه آزمایشگاه ملی نقشه برداری مغز

با عضویت در خبرنامه آزمایشگاه ملی نقشه برداری مغز از آخرین اخبار و رویدادها مطلع شوید.

پرداخت هزینه آزمایشات دریافت گواهی پشتیبانی
صفحه اصلی
جستجو
دسته بندی
باشگاه
حساب کاربری