Implementation of Bayesian Learning and Reinforcement Learning algorithms for the course Probabilistic Artificial Intelligence at ETH Zuerich. The algorithms encompass different areas of Bayesian Machine Learning like,
- Gaussian Processes
- Bayesian Neural Networks
- Bayesian Optimisation
- Reinforcement Learning
Implemented Gaussian Process Regression for modelling and inferring fine particle concentration at different places to model air pollution. Used scikit-learn
and gpytorch
libraries to implement the Gaussian Processes (GP) and validated on a sample dataset provided. Tested different GP kernels and their combinations ideal for the data and implemented a modified inference method to handle asymmetric costs.
Implemented the following algorithms for multi-class classification task on the MNIST fashion dataset,
- Monte Carlo Dropout
- Ensemble Learning
- Stochastic Gradient Langevin Dynamics (SGLD)
Implemented a Bayesian Optimisation algorithm with a constrained Acquisition Function to handle inequality constraints on the domain. Tested the algorithm on a toy problem in 2D.
Implemented a model free actor-critic algorithm based on Generalised Advantage Estimation for the Lunar Lander task. Trained and validated the policy in simulation.