FINM 33165

Probabilistic Programming and Deep Learning

Autumn Quarter
Instructor: Niels Nygaard
Syllabus

The course is a continuation of the course Machine Learning in Finance and introduces Deep Learning models i.e. Artificial Neural Networks (ANN). We will develop the training algorithms for Deep Learning Networks in particular Stochastic Gradient Descent and discuss how an ANN can be thought of as a composition of the models developed in the previous course. We will also study the Bayesian aspects of ANNs. After the basic properties are developed we will turn to Convolutional Deep Learning models and apply them to analyzing patterns in financial data and forecasting short tern price movements. The results from the Deep Learning approach will be used to develop trading strategies and comparing results from these strategies to results obtained from simpler Machine Learning models. The course uses the Python programming languages and several packages implementing Deep learning models, Theano, Tensorflow and Keras, as well as Scikitlearn and we will spend a significant amount of time learning to master these packages . We will also discuss how the use of GPU computing can dramatically increase the computational performance of the  implementations of training algorithms.

Prerequisite: FINM 33160 or FINM 33161/FINM 33162 or Consent of Instructor. Students may apply one of FINM 32850 or FINM 33161/33162 or FINM 33165 toward the computing requirement.