The use of data analytics techniques, such as Machine Learning and Deep Learning, has become the key for gaining insight into the incredible amount of data generated by scientific investigations (simulations and observations). Therefore it is crucial for the scientific community to incorporate these new tools in their workflows, in order to make full use of modern and upcoming data sets. In this tutorial we will provide an overview on the most known machine learning algorithms for supervised and unsupervised learning. With small example codes we show how to implement such algorithms using the Intel® Distribution for Python*, and which performance benefit can be obtained with minimal effort from the developer perspective.
Furthermore, the demand of using Deep Learning techniques in many scientific domains is rapidly emerging and the requirements for large compute and memory resources is increasing. One of the consequences is the need of the high-performance computing capability for processing and inferring the valuable information inherent in the data.
We cover also how to accelerate the training of deep neural networks with Tensorflow, thanks to the highly optimized Intel® Math Kernel Library (Intel® MKL). We also demonstrate techniques on how to leverage deep neural network training on multiple nodes on a HPC system.
Fabio Barffa is a senior software technical consulting engineer at Intel. He provides customer support in the high performance computing (HPC) area and artificial intelligence software solutions at large scale.
Prior at Intel, he has been working as HPC application specialist and developer in the largest supercomputing centers in Europe, mainly the Leibniz Supercomputing Center and the Max-Plank Computing and Data Facility in Munich, as well as Cineca in Italy. He has been involved in software development, analysis of scientific code and optimization for HPC systems. He holds a PhD in Physics from University of Regensburg for his research in the area of spintronics devices and quantum computing.
9:00 - 10:30
Morning session: Artificial Intelligence on Intel Hardware Platforms
- Intel’s Hardware and Software directions for Artificial Intelligence (AI)
Machine Learning (ML) and Deep Learning (DL)
- Hardware Accelerated Deep Learning instructions and implementations
DL Boost, VNNI instructions
10:30 - 11:00 Coffee break
11:00 - 12:30
- Performance optimized Python
Hands-on Labs with Python focus on Classical Machine Learning examples and algorithms
12.30 - 14:00 Lunch break
14:00 - 17:00
Afternoon session: Optimized Deep Learning Frameworks
- Performance optimized Frameworks solutions from Intel
Tensorflow, Keras, Caffe, Pytorch, BigDL and others
- Performance acceleration with Intel MKL and Intel MKL-DNN for Deep Neural Network
15:30 - 16:00 Coffee break
16:00 - 17:00
Afternoon session: Distributed Deep Learning Solutions on HPC systems
- Accelerate Training and Inference of Distributed solutions on HPC (MPI) environments using Xeon (x86)
Distributed Tensorflow with Horovod
Distributed Machine Learning with Daal4py