دوره آموزشی شبکه های عصبی مطلع از فیزیک 
Physics-Informed Neural Networks (PINN)

مشخصات دوره

طول دوره: 12 ساعت
تعداد جلسات: 7 جلسه (هرجلسه دو ساعت)
زبان برنامه نویسی: در این دوره از زبان برنامه نویسی پایتون استفاده می گردد.
مدرس: دکتر مهدی شاداب فر

ویدیوی معرفی دوره در آپارات
ویدیوی معرفی دوره در یوتیوب

شرح دوره

به طور معمول شبکه های عصبی برای یادگیری وابسته به داده ستی هستند که می بایست از قبل جمع آوری گردد. به بیان دیگر شبکه های عصبی ارتباط بین داده ها را یاد گرفته و سپس از روی آن به پیش بینی نتایج برای داده های جدید می پردازند. اما در سال های اخیر نوعی از شبکه های عصبی تحت عنوان PINN گسترش داده شدند که برای یادگیری الزاما نیازی به داده ندارند و یادگیری آنها از طریق فیزیک حاکم بر مسئله انجام می پذیرد. درواقع برای آموزش این نوع شبکه های عصبی ابتدا می بایست معادله دیفرانسیل حاکم بر مسئه تعیین گردد و سپس شرایط اولیه و شرایط مرزی متغیرها مشخص شود. در این حالت، شبکه عصبی به گونه ای آموزش داده می شود که بتوان آن را به عنوان جواب معادله دیفرانسیل که همگی شرایط اولیه و مرزی را ارضا کند مورد استفاده قرار داد. این قابلیت بزرگ باعث شد که این نوع از شبکه های عصبی را مطلع از فیزیک نامیده و از آنها به عنوان ابزاری برای حل انواع معادلات دیفرانسیل در علوم مختلف استفاده شود. البته قابل ذکر است که داده ها هم می توانند به عنوان ابزار جانبی وارد فرمول بندی مدل شده و در پروسه آموزش دخالت کنند، منتها آموزش شبکه عصبی الزاما به آنها وابسته نیست. در این دوره آموزشی، به یادگیری شبکه های عصبی PINN به عنوان ابزاری برای حل معادلات دیفرانسیل پرداخته می شود. 
برای درک بهتر مفاهیم دوره، ابتدا یک معادله دیفرانسیل یک بعدی انتقال حرارت معرفی می شود و حل عددی آن با استفاده از روش اجزای مجزا (FDM) توضیح داده می شود. سپس یک معادله دیفرانسیل 
معادله انتقال پخش (Addvection Diffusion) در دو بعد مطرح شده و پروسه حل آن با استفاده از روش اجزاء محدود تشریح می شود. پس از آشنایی با این دو نوع معادله دیفرانسیل و حل عددی مرسوم آنها، مبانی شبکه های عصبی PINN مطرح شده و نحوه استفاده از آنها در حل معادلات دیفرانسیل تشریح می گردد. سپس این شبکه های عصبی برای حل دو نوع مسئله مطرح شده مورد استفاده قرار می گیرند. کلیه مطالب ارائه شده در این دوره از پایه مورد بحث قرار گرفته و علاوه بر مبانی تئوری آنها، به شکل خط به خط در محیط پایتون برنامه نویسی شده و نتایج آنها مورد بررسی قرار میگیرد.
این دوره برای تمامی افرادی که علاقه مند به یادگیری هوش مصنوعی بر پایه فیزیک مسئله هستند مفید بوده و ابزاری قدرتمند را برای پژوهش در اختیار قرار می دهد.

محتوای دوره

1. جلسه اول: آشنایی با کاربرد PINN در حل معادلات دیفرانسیل

1.1. مقدمه ای بر معادلات دیفرانسیل و حل عددی آنها
2.1. معادله دیفرانسیل انتقال حرارت و ضرایب آن
     1.2.1. معرفی معادله دیفرانسیل
     2.2.1. بررسی شرایط مرزی و اولیه
     3.2.1. تعریف انواع مشتق گیری عددی
     4.2.1. گسسته سازی معادله دیفرانسیل در فضا و مکان
     5.2.1. حل معادله دیفرانسیل با استفاده از روش تفاضل محدود در پایتون
     6.2.1. بررسی نتایج
3.1. کاربرد شبکه های عصبی در حل معادلات دیفرانسیل
4.1. تبدیل معادله دیفرانسیل به یک مسئله بهینه سازی
5.1. نحوه فرمول بندی تابع هزینه
     1.5.1. هزینه ناشی از خطای شبکه عصبی در تخمین نتایج
     2.5.1. هزینه ناشی از شراط مرزی
     3.5.1. هزینه ناشی از شرایط اولیه
     4.5.1. هزینه ناشی از داده های احتمالی موجود
6.1. نحوه آموزش شبکه عصبی با استفاده از کمینه سازی تابع هزینه​​​​​​​

2. جلسه دوم: حل یک معادله دیفرانسیل با PINN – بخش اول

1.2. معرفی آناکوندا 
     1.2.2. آشنایی با آناکوندا
     2.2.2. ساخت environment
     3.2.2. نصب پکیج های مورد نیاز
     4.2.2. راه اندازی spyder بر روی environment تشکیل شده
2.2. معادله دیفرانسیل برگرز
     1.2.2. معرفی معادله دیفرانسیل برگرز و کاربردهای آن
     2.2.2. بررسی شرایط مرزی و اولیه
     3.2.2. بررسی جواب کلی معادله دیفرانسیل
3.2. بررسی گام های حل معادله دیفرانسیل با استفاده از PINN
4.2. معرفی معماری شبکه عصبی در پایتورچ
5.2. تعریف متغیرها و گسسته سازی آنها
6.2. تعیین شرایط مرزی و اولیه و اعمال آن بر grid point ها
7.2. تعیین الگوریتم بهینه سازی
     1.7.2. چگونگی استفاده از بیش از یک الگوریتم بهینه سازی
     2.7.2. الگوریتم بهینه سازی adam و پیاده سازی آن در پایتورچ
     3.7.2. الگوریتم بهینه سازی L-BFGS و پیاده سازی آن در پایتورچ​​​​​​​

3. جلسه سوم: آشنایی با معادله دیفرانسیل دو بعدی انتقال پخش و حل آن با استفاده از روش FDM

1.3. پیش بینی سری زمانی تک متغیره با گام زمانی واحد توسط شبکه های عصبی عمیق RNN
     1.1.3. اضافه کردن بعد سوم به داده ها
     2.1.3. پیاده سازی معماری شبکه عصبی عمیق RNN در محیط پایتون
     3.1.3. آموزش شبکه عصبی با داده های پردازش شده
     4.1.3. بررسی دقت شبکه عصبی آموزش دیده شده
     5.1.3. پیش بینی سری زمانی تک متغیره با گام زمانی واحد
2.3. 
پیش بینی سری زمانی تک متغیره با گام زمانی واحد توسط شبکه های عصبی عمیق GRU
     1.2.3. پیاده سازی معماری شبکه عصبی عمیق GRU در محیط پایتون
     2.2.3. آموزش شبکه عصبی با داده های پردازش شده
     3.2.3. بررسی دقت شبکه عصبی آموزش دیده شده
     4.2.3. پیش بینی سری زمانی تک متغیره با گام زمانی واحد​​​​​​​
3.3. پیش بینی سری زمانی تک متغیره با گام زمانی واحد توسط شبکه های عصبی عمیق LSTM
     1.3.3. پیاده سازی معماری شبکه عصبی عمیق LSTM در محیط پایتون
     2.3.3. آموزش شبکه عصبی با داده های پردازش شده
     3.3.3. بررسی دقت شبکه عصبی آموزش دیده شده
     4.3.3. پیش بینی سری زمانی تک متغیره با گام زمانی واحد​​​​​​​
4.3. پیش بینی سری زمانی تک متغیره با چند گام زمانی توسط شبکه های عصبی عمیق GRU، RNN و LSTM
     1.5.3. بررسی تفاوت های موجود بین پیش بینی سری زمانی تک متغیره با گام زمانی واحد و چندگانه
     2.5.3. پیش بینی سری زمانی تک متغیره با چند گام زمانی توسط شبکه عصبی RNN
     3.5.3. پیش بینی سری زمانی تک متغیره با چند گام زمانی توسط شبکه عصبی GRU
     4.5.3. پیش بینی سری زمانی تک متغیره با چند گام زمانی توسط شبکه عصبی LSTM

4. جلسه چهارم: آشنایی با شبکه های عصبی PINN و پیاده سازی آها در پایتون

1.4. تبدیل یک سری زمانی به یک عکس کانتوری
2.4. معرفی شبکه های عصبی کانولوشنی برای پردازش تصویر
     1.2.4. معرفی ساختار شبکه های عصبی کانولوشنی
     2.2.4. معرفی لایه های کانولوشنی
     3.2.4. معرفی لایه های پولینگ
3.4. اعمال تغییرات در شبکه های عصبی کانولوشنی برای پردازش سری های زمانی

4.4. پیاده سازی شبکه های عصبی کانولوشنی و پیش بینی سری زمانی تک متغیره
5.4. مقایسه نتایج حاصل از پیش بینی با دیگر شبکه های عصبی عمیق

5. جلسه پنجم: حل معادله دیفرانسیل انتقال پخش توسط شبکه های عصبی PINN

1.5. معرفی یک سری زمانی حجیم و نحوه وارد کردن آن به محیط برنامه نویسی پایتون
2.5. پیش پردازش داده ها
     1.2.5. نحوه یافتن مقادیر گم شده (missing values) و اصلاح آنها در سری زمانی چند متغیره
     2.2.5. ترسیم داده های سری زمانی چند متغیره
     3.2.5. بررسی موضوع ِDown sampling و پیاده سازی آن در محیط برنامه نویسی پایتون
     4.2.5. تبدیل سری زمانی چند متغیره تک هدفه به یک مسئله آموزش با نظارت
     5.2.5. نحوه نرمالایز کردن سری زمانی چند متغیره برای مسئله پیش بینی تک هدفه
3.5. پیش بینی سری زمانی چند متغیره تک هدفه با چند گام زمانی توسط 
شبکه های عصبی عمیق RNN، GRU، LSTM، CNN و MLP
     1.3.5. پیش بینی سری زمانی چند متغیره تک هدفه با چند گام زمانی توسط شبکه عصبی عمیق RNN
     2.3.5. پیش بینی
سری زمانی چند متغیره تک هدفه با چند گام زمانی توسط شبکه عصبی عمیق GRU
     3.3.5. پیش بینی
سری زمانی چند متغیره تک هدفه با چند گام زمانی توسط شبکه عصبی عمیق LSTM
     4.3.5. پیش بینی
سری زمانی چند متغیره تک هدفه با چند گام زمانی توسطشبکه عصبی عمیق CNN
​​​​​​​     5.3.5. پیش بینی
سری زمانی چند متغیره تک هدفه با چند گام زمانی توسط شبکه عصبی MLP
4.5. مقایسه نتایج پیش بینی حاصل از شبکه های عصبی مختلف

6. جلسه ششم: بررسی و برطرف کردن مشکل Over fitting

1.6. معرفی نمودار یادگیری و چگونگی استخراج آن از شبکه ی عصبی آموزش داده شده 
2.6. بررسی مشکل Over fitting
3.6. بررسی راه حل های برطرف کردن مشکل Over fitting
     1.2.6. روش Drop out
     2.2.6. روش Regularization
     3.2.6. روش Batch Normalization
4.6. پیاده سازی Kernel regularizer و Drop out در معماری شبکه عصبی

5.6. پیاده سازی لایه های Batch normalization در معماری شبکه عصبی
6.6. بررسی میزان تاثیر روش های پیاده سازی شده در کاهش Overfitting

پیش ثبت نام در دوره

این دوره آموزشی به‌صورت کامل ضبط و تدوین شده است. هم اکنون می‌توانید این مجموعه آموزشی ارزشمند و بی‌نظیر را از طریق لینک زیر تهیه و مشاهده فرمایید.

تهیه دوره آموزشی
سبد خرید

رمز عبورتان را فراموش کرده‌اید؟

ثبت کلمه عبور خود را فراموش کرده‌اید؟ لطفا شماره همراه یا آدرس ایمیل خودتان را وارد کنید. شما به زودی یک ایمیل یا اس ام اس برای ایجاد کلمه عبور جدید، دریافت خواهید کرد.

بازگشت به بخش ورود

کد دریافتی را وارد نمایید.

بازگشت به بخش ورود

تغییر کلمه عبور

تغییر کلمه عبور

حساب کاربری من

سفارشات

مشاهده سفارش