Course Code: bspml
Duration: 21 hours
Overview:

Bespoke Python & Machine Learning course for Ofcom

Course Outline:

Day 1 (AM) Python for Data Science and Machine Learning 

- pandas and numpy

- reading in data from files and the web

- arrays

- common matrix operations

- optimizing performance by avoiding loops

- sorting

- filtering 

- aggregating 

- working with time series data 

Day 1 (PM) Principles of Machine Learning 

- Supervised learning: classification and regression

- Trade-off between good model fit and overfitting

- The perceptron (a first look at neural networks)

- Discriminant analysis

- Logistic regression as classifier

- The support vector machine

- K-nearest neighbours

- Measuring performance

Day 2 (AM) Neural networks 

- From regression to neural networks

- Multi-layer perceptrons

- Activation functions: Sigmoid, ReLU

- Cost functions: squared error loss, cross-entropy

- general NN tips and tricks: choosing learning rates and regularization constants

- TensorFlow as an environment for efficient computation on graphs

- Training statistical models in TensorFlow (via Keras)

- Optimization

Day 2 (PM) Deep learning with convolutional neural networks (CNNs)

- Motivation: the visual cortex

- Architecture of CNNs:

- Convolutional layers

- Pooling layers for downsampling

- Normalization

- Regularization

- L1/L2 regularization

- Dropout

Day 3 (AM) Ensemble Methods & Unsupervised Learning

- Decision trees

- Bootstrap aggregation (bagging) for decision trees

- Random forest

- Boosted decision trees

- Unsupervised Learning

- Principal components analysis

Day 3 (PM) Practical examples of problems that machine learning can solve, e.g.

- image analysis

- forecasting complex financial series, such as stock prices,

- complex pattern recognition

- natural language processing

- recommender systems