## Tutorial 1: Python and tensor basics

Environment setup, jupyter, python, tensor basics with numpy and PyTorch

All tutorial materials will be available on this page.

The tutorial notebooks can be obtained by cloning the course tutorials repo, or viewed in your browser by using nbviewer.

Environment setup, jupyter, python, tensor basics with numpy and PyTorch

Supervised learning framework, binary and multiclass logistic regression, pytorch and autograd basics

MLP model, activations, backprop, loss functions and optimization in PyTorch

Convolutional and pooling layers, architectures, spatial classification, residual nets.

RNN implementation, sentiment analysis, Temporal Convolution Networks.

Transfer learning definition and contexts, fine-tuning pre-trained models, unsupervised domain adaptation via an adversarial approach.

Attention mechanisms, sequence-to-sequence models, machine translation.

The RL setting, openAI Gym, Deep q-learning for Atari games.

Filters on graphs, graph convolution layers, semi-supervised node classification

The CUDA programming model, numba, implementing CUDA kernels in python, thread synchronization, shared memory