How to train your machine!

General description

Are you ready for a mind-blowing experience about the cutting edge of Machine Learning?

Machine learning is the science of getting computers to act without being explicitly programmed. It has given us self-driving cars, speech recognition and effective web search. Machine learning is so pervasive today that you probably use it dozens of times a day without knowing it.

In this Course you will be introduced to the basics of Machine Learning, you will learn how Machine Learning works and different algorithms that use this technology.

Come to one of the best universities in Romania and explore the secrets of future technologies. Get to know 20+ other students from all around Europe experiencing 10 days of great romanian traditions, sightseeing and partying for a lifelong memory!

Don't be shy, just apply!


Academic information

Fields of activity:
Applied Sciences , Computational Sciences , Computer Engineering , Computer Science/Automatic Control/Informatics
Content and topics:
The course contains a description of important classical algorithms and explains when each of them is appropriate. We will analyze some algorithms in order to understand their behavior and we will learn techniques that can be used to create new algorithms to meet future needs. Additionally, we will discuss variety of general problem-solving techniques. This Fundamental Algorithms training course leads the students from the basics of writing and running Python scripts (for some selected algorithms) to more advanced features (usage of specific libraries, integrating basic hardware components into the project). Moreover, we will gain the ability to vectorize a piece of code. Although there are different code optimization strategies, clearly the vectorized implementation is much faster than the non vectorized one. NumPy is a python library that is used for scientific computation. It offers various inbuilt functions that make it easy for us to write a vectorized code. NumPy objects in Python provides that advantage over regular programming constructs like for-loop. The students will have the opportunity to work in teams at some selected tasks/issues about interesting algorithms while being supervised by the trainer. In the framework of an IoT platform, we will focus on interacting with a microcontroller board by digital outputs, pulse width modulation pins, digital inputs, polling and/or interrupts, analog inputs, local storage. Pacing from the real world toward the autonomous systems, we are planning to use sensors and actuators for endowing the self-* properties to the systems.
Learning goals and objectives:
The acquisition of an algorithmic thinking and the development of algorithmic solution design skills, as well as the acquisition of techniques for the use of the main data structures. The acquisition of basic knowledge and programming skills in Python Identify/characterize/define a problem and design an application (in Python) Learning how to deal with some popular libraries for Python (e.g. NumPy, mraa). The course will guide the student into the classical steps of machine learning: data cleaning, feature selection/extraction, supervised learning (including model validation), inference and result interpretation. Depending on the time budget (both for presentation and for model training), multiple candidate models will be compared for the same task. Prototyping and implementing basic Internet of Things architectures for modern smart domains by taking the advantage of transforming everyday objects into smart devices with sensors and actuators.
Examination type:
Small Projects and Written (quiz) exam
ECTS credits issued:
Not known yet

Information for applicants

Selection criteria:
Motivation letter, answer questions

Practical arrangements

All of the following are covered by the event fee:

students dormitory
Three meals per day, at least one of them hot (cooked and served by organizers or by local cafes).
By public transport, on foot.