نیما موسوی
درباره فرد
سوابق تحصیلی
- کارشناسی ارشد:
علایق پژوهشی
-
هوش مصنوعی
-
الکترونیک
-
اینترنت اشیا
-
پردازش سیگنال
-
پردازش تصویر
دروس تدریسی
درس کلان داده به موضوع به روز و ترند جهانی کلان داده با دو رویکرد الگوریتم محور و سیستم محور می پردازد.
در رویکرد الگوریتم تمرکز بر الگوریتم های تحلیل کلان داده بوده و در رویکرد سیستم محور، به معماری سیستمهای کلان داده به نحوی که پایدار، مقیاس پذیر باشند اشاره می شود..
در واقع در رویکرد الگوریتم محور می گوید چگونه داده ها را تحلیل کنیم و از آن دانش بیرون بکشیم و رویکرد سیستم محور می گوید چگونه داده ها را در سطح زیرساخت ذخیره و پردازش کنیم.
همچنین در این درس به ترندهای جدید حوزه کلان داده همانند بلاک چین نیز پرداخته خواهد شد.
تدریسیاران
- مریم طالبی
- پارسا محمدی
- نیما موسوی
- فائزه صادقی
- امیرمحمد تلیسچیان
کتابها
- (Leskovec, Rajaraman, Ullman, ۲۰۱۹) کاوش مجموعه دادههای عظیم
- (Martin Kleppmann, ۲۰۱۷) طراحی برنامههای کاربردی با حجم داده بالا
اسلایدها
- Big Data-Chap ۱-Introduction-ver ۱.۰
- Big Data-Chap ۲-Dimension Reduction-ver ۱.۰
- Big Data-Chap ۳-Types of data-ver ۱.۰
- Big Data-Chap ۵-Cache and GPU in Big data-ver ۱.۰
- Big Data-Chap ۶-Databases -ver ۱.۰
تکلیفها
هدف این درس برقراری ارتباط بین جدیدترین موضوعات حوزه سیستم های دیجیتال و حوزه هوش مصنوعی می باشد. در این درس ابتدا، با رویکردی کاملا الکترونیکی انواع سیستم ها و رویکردهای پردازش موازی بررسی خواهد شد. سپس معماری GPU های نسل آخر کمپانی Nvidia همانند معماریBlackwell ۲۰۲۴ بررسی خواهد شد. در گام دوم مدلهای زبانی بزرگ و آخرین پیشرفت ها در این حوزه بررسی خواهد شد. درگام سوم، نحوه استفاده از مدلهای زبانی بزرگ و GPU بر روی داده های مختلف شامل داده های تصویر، سیگنال و داده های ژنتیک مورد بررسی قرار داده خواهند شد.
جامعه مخاطب این درس سه گروه مختلف هستند.
گروه اول افرادی هستند که می خواهند با سیستم های پردازش موازی و بخصوص GPU های نسل آخر کمپانی Nvidia آشنا شوند.
گروه دوم افرادی هستند که می خواهند با مدلهای زبانی بزرگ و آخرین پیشرفت های آنان به صورت تخصصی آشنا شوند.
گروه سوم افرادی هستند که می خواهند بر روی پردازش داده های مختلف شامل داده های تصاویر پزشکی (ام آر آی، سی تی اسکن، پت اسکن، رادیولوژی، ماموگرافی)، سیگنالهای پزشکی (نوار قلب، نواز مغز، نواز عضله و عصب) و یا داده های ژنتیک (ژنومیکس، اپی ژنومیکس و ترنسکروپتومیکس) و سایر داده های پزشکی همانند (پرتئومیکس، متابولیسم، گات مایکروبیوتا) کار کنند. البته داده ها صرفا به داده های پزشکی محدود نخواهد بود و شامل انواع داده های مختلف می باشد اما به جهت فهم بهتر داده های تصویری و لزوم تمرکز بر یک حوزه خاص، تاکید بیشتری بر روی داده های پزشکی وجود خواهد داشت.
سیلابس درس به شرح ذیل است
بخش اول) بخش پردازش موازی و معماری GPU های نسل آخر NVidia (۳۳ درصد)
سیستم های پردازش موازی
آشنایی با معماری سیستمهای چندهستهای
آشنایی با برنامهنویسی چندنخی، مدلها و زبانهای برنامهنویسی مرتبط با آن
آشنایی با مفاهیم پردازش برداری، SIMD، SSE، AVX و نحوه استفاده از آن
پیادهسازی الگوریتمها به صورت چندنخی و برداری با استفاده از زبانهای برنامهنویسی چندهستهای (OpenMP)
آشنایی با روشهای متداول همگامسازی نخ، قفل، مانع
آشنایی با معماری پردازندههای گرافیکی، سلسله مراتب حافظه در GPU
آشنایی با تاریخچه معماری های GPU کمپانی Nvidia شامل Fahrenheit, Kelvin Turing, Hopper, Blackwell, Blackwell Ultra
آشنایی با بلوک های چیپ گرافیکی CB۲۰۲ Chipset
آشنایی با واحدهای GPC, Memory Controller, Cache, AMP & Giga Thread Engine, NVENC / NVDEC, Optical Flow Engine, PCI Express ۵.۰ Host Interface.
بررسی ماژول Mixed FP۳۲/INT۳۲ module
آشنایی با معماری و قابلیت های هسته های پردازشی Ray tracing core, Cude core, Tensor core
آشنایی با واحد های Warp Schedulers & Dispatch Units
آشنایی با واحد Texture Units: perform texture fetches and filtering
آشنایی با بخشLoad/Store Units (LD/ST): handle memory access (global/local memory ۱۰-reads/writes)
آشنایی با بخش Register File: private storage per thread
آشنایی با حافظه های سریع Shared Memory / L۱ Cache: memory accessible by all threads in the SM. و پیاده سازی سریع الگوریتم ها به کمک این حافظه ها
آشنایی با واحد پردازش هوش مصنوعیAI Management Processor (AI kernels, Multi-GPU Scaling, tensor parallelism, Training massive models (LLMs), data parallelism) و نحوه استفاده از آنها در پیاده سازی مدلهای LLM
آشنایی با معماری CUDA و GPU Driver
آشنایی با بخشUser-Space Driver of GPU (Resource & State Management (Logical View), Build Command Buffers, Interface with Kernel Driver, API Front-End, State Manager, Compiler Stack, Resource Manager, Command Buffer Builder, Caching & Pipeline Database)
آشنایی با بخشKernel-Space Driver of GPU (Context Manager, Memory Manager, Command Processor Interface, Scheduler / Dispatcher, Synchronization Manager, Interrupt Handler, Power & Thermal Control, Virtualization Layer)
آشنایی با برنامهنویسی موازی GPU و زبان برنامهنویسی CUDA
ارائه مثالهایی از پیادهسازی کاربردهای معمول در GPU
برنامه نویسی با CUDA
تغییر در کرنلهای CUDA برای یک منظور خاص همانند FFT با تعداد نقاط دلخواه
بخش دوم) شبکه های LLM (۳۴ درصد)
بررسی شبکه های LLM و آخرین پیشرفت ها در این حوزه
آشنایی با مبانی Large Language Modeling
آشنایی باTokenization و اثرات پنهان آن
آشنایی با مدلهای پایهGPT، BERT، T۵
آشنایی با Reasoning در LLMها
آشنایی با انواعHallucination و عدم قطعیت
آشنایی با انواع روشهایRAG و اتصال به دانش خارجی (همانند Naïve RAG, Advanced RAG, Modular RAG)
ارزیابی و بحران Benchmark
بررسی معماری آخرین نسل Llama, GPT, Deep Seek و سایر مدلهای بروز جهانی
بخش سوم) کاربرد LLM و GPU بر روی پردازش داده های مختلف (شامل داده های پزشکی) (۳۳ درصد)
پیاده سازی روشهای LLM به کمک GPU بر روی انواع مختلفی از داده ها
نحوه استفاده از مفهوم RAG در استفاده از پایگاه های داده متغیر با زمان ژنتیک در مدلهای LLM
نحوه استفاده از واحدهای AI Kernel , AI Processor در پردازش داده
پیاده سازی برخی از الگوریتم های سنگین بر روی GPU های نسل آخر کمپانی Nvidia با استفاده از حافظه سریع L۱ Cache memory.
آشنایی با فرمت تصاویر پزشکی همانند MRI, CT-scan, Pet-scan, Radiology, Mammography و نقش هر یک از این داده ها در فهم مسايل پزشکی
آشنایی با فرمت داده های سیگنال های پزشکی همانند نوار مغز، نواز قلب، نوار عضله و عصب و نقش هر یک از این داده ها در فهم مسايل پزشکی
آشنایی با مفاهیم پایه ژنتیک همانند DNA, RNA, Protein و Gut Microbiota
آشنایی با سطوح تحلیل داده های پزشکی شامل ژنومیکس، اپی ژنومیکس، ترنسکریپتومیکس، پرتئيومیکس، متابولومیکس، فنومیکس
نحوه Fine-tunning مدلهای LLM برای تحلیل داده های مختلف Multi-omics
نحوه طراحی لایه های Encoder , Decoder در مدلهای LLM بر روی تصاویر، سیگنال و ژنتیک
آشنایی با پایگاههای داده ژنتیک در پزشکی
تدریسیاران
- مریم طالبی
- جواد سبحانی
- مریم طالبی
- ناهید انصاری
- نیما موسوی
- Talischian Tabrizi
- Mohammadi
کتابها
- Programming Massively Parallel Processors, A Hands-on Approach, ۴th edition, ۲۰۲۳
- CUDA C++ Programming Guide, Release ۱۳.۱, NVIDIA Corporation, ۲۰۲۶