Machine Learning Projects

  • Challenge: learn the foundations of machine learning

  • Actions:

    • concepts: linear regression, logistic regression, regularisation, neural networks, support vector machines, dimensionality reduction, principal component analysis, k-means clustering, anomaly detection, recommender systems, large scale machine learning

    • tools: Matlab / Octave

  • Challenge: train a convolution neural network to clone driving behaviour using training sets recorded in realistic video games

  • Actions:

    • use the simulator to collect data of good driving behaviour

    • build a convolution neural network in Keras that predicts steering angles from images

    • train and validate the model with a training and validation set

    • test that the model successfully drives around track without leaving the road

  • Challenge: write a software pipeline to identify the lane boundaries in a video taken while driving on a motorway

  • Actions:

    • compute the camera calibration matrix and distortion coefficients given a set of chessboard images.

    • apply a distortion correction on the video frames and save a corrected video

    • use colour transforms and gradients to create a threshold binary image

    • apply a perspective transform to rectify binary image ("birds-eye view")

    • detect lane pixels and fit to find the lane boundary

    • determine the curvature of the lane and vehicle position with respect to centre of curvature

    • warp the detected lane boundaries back onto the original perspective

    • output visual display of the lane boundaries and numerical estimation of lane curvature and vehicle position.

  • Challenge: write a software pipeline to detect vehicles in a video taken while driving on a motorway

  • Actions:

    • extract features from images using HOG (histogram of oriented gradients)

    • separate the images in train/test and train an SVM (support vector machine) classifier

    • implement a sliding window search and classify each window as vehicle or non-vehicle

    • output a video with the detected vehicles positions drawn as bounding boxes

  • Challenge: use computing capabilities of Python to solve the nonlinear coupled partial derivative equations that govern the dynamics of fluids, the Navier-Stokes equations

  • Actions:

    • creating implicit numerical schemes to solve ever increasing difficult components of the NS equations: linear convection, nonlinear convection, diffusion, Burgers' equation, Laplace equation, Poisson equation

    • applying the full final code on two classical problems: cavity flow and channel flow

Last updated