Neural Networks and Memristive Hardware Accelerators
Module Neural Networks and Memristive Hardware Accelerators (NES-22-E-NNMHA) and (IST-W-22-NNMHA)
Quick overview
Content (videos)
Important notices
OPAL
Lecturers
Dr.-Ing. Richard Schroedter
Dipl.-Ing. Steffen Seitz
Dr.-Ing. Carsten Knoll
Project supervisors
Dr.-Ing. Richard Schroedter,
Dipl.-Ing. Steffen Seitz,
Dr.-Ing. Carsten Knoll,
Dr. Ahmet Samil Demirkol,
Dr. Dimitrios Prousalis,
M.Sc. Adnan Haidar,
Dipl.-Ing. Kilian Göller,
Course description
The lecture is intended for students in the main study (7th semester) of Informationssystemtechnik (IST) and in the master study (1st semester) of Nanoelectronic Systems (NES).
Neural network systems are modeled after the human brain and can accomplish many difficult tasks such as image, speech recognition and generation as well as autonomous driving. Traditional computer hardware is suffering from a Neumann bottleneck, requiring new strategies to handle the enormous growth in data. This can be tackled with the so-called in-memory computing, which uses memory hardware to store and compute data in the same device. One promising solution are novel materials in the nanoscale offering resistors with memory function, so-called memristors.
This course will introduce the basic concepts of machine learning and neural networks for different data types like time series and images. The audience will learn about different network learning methods, optimizers and loss functions and understand the reliance of these methods on vast amounts of data and that computing power is a limiting factor in neural model development.
Then course will bridge from software to hardware accelerators for implementing neural networks specifically based on memristive devices. Basic memristor theory and its application in crossbars, logic circuits and neurons are introduced, and insights into the concepts of crossbar mapping, peripherals, and spiking neural networks are provided.
In addition, the students learn how to apply the python language and how to implement basic neural models in code utilizing ML related python library’s like PyTorch and simulate memristive circuits using LTSpice.
Parallel to the course, students will work on their own semester project using Python or SPICE and present the implementation results at the end of the lecture.
At the end of the semester the knowledge will be examined by an oral or written exam.
Course content
-
Introduction to Neural Networks and Memristors Lecture video 1 (WS 2024/2025)
-
Machine Learning Lecture video 2 (WS 2024/2025)
-
Deep Neural Networks Lecture video 3 (WS 2024/2025)
-
Convolutional Neural Networks Lecture video 4 (WS 2024/2025)
-
PyTorch Tutorial Lecture video 5 (WS 2024/2025)
-
Sequential Neural Networks Lecture video 6 (WS 2024/2025)
-
Neural network hardware accelerators Lecture video 7 (WS 2024/2025)
-
Memristor circuit theory Lecture video 8 (WS 2024/2025)
-
SPICE tutorial Lecture video 9 (WS 2024/2025)
-
Memristor physics and modeling Lecture video 10 (WS 2024/2025)
-
Memristive crossbars and logic circuits Lecture video 11 (WS 2024/2025)
-
Crossbar mapping and performance Lecture video 12 (WS 2024/2025)
-
Memristive neurons Lecture video 13 (WS 2024/2025)
-
Spiking Neural Networks Lecture video 14 (WS 2024/2025)
Python course
Important notices
Winter semester 2024/2025:
- Lecture in presence every Tuesday 9:20am in TOE/317, Starting on 15.10.2024 (Lecture videos are made available for self-study afterwards)
- Additional Python for Engineers: online ( http://www.tu-dresden.de/pythonkurs and OPAL course "Python for Engineers")
- Semester project in small groups (Python/SPICE programming task + presentation)
Please sign up using the OPAL link below.