هوش مصنوعی در سیستمهای نهفته
AI in Embedded Systems
مقطع: تحصیلات تکمیلی | گرایش: معماری سیستمهای کامپیوتری |
نوع درس: نظری | تعداد واحد: ۳ |
پیشنیاز: – | همنیاز: – |
هدف کلی
هدف درس هوش مصنوعی در سیستمهای نهفته، توسعه دانش و مهارتهای دانشجویان در زمینه طراحی، پیادهسازی، و بهرهبرداری از روشها و الگوریتمهای هوش مصنوعی در سیستمهای با منابع محدود است. این درس بر آموزش مفاهیم اساسی و پیشرفته هوش مصنوعی تمرکز دارد و دانشجویان را با استفاده از آنها، قادر میسازد تا راهحلهای نوآورانه و کارآمد برای مسائل مختلف موجود در سیستمهای نهفته ارائه کنند. این درس با ارائه مطالب نظری و فراهم کردن فرصتهای عملی، دانشجویان را برای مواجهه با چالشهای واقعی در حوزه هوش مصنوعی و سیستمهای نهفته آماده میکند و ایجاد یک محیط آموزشی فعال و تعاملی را تضمین میکند.
سرفصلها
- مقدمات و آشنایی با فناوری محاسبات نهفته آشنایی با بوردهای آردوینو نانو، ARM, stm32 و نظایر آن
- سیستمهای نهفته و مهندسی نرمافزار نهفته، مبانی محاسباتی و پردازش در الگوریتمهای هوش مصنوعی
- ابزارهای توسعه و کتابخانههای یادگیری عمیق Tensorflow Lite, EIE, Torch و نظایر آن
- ساختار حافظه در سیستمهای نهفته، حافظه داده مانند حافظه کد، حافظه داده، پشته، Heap
- بررسی دقیق روشهای آموزش روی بورد نهفته با وجود حافظه کمتر از یک مگابایت و روشهای آموزش تنظیم دقیق روی بورد
- معرفی و بررسی شبکههای عصبی، مدلهای یادگیری عمیق، مفاهیمی مانند انتشار رو به جلو و انتشار رو به عقب
- بررسی عمل کانولوشن، روشهای تسریع سرعت در عمل کانولوشن با محاسبات برداری
- طراحی همروند نرمافزار سختافزار برای کاهش حجم مدل شبکه عصبی عمیق و تعداد ضرب و جمعهای لازم
- بررسی بینایی ماشین با روشهای یادگیری عمیق، نحوه آموزش بوردهای ARM و Stm32 برای اجرای مدلهای از پیش آموزش دیده
- برنامهریزی بوردهای سختافزاری از قبیل Arduino و stm32F704 برای اجرای روشهای تشخیص اشیا، تشخیص فرد
- استفاده از Tiny ML و Tiny AL بر روی سیستمهای نهفته مفاهیم مرتبط با بهینهسازی مدلهای یادگیری عمیق و محاسبات کمحجم
- بررسی تکنیکهایی مانند Auto ML، روشهای هرس کردن تکراری و تنظیم دقیق و چندیسازی برای کاهش حجم مدلها.
- یادگیری توزیعشده و استفاده از روشهای یادگیری انتقالی و تنظیم دقیق
- آشنایی با مدلهای مبدل بینایی و استفاده از آن در سیستمهای نهفته
ارزیابی پیشنهادی
- تمرینها و پروژه: ۳۰ درصد نمره
- آزمونهای میانترم و پایانی: ۵۰ درصد نمره
- پروژه پژوهشی: ۲۰ درصد نمره
منابع پیشنهادی
- P. Warden and D. Situnayake. TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers. O'Reilly Media, 2020
- B. Moons, D. Bankman, and M. Verhelst. Embedded Deep Learning: Algorithms, Architectures and Circuits for Always-on Neural Network Processing. Springer, 2019.
- A. Krishna Gupta and S. P. Nandya. Deep Learning on Microcontrollers: Learn how to develop embedded AI applications using TinyML. BPB Publications, 2023.