Hi there! This is an interactive tutorial on how to program in Python with an additional focus on Machine Learning (ML). I use it to teach Python for ML, i.a. at the Artificial Intelligence study at the Kepler University Linz.
- A full tutorial on how to program in Python from the beginning (bits/bytes) to programming neural networks in PyTorch.
- Interactive materials for self-study.
- Small tasks for you to check your knowledge.
- Basics about computers and programming (CPU, GPU, RAM, harddrive, bits, bytes, datatypes)
- Set-up of Python and PyCharm.
- Basics in Python (variables, datatypes, lists, tuples, dictionaries, functions, modules, exceptions, files)
- More advanced Python (subprocesses and multiprocessing, regex, numpy, matplotlib, classes, code optimization, numba, PyTorch)
- Python for Machine Learning (PyTorch)
- No prior knowledge in programming is required. If you're already familiar with similar languages or Python, just skim over the first units.
- Laptop, PC, or access to a server is required. No high-end machines are required. GPU is optional (but faster and more fun).
- 64bit Python 3.6 or higher. (For installation instructions see slides.)
- Recommended operation system: Ubuntu 18.04 or higher.
- Materials are structured in Units. Units typically consist of (interactive) Python code demonstrations/explanations, followed by small tasks to test your knowledge and gain experience.
- Two parts:
- General Python programming: basics up to more advanced things, including PyTorch preview
- Python and Machine Learning: Building ML projects in Python using PyTorch, following ML standards and good-practice, some hints for neural network training (will be uploaded later)
- Start with part I in folder "Programming-in-Python-I" and follow the README.md file there.
Best wishes and have fun!
-- Michael Widrich (widi)