The course aims to provide knowledge on programming languages and techniques, algorithms and data structures useful for scientific programming, and techniques for Machine Learning and Deep Learning.
The course will be structured into two modules. In the first module, information on computer structure and memory management will be provided. The basics of the Python programming language will then be introduced, and fundamental data structures will be covered. The use of functions, loops, and conditional statements will be illustrated. Object-oriented programming and recursive programming concepts will also be presented. Information will be provided for code management, data mining, and results visualization.
In the second module, fundamental concepts related to Machine Learning and Deep Learning will be presented. The main techniques for supervised and unsupervised Machine Learning and the necessary libraries for the development of regression and classification models will then be introduced. Finally, the main architectures of Deep Neural Networks and the libraries for their development will be presented.