KURSPLAN
Embedded and Distributed AI, 7,5 högskolepoäng
Embedded and Distributed AI, 7.5 credits
Kursplan för studenter höst 2023
Kurskod:TEDS22
Fastställd av:VD 2021-03-01
Reviderad av:Utbildningschef 2023-03-23
Gäller fr.o.m.:2023-08-01
Version:3
Utbildningsnivå:Avancerad nivå
Utbildningsområde:Tekniska området
Ämnesgrupp:DT1
Fördjupning:A1F
Huvudområde:Datavetenskap

Lärandemål

After a successful course, the student shall

Kunskap och förståelse

- show familiarity with embedded platforms (including laptop GPU’s, mobile phones, raspberry PI, NVIDIA Jetson Nano)
- show familiarity with embedded parallel processing architectures and CUDA
- display knowledge of how to fit AI/ML models into embedded platforms and how it changes performance/speed of the models
- display knowledge of choosing right embedded development platforms and tools to perform real-world AI applications

Färdighet och förmåga

- demonstrate the ability to design and implement an embedded and distributed architecture suitable for data gathering of sensor information to derive outcomes by using edge computing facilities
- demonstrate the ability to design and implement a deep-learning architecture suitable for image our sound analysis using GPU facilities

Värderingsförmåga och förhållningssätt

- demonstrate the ability to design and implement an image or sound processing deep learning architecture on an embedded platform of choice
- demonstrate the ability to explain the possibilities of extending the embedded platform to a distributed architecture for real world applications

Innehåll

The course includes the following elements:
- Introduction to Embedded and Distributed AI (architectures, platforms, sensors)
- Introduction to Image processing and computer vision
- Feature engineering and object detection on embedded systems
- Semantic segmentation and real-time processing on embedded systems
- TinyML and applications
- Real-time tracking, 3D reconstruction and SLAM on edge devices
- Transfer learning and mobile applications (using TensorFlowJS and TensorFlowLite)
- IoT applications and using clouds for distributed system development
- Introduction to natural language processing (NLP) and examples by using Google Cloud
- Introduction to cloud computing
- Introduction to CUDA parallel programming
- Introduction to Sensor Fusion
- Introduction to Distributed/Federated Learning

Undervisningsformer

Assignments and one final project.

Undervisningen bedrivs på engelska.

Förkunskapskrav

Passed courses at least 90 credits within the major subject Computer Engineering, Electrical Engineering (with relevant courses in Computer Engineering), or equivalent, or passed courses at least 150 credits from the programme Computer Science and Engineering, and completed course Machine Learning, 7,5 credits or equivalent. Proof of English proficiency is required.

Examination och betyg

Kursen bedöms med betygen 5, 4, 3 eller Underkänd.

Poängregistrering av examinationen för kursen sker enligt följande system:
ExaminationsmomentOmfattningBetyg
Slutprojekt15 hp5/4/3/U
Inlämningsuppgifter2,5 hpU/G
1 Bestämmer kursens slutbetyg vilket utfärdas först när samtliga moment godkänts.

Kurslitteratur

The literature list for the course will be provided 8 weeks before the course starts. Detailed literature will be provided at the end of each course module. However, the following references might be supportive as well. It is not mandatory to have any book to pass this course.

TinyML Pete Warden and Daniel Situnayake, Book preview: https:tinymlbook.com/

Deep Learning, Ian Goodfellow, Yoshua Bengio, Aaron Courville, Online book: https:
www.deeplearningbook.org/

TensorFlowLite website for documentation and examples: https:www.tensorflow.org/lite

Playlist of the Spring 2020 semester lectures: https:
www.youtube.com/playlist?list=PLyulI6o7oOtycIT15i_I2_mhuLxnNvPvX