Introduction to Deep LearningLaajuus (5 ECTS)
Course unit code: TX00FE78
General information
- Credits
- 5 ECTS
Objective
This course provides an understanding of the basic mechanisms of deep learning models related with image processing. The students will learn how to develop a VGG-16 model for image recognition and a YOLO v1 algorithm for object detection from scratch. These algorithms use Convolutional Neural Network (CNN), which provides excellent performance in the field of image processing, and the main theme of this course is to learn its mechanism and application methods. This course also provides an understanding of how to use PyTorch, one the most popular framework in deep learning, including how to work with both open datasets and original datasets. In the latter half of the course, the students will work on a simple project in a team and improve their programming skills and the knowledge of deep learning through the development experience.
Content
Day 1: Introduction to PyTorch (popular neural network framework)
- Reviews on Neural Network Basics
- Building and training simple neural networks with PyTorch
- Image recognition using Convolutional Neural Network (CNN) and some tricks
Day 2: Image recognition with deep learning
- Image recognition using VGG-16 network model
- Using pretrained models and transfer learning
- How to use original dataset for image recognition
Day 3: Object detection (1)
- An Overview of object detection problems
- Overview of YOLO v1 algorithm
- Building YOLO v1 from scratch (1)
Day 4: Object detection (2)
- Building YOLO v1 from scratch (2)
- Training YOLO v1 with Pascal VOC dataset
Day 5: Mini-project planning
- Team building and project planning
- Deep learning model and dataset preparation
Day 6, 7: Mini- project
- Carrying out system development with deep learning for each team
Day 8: Presentation session
- Students report their project results in teams
Additional content
How to use the pretrained model will also be introduced in the course.
Qualifications
It is desirable to have completed the contents of Introduction to Machine Learning course. Otherwise, object-oriented programming experience is required, especially Python programming experience is desirable. Basic knowledge of neural networks and machine learning algorithms is also desirable. In this lecture, some basic mathematical expressions such as linear algebra and calculus are used.