وقتی صحبت از شبکههای عصبی مصنوعی میشود، این پروسه به ذهن میرسد که باید یک سری داده از یک پدیده جمعآوری شود و از آنها برای آموزش یک شبکه عصبی استفاده شود. به این نوع استفاده از شبکههای عصبی اصطلاحا آموزش با نظارت مبتنی بر داده گفته میشود که سالهاست در علوم مختلف مورد استفاده قرار گرفته است. اگرچه این نوع از شبکههای عصبی بسیار مفید بوده و همواره کمک کرده اند تا بتوان الگوها و روابط مفیدی را از دادهها استخراج نمود، اما دارای معایبی نیز میباشند. از جمله اینکه، این نوع از شبکههای عصبی درکی از فیزیک حاکم بر مسئله ندارند و تنها روابط بین دادهها را جستجو میکنند.
برای فائق آمدن بر این مشکل در سالهای اخیر، نوعی از شبکههای عصبی معرفی گردیده و توسعه داده شدهاند که قادرند تا فیزیک حاکم بر مسئله را نیز بفهمند و از طریق آن آموزش ببینند. به بیان واضحتر، فیزیک حاکم بر مسائل مختلف همواره با فرمی از معادلات دیفرانسیل بیان میشود. در این حالت، شبکههای عصبی سعی میکنند تا خود را به عنوان جواب معادله دیفرانسیل مطرح کرده و به جای استفاده محض از داده، با جایگذاری خود در معادله دیفرانسیل و بررسی شرایط مرزی و اولیه آموزش ببینند.
یعنی شبکه های عصبی PINN بدون استفاده از داده و تنها از روی معادله دیفرانسیل آموزش داده می شوند؟
بله، شبکههای عصبی PINN برای آموزش نیازی به جمعآوری داده ندارند و قادرند که تنها با معادله دیفرانسیل حاکم بر مسئله آموزش ببینند. با این حال، اگر مجموعه دادهای از پدیده فیزیکی مورد مطالعه جمعآوری شده باشد، میتوان از آن برای افزایش دقت شبکه عصبی در حین آموزش استفاده نمود و مانعی برای انجام این کار وجود ندارد.
نحوه آموزش شبکه های عصبی PINN چگونه است؟
برای توضیح بهتر این فرایند، فرض کنید که با یک معادله دیفرانسیل روبرو هستیم که تابعی از متغیرهای x، y و t بوده و خروجی آن u میباشد. همچنین فرض نمایید این معادله دیفرانسیل دارای یک سری شرایط مرزی و اولیه نیز میباشد. حال، میتوان یک شبکه عصبی طراحی کرد که ورودیهای آن متغیرهای x، y و t بوده و خروجی آن متناظر با معادله دیفرانسیل u باشد. اگر بتوان مشتقات شبکه عصبی نسبت به ورودیها یعنی du/dx، du/dy، du/dt و … را محاسبه نمود، شبکه عصبی میتواند به عنوان جواب معادله دیفرانسیل عمل کند. البته قبل از آموزش، جایگذاری شبکه عصبی در معادله دیفرانسیل ممکن است خطایی ایجاد نماید که به آن LPDE گفته میشود. همچنین، جایگذاری شبکه عصبی در شرایط مرزی و اولیه نیز ممکن است خطایی ایجاد نماید که با LIC/BC نشان داده میشود. اگر دادههایی از رفتار سیستم موجود باشد، با وارد کردن آنها در شبکه عصبی و محاسبه خطای پیشبینی، ترم دیگری از خطا به دست میآید که Ldata نامیده میشود. با جمع این سه ترم خطا، یعنی LPDE، LIC/BC و Ldata، هزینه کل محاسبه میشود. این فرایند به صورت شماتیک در شکل 1 نشان داده شده است.
شکل 1: نحوه جایگذاری شبکه عصبی در معادله دیفرانسیل و محاسبه تابع هزینه
در ادامه میتوان از یک الگوریتم بهینهسازی کمک گرفت و با حداقل سازی هزینه کل، وزنهای شبکهی عصبی را یافته و متعاقب آن، شبکهی عصبی آموزش داده میشود. با تکمیل آموزش، شبکهی عصبی به جواب معادله دیفرانسیل تبدیل میشود. در این حالت، شبکهی عصبی آموزش داده شده هم معادله دیفرانسیل را میفهمد، هم شرایط اولیه و شرایط مرزی را میفهمد و هم دادههای جمعآوری شده را! به نظر شما خارقالعاده نیست؟!
کاربرد اصلی شبکه های عصبی PINN کجاست؟
شاید بتوان گفت تمام پدیده های فیزیکی اطراف ما با نوعی از معادلات دیفرانسیل بیان می شوند. برخی از این معادلات دیفرانسیل با روش های تحلیلی و عددی قابل حل هستند. جواب این نوع از معادلات دیفرانسیل محاسبه شده و در علوم مختلف کاربردهای عملی پیدا نموده اند. اما برخی از معادلات دیفرانسیل هم هستند که جواب صریح ندارند و یا حل عددی انها هزینه محاسباتی زیادی دارد. در این موارد شبکه های عصبی PINN می توانند نقش موثری در حل و فهم این نوع از مسائل ایفا کنند.
از طرفی همانطور که توضیح داده شد، شبکه های عصبی PINN در حین آموزش هم قادرند که از معادله دیفرانسیل حاکم بر مسئله برای یادگیری استفاده کنند و هم از داده های جمع آوری شده از پدیده مد نظر. یعنی اگر از یک طرف معادله دیفرانسیل حاکم بر مسئله بشناسیم، و از طرف دیگر هم با نمونه های آزمایشگاهی یا تست های واقعی، اطلاعاتی را به شکل داده از مسئله جمع آوری کنیم، هر دوی این ها در دل یک شبکه عصبی جای میگیرند. یعنی شبکه عصبی حاصله هم اطلاعات موجود در داده ها را استخراج کرده و هم حلی برای معادله دیفرانسیل ارائه نموده است. کنار هم قرار دادن فیزیک و داده کاوی وظیفه ای است که شبکه های عصبی PINN برای پیشبرد علم بر عهده گرفته اند.
یادگیری شبکه های عصبی PINN برای چه افرادی مفید است؟
دانشجویان، پژوهشگران و اساتید زیادی وجود دارند که در علوم مختلف فعالیت میکنند. در واقع، این عزیزان مشغول کنکاش در فیزیک حاکم بر مسائل مد نظر خود هستند و سعی میکنند رفتارهای مشاهده شده در طبیعت را بر اساس قوانین فیزیکی تفسیر کنند. اما پیشرفتهای ایجاد شده در حوزه هوش مصنوعی به مرحلهای رسیده که نباید نادیده گرفته شود. در واقع، هوش مصنوعی به گونهای توانمند شده که میتواند پدیدههای فیزیکی را درک کرده و خود را بر اساس آنها آموزش دهد. بنابراین، اگر پژوهشگری نحوه مدیریت این نوع از هوش مصنوعی را فرابگیرد، میتواند در کنار تلاشهای علمی مرسوم، از وجه دیگری هم به بررسی موضوع پژوهشی خود بپردازد.
توصیه من به همه پژوهشگران عزیز این است که در برابر یادگیری هوش مصنوعی ترسی نداشته باشند! یعنی در برابر این ابزار نوظهور جبهه نگیرند و شرایطی را فراهم نمایند که به مرور با جزئیات این ابزار و نحوه استفاده از آن در پژوهش آشنا شوند. به نظر میآید که استفاده از هوش مصنوعی به شکل فزایندهای در حال افزایش است و عدم شناخت آن ما را از مرزهای دانش دور میکند.
آیا یادگیری این نوع از هوش مصنوعی سخت است و بدون داشتن دانش قبلی امکان پذیر نیست؟
نه، به هیچ عنوان اینطور نیست. ابزارهای مختلفی برای پیادهسازی هوش مصنوعی از جمله شبکههای عصبی PINN توسعه داده شدهاند. کافی است که با این ابزار آشنایی حاصل شود و نحوه استفاده از آن فراگرفته شود. بدین ترتیب می توان به بررسی انواع پدیدههای فیزیکی در گرایش های مختلف پرداخت. برای این کار، میتوان در کنار پژوهشهای قبلی، زمانی را برای مباحث مرتبط با هوش مصنوعی اختصاص داد. در مدت نه چندان زیادی، تاثیر آن در مسیر پژوهشی قبلی ملموس خواهد شد.
چه منبعی را برای یادگیری شبکه های عصبی PINN پیشنهاد می کنید؟
عمر چندانی از پیدایش شبکههای عصبی PINN نمیگذرد. عمدهٔ منابع موجود در این زمینه مقالات علمی هستند که توسط ناشران مختلف منتشر میشوند و روز به روز هم به تعداد آنها افزوده میشود. نوع ادبیات به کار رفته در این مقالات البته قدری تخصصی است و شاید برای آموزش دیدن مناسب نباشند. ما در مجموعهٔ آموزشی خود، دورهٔ منحصر به فردی را برای آموزش گام به گام شبکههای عصبی PINN آماده نمودهایم. در این دورهٔ آموزشی تنها به تشریح کلیت مبحث و نشان دادن خروجیهای تحلیل پرداخته نمیشود بلکه جزء به جزء مطالب تشریح شده و خط به خط کد نویسی میگردند. لازمهٔ ورود به این دوره تنها آشنایی کلی با برنامهنویسی پایتون میباشد که برای پیادهسازی و استفاده از شبکههای عصبی به آن نیاز داریم. مابقی مباحث از پایه تشریح میشوند.
این دوره چقدر طول میکشد و آیا مخاطب را به سطحی میرساند که از شبکههای عصبی PINN در پژوهش خود استفاده عملی نماید؟
این دوره در 6 جلسه 2 ساعته، یعنی 12 ساعت تدارک دیده شده است. محتوای دوره به طور کامل از قبل ضبط و ویرایش شده است و با بالاتریم کیفیت ممکن در اختیار مخاطبان عزیز قرار گرفته است. از آنجایی که مطالب مطرح شده در طول این دوره کاملاً شکل عملیاتی داشته، مخاطب را به سرعت وارد استفاده عملی از شبکههای عصبی PINN میکند. از این رو در پایان دوره، مخاطبان به راحتی میتوانند با استفاده از محتوای فراگرفته شده در طول دوره به پژوهش بپردازند.