Course Data

Course name: Machine Learning with Python
Course length: 3 days
Remote: Yes
Open course: Yes
In-house: Yes
Course ID: MLE
German course here

Course Finder

Find the right course for your needs..

Combining Topics

Company courses allow to assemble trainings combining topics from different courses.

Course Topics Overview as PDF

You can download our flyer. It has an overview of all our course topics.

Machine Learning with Python - A Comprehensive Introduction

Intended Audience

Scientists, engineers, software developers, data scientists, and data engineers with knowledge of Python equivalent to that provided by our course Python for Nonprogrammers or Python for Programmers. Furthermore, knowledge of the libraries NumPy, pandas, and Matplotlib, as covered in our our course Python for Scientists and Engineers, is highly beneficial to get most out of this training. No or little previous exposure to machine learning and deep learning is required.

Motivation

Machine learning allows programs to learn from data. It can help to discover patterns in data and to build innovative applications leveraging data in various forms: columnar, images, time series, sound or text. Machine learning introduces a different paradigm of problem solving: Instead of explicitly writing a program, the task shifts towards building a setup where an algorithm can propose a solution based on data. This way complex, fuzzy or otherwise unsolvable problems can be approached.

Course Content

Overview of the machine learning landscape in Python

The Python community has developed a broad ecosystem for machine learning tasks over the years. This course section provides a brief introduction to a selection of important libraries, frameworks, and tools.

Machine learning paradigms, problem setting, and development cycle

You will learn about the problem setting of machine learning as well as about typical development cycles: from problem formulation to model evaluation.

Data access, preparation and visualization

Machine learning requires data. Real-world data is often not suitable to be used in algorithms right away. In fact, a large amount of time is spent with preparatory work, such as accessing, visualizing, and cleaning data. Python is very good tool for these tasks. Often, Python allows to express complex processing in only a few lines of code. Powerful libraries such as NumPy, Pandas, matplotlib, and seaborn are essential for this high productivity. This course part focuses aspects of these popular libraries that are relevant to machine learning.

Data representation

Data comes in all shapes and colors. For machine learning this data must be converted into grids of numbers. The course introduces the most common representations and demonstrates how they can be translated into performant Python datastructures.

Regression problems

Linear regression is a classical technique to model and estimate continuous numerical values. The algorithm is simple, scales well and has a high level of interpretability. Different implementations are possible with Python, from one-shot learning to an iterative approach.

Classification problems

Many real-world problems can be framed as classification problems, either binary or multi-class. Spam detection, sentiment analysis, credit approval, galaxy identification. A variety of approaches exists, among them logistic regression.

Unsupervised learning

Unsupervised learning techniques such as clustering and dimensionality reduction are established approaches. Examples show how these methods can help to solve real-world problems.

Feature engineering

The process of feature engineering allows to select or to derive new features from existing data, if the input data does not suffice as is. Not every feature is important and there are several ways to select and test a well-performing subset.

Model evaluation, optimization and parameter tuning

Evaluation metrics allow to measure the performance of a model. Many machine learning models have a fixed number of parameters, which can and have to be tuned, in order to increase performance. Grid search is a prominent way to evaluate and find optimal parameters for a model.

Practical application

Examples of practical applications demonstrate and reinforce the machine learning process from data cleaning to evaluation and parameter tuning, using various data sets.

Neural networks

Neural networks are a generic tool that have gained popularity in the recent decade. They can learn a wide variety of functions, but only in recent years the problem of learnability of the parameters has been addressed through algorithmic advances and better hardware. Python is well suited to build neural networks from scratch to understand the basic building blocks of the learning machines that existed for many decades and which also underlie more recent deep neural networks.

Deep learning with Python

Deep learning utilizes neural networks with more than one hidden layer. Advances in network architectures driven by research and industry have created models, that are capable of tackling hard learning problems, such as object detection in images. The deep learning community has seen a wide adoption of Python in the form of various frameworks. The emphasis will be on pytorch and lightning, while tensorflow and the keras frameworkswill be briefly introduced.

Optional Content

Working with CNNs and RNNs

Convolutional Neural Network are especailly useful for image recognition and processing The apply convolution instead of general matrix multiplication in at least one of their layers. Nodes in a recurrent neural network (RNN) can create a cycle, to account for temporal dynamic behavior by allowing node output affect subsequent input to the same nodes. This course part provides an introduction to pllications of CNNs and RNNs to the filed of image processing.

Forecasting and anomaly detection on time series

Time series forecasting can predict future behavior from patterns found in historical, timestamped data. Detection of anomalies in time series data is an important task in many areas. This course part gives and overview of useful libraries for these tasks and applies them to examples.

Exercises

The participants can follow all steps directly on their computers. There are exercises at the end of each unit providing ample opportunity to apply the freshly learned knowledge.

Course Material

Every participant receives comprehensive materials in PDF format that cover the whole course content as well as all source code.

How to contact us:
Python Academy GmbH & Co. KG
Zur Schule 20
04158 Leipzig / Germany
Tel:+49 341 260 3370
Fax:+49 341 520 4495
mail:info@python-academy.de
How to contact us:
Python Academy GmbH & Co. KG
Zur Schule 20
04158 Leipzig / Germany
Tel:+49 341 260 3370
Fax:+49 341 520 4495
mail:info@python-academy.de