Machine learning was defined in 1959 by Arthur Samuel as the "field of study that gives computers the ability to learn without being explicitly programmed". The EITC/AI/MLPP Machine Learning Programming with Python programme aims in introducing fundamentals of machine learning (including basic understanding of the theory) focusing on programming with Python. Except of the theory it covers applications along with theoretical and practical aspects of supervised, unsupervised, and deep learning machine learning algorithms. The programme covers linear regression, K Nearest Neighbors, Support Vector Machines (SVM), flat clustering, hierarchical clustering, and neural networks. It includes basic notions of the algorithimcs involved and the logic behind. It also covers discussion of the applications of the algorithms in programming using examplary real data sets along with modules (e.g. Scikit-Learn). The programme will also cover details of each of the algorithms by implementing these algorithms in code, including the involved mathematics with insights into how exactly the algorithms work, how they can be modified, and what are their properties, including advantages and disadvantages. The algorithmics involved in machine learning are rather simple (as conditioned by their scaling necessity for large data sets), as is the mathematics which they are based on (linear algebra).
Curriculum Reference Resources
Python documentation
https://www.python.org/doc/
Python releases downloads
https://www.python.org/downloads/
Python for Beginners Guide
https://www.python.org/about/gettingstarted/
Python Wiki Beginners Guide
https://wiki.python.org/moin/BeginnersGuide
W3Schools Python Machine Learning Tutorial
https://www.w3schools.com/python/python_ml_getting_started.asp
Download the complete offline self-learning preparatory materials for the EITC/AI/MLP Machine Learning with Python programme in a PDF file
EITC/AI/MLP preparatory materials – standard version
EITC/AI/MLP preparatory materials – extended version with review questions