Ludger Paehler

@lpaehler

Joined on Jan 18, 2022

  • tags: Blog This is cross-published on my website Motivation The current installation instructions of Numba face some difficulties induced by the way Apple packages its software development toolkit. This note documents how to set Numba up from start to end on an M1-based Mac, and where alternate approaches fail. We are building with support for OpenMP to utilize all available threads, but without support for Threading Building Blocks, which are unsupported on Mac, and likewise without support for CUDA, which is also not available on Mac. Building Numba from Source for Local Development with OpenMP-Support To build Numba on Mac (or any platform for that matter) we need to begin by creating a conda environment with the base-dependencies
     Like  Bookmark
  • View the book with " Book Mode". Table of Contents Welcome! Preliminaries Introduction Core Content 1 Core Content 2
     Like  Bookmark
  • Probability Theory Basic Building Blocks $\Omega$ - sample space: the set of all outcomes of a random experiment. $\mathbb{P}(E)$ - probability measure of an event $E \in \Omega$: a function $\mathbb{P}: \Omega \rightarrow \mathbb{R}$ which satisfies the following three properties: $0 \le \mathbb{P}(E) \le 1 \quad \forall E \in \Omega$ $\mathbb{P}(\Omega)=1$ $\mathbb{P}(\cup_{i=1}^n E_i) = \sum_{i=1}^n \mathbb{P}(E_i) ;$ for disjoint events ${E_1, ..., E_n}$
     Like  Bookmark
  • Famous Recent Examples of Scientific Machine Learning With scientific machine learning becoming an ever larger mainstay at machine learning conferences, a/nd ever more venues and research centres at the intersection of machine learning and the natural sciences / engineering appearing there exist ever more impressive examples of algorithms which connect the very best of machine learning with deep scientific insight into the respective underlying problem to advance the field. Below are a few prime examples of recent flagship algorithms in scientific machine learning, of which every single one of them personifies the very best algorithmic approaches we have available to us today. AlphaFold - predicts 3D protein structure given its sequence: GNS - capable of simulating the motion of water particles:
     Like  Bookmark
  • This is a list of recommended books to accompany the lecture Probabilistic Machine Learning: An Introduction, by Kevin P Murphy Pattern Recognition and Machine Learning, by Christopher M Bishop Gaussian Processes for Machine Learning, by Carl E Rasmusses, and Christopher KI Williams Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control by Steven L Brunton, and J Nathan Kutz Available through the university library as an e-book. An Introduction to Statistical Learning, by Gareth James, Daniela Witten, Trevor Hastie, and Robert Tibshirani
     Like  Bookmark
  • Welcome to the 2nd edition of the Introduction to Scientific Machine Learnign for Engineers in the winter semester 2022/2023! We are looking forward to a hopefully great semester, and to excite as many of you as possible for Scientific Machine Learning. The course breaks down into an introduction to the topic, followed by 4 core content blocks which are interspersed with practice problems while being supported by JuPyter notebook-based tutorials for the practical application of the learned concepts. Lecturers Nikolaus A. Adams Artur Toshev (artur.toshev@tum.de) Ludger Paehler (ludger.paehler@tum.de)
     Like  Bookmark
  • Formalia Lecture every Monday from 15:00 until 16:30. Tutorial bi-weekly on Wednesdays from 16:00 until 17:30 taking place fully virtually. There will be dedicated open office hours in the weeks before Christmas, i.e. before the revision cycle begins, and in January, during the revision cycle, to help you prepare for the exam and not leave any open questions unanswered. Exam Take-home exam with 2 components
     Like  Bookmark
  • What do you need? A basic handling of linear algebra, and probability theory are required to understand the theoretical part of the course. Exercises, and practicising the practical parts of the course require a basic handling of Python. If you are an ardent believer of programming language X, we will not force you to use Python. Problem sets, as well as model solutions will only be provided in Python, but there is nothing keeping you from doing the exercises in e.g. Rust. Sources for Preliminary Reading in Case you Seek to Refresh your Memory Patterns, Predictions, and Actions
     Like  Bookmark
  • My Laptop/Computer is very old and I am concerned that I might not be able to partake as much as I'd ideally like to There exist a number of resources to run the tutorials online, and also work on the practical problems for yourself online without having to rely on the computing prowess of your laptop: Google Colab, quite probably the most well-known solution to run JuPyter notebooks online, and not have to concern yourself with mismatched software dependencies as 99.99% of the notebooks run out-of-the-box on Google Colab. AWS SageMaker Studio Lab new-ish competitor to Google Colab. Pretty much the same as Google Colab, just running on Amazon Web-Services. PaperSpace Gradient Hosted JuPyter runtime on the cloud with pre-installed machine learning packages. I have a question which is not suitable for the Moodle, who should I contact? If you have a question, which you feel is unsuitable for Moodle, personal, or you feel unsure and would prefer to rather ask directly, then please send an e-mail to Artur Toshev (artur.toshev@tum.de), and Ludger Paehler (ludger.paehler@tum.de), and we will get back to you as soon as possible.
     Like  Bookmark
  • Introduction [ ] Bayesian Curve Fitting [ ] Maximum Likelihood [ ] Clean up Examples, and expand them more s.t. one can see the techniques behind them Core Content 1: [ ] Linear Regression [ ] Logistic Regression
     Like  Bookmark
  • Title Differentiable GPU-Offloading beyond CUDA: Handling Machine Learning with OpenMP & Enzyme Executive Summary Differentiable GPU-computing of some of the biggest workloads, such as machine learning, is currently mostly performed with NVIDIA's proprietary backends cuBLAS, and cuDNN. In this project we will build on LLVM's open source stack in combining OpenMP and Enzyme to first simplify the user-syntax, and subsequently construct a proof-of-concept PyTorch backend utilizing OpenMP's GPU-offloading, and Enzyme's differentiation engine to perform all differentiation, and offloading within the LLVM compiler stack. Key Deliverables Easily usable syntax of Enzyme for OpenMP at the Pragma-level
     Like  Bookmark
  • Optimize for parallellism Spatial locality Temporary locality Optimize for underlying hardware Maximize for outer loop parallelism Advantages of JAX: JAX HLO layer
     Like  Bookmark
  • About Introduction Getting Started Development Environment PyTorch Geometric Microsoft DeepSpeed Datasets
     Like  Bookmark
  • Current Status [x] Base-OS Installs on all servers [x] MAAS Setup to have a bare-metal cloud [x] Do virtual machines have access to the internet? [x] NAT setup on Hideko (made redundant by the next point on the agenda) [ ] Own sub-network for the cluster [ ] Juju Installation (LP) - in progress, held up by curl
     Like  Bookmark
  • Presuming a fresh MAAS system image as the starting point Preliminaries 1. Enable password-less sudo sudo vim /etc/sudoers and add the NOPASSWD: in front of the last ALL in the line defining the commands sudo users are allowed to execute. 2. Enable password-based ssh login sudo vim /etc/ssh/sshd_config
     Like  Bookmark