The goal of the course is for the student to get both theoretical and practical experience in topics such as Convolutional Neural Networks for Image Recognition/Object Detection, Recurrent Neural Networks for Natural Language Processing, Transformer Models for Computer Vision and Natural Language Processing, Attention Mechanisms. The student will also build some basic knowledge around libraries used for image and text processing in Python as we will need those to improve prepare the data for training the models. The length of the course will be 14 units (lessons). There will be 2 lectures per week (day and time to be agreed with all students, so the majority of them will be satisfied). The feedback on the homework will be provided by the lecturer and delivered individually to each student. There will also be three practical tasks (details on the syllabus below). Each practical task will be due two weeks after the assignment, again feedback will be provided individually to each student by the lecturer.

Lecturer – Stefan Lazov

Price – 310 euro

Capacity – Maximum 20 students

Sign up procedure – The sign up period has already started at the moment you are reading the post. There is no end date for signing up. You can sign up at any moment but you would be able to attend the next iteration of the course (you cannot join in the middle of the ongoing one). An iteration of the course starts roughly every two months around the 15-th day of the month. The first one is expected to start around December 15-th 2021.To express interest in signing up, please email . After a student expresses interest he/she will go through a 15-30 minute online call with the lecturer in which they will discuss the motivation of the student for taking the course, any particular needs that the student has, etc. In 1-2 days after the call, the student will be notified whether he/she is approved for taking the course. In case some student gets disapproved, he/she will get detailed feedback on how to improve and reapply for the next iteration of the course.

Payment – After signing up you will receive details for making a bank transfer. You should pay before the second lecture of the course to continue attending until the end

Start of the course – Around 15-th of December

End of the course – 8 to 9 weeks after the start

Prerequisites – The student should have passed Introduction to Machine Learning or possess equivalent knowledge

Programming Language and Framework – Python and PyTorch


  1. Image Processing in Python 
  • CV2
  • PIL

2. Text Processing in Python

  • Pandas
  • NLTK

3. Convolutional Neural Networks – Theory

4. Convolutional Neural Networks – Main Architectures

  • VGG
  • ResNet
  • EfficientNet

5. Convolutional Neural Networks – Practice

  • Developing and Training a CNN in PyTorch

6. Practical 1 – Each student will receive a task to train and describe the performance of training a CNN model for an image recognition problem. The problem and the data will be the same for all students. There will be 2 weeks for each student to complete the task and describe the results in a research report (guidelinefs on how this report should be written will be given in class). During the lecture related to this practical we will discuss the problem, the presented data, and we will walk through some specifics which may help the student find a good solution.

7. Recurrent Neural Networks – Theory

8. Recurrent Neural Networks – Main Architectures

  • RNN
  • LSTM
  • GRU

9. Recurrent Neural Networks – Practice

  • Developing and Training an RNN in PyTorch

10. Attention mechanisms

  • Attention Mechanisms in Computer Vision
  • Attention Mechanisms in Natural Language Processing
  • Introduction to the Transformer Architecture

11. Transformer models

  • Transformer models in NLP
  • Transformer models in Computer Vision

12. Practical 2 – Very similar to Practical 1, although this time, the task will be related to Natural Language Processing

13. Object Detection

  • Main Architectures, Datasets, and Problems in Object Detection

14. Practical 3 – Very similar to Practical 1 and 2, although this time, the task will be related to Object Detection


  • Am I going to get a recording of the lectures? – Yes, each student will receive a recording of each one of the lectures
  • Can I communicate with other students? – Yes, there will be a Slack channel for the course, we will all communicate there
  • How often can I communicate with the lecturer? – Whenever you have a question, a problem or anything which concerns the course or improving your Machine Learning knowledge. You are more than welcome to ask the lecturer any questions which go beyond the boundaries of the course, ask for additional reading, etc.
  • Is there a recommended textbook? – No, each student will receive the notes for the next lecture after the end of the previous one. There will be references to books and papers in the notes, so you are more than welcome to read those and ask the lecturer questions about them
  • Are there going to be more advanced courses? – Yes, there will be at least 2 more advanced courses as this is the second course of the Machine Learning Specialization offered by Miracle Star. The next course which is recommended is one of Advanced Image Recognition and Object Detection and Advanced Natural Language Processing depending on the area of interest of the student. Both of those courses will be announced soon together with their syllabus, schedule, and prices.
  • How the lectures will be held? – The lectures will be held online over Zoom
  • Can I miss lectures? – Attending or missing lectures is your own responsibility and decision
  • Will I get a recording of the lecture if I did not attend? – Yes, you will also be able to address any questions to the lecturer you have over the Slack channel
  • Will I get a certificate? – No, but the completed practicals and the submitted research reports will serve as very good portfolio projects for you
  • Will the graduates receive any job offers? – Miracle Star will negotiate potential partnerships with software companies looking for machine learning engineers. The short answer is maybe but the purpose of the course is to prepare you for entering the ML field and finding a job by yourself. If any additional opportunities arise, you will be notified.

Leave a Reply

Your email address will not be published. Required fields are marked *