zhidilin / Machine.Learning.Models.pytorch

Machine Learning models in general in PyTorch.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Machine Learning

Some cool machine learning stuff. Provide code, explanations or whatever I might find interesting.

Author: Juan Maroñas Molano (jmaronasm@gmail.com) [PRHLT Research Center, Universidad Politécnica de Valencia]

Install

  • Python version 3.7
  • Requirements: pip install -r requirements.txt
  • Might find useful to run ./install.sh

Models Implemented

In folder models you can find different models, follow instructions there:

  • models/Gaussian_Processes/ (regression and classification)

    • SVGP_TPG:
      • stochastic sparse Variational GP ref ref
      • Transformed GP ref
  • models/Bayesian_NN/ (only classification)

    • Mean Field Gaussian Variational BNN with pathwise gradient computations ref
  • Mean Field Gaussian Variational BNN with local reparameterization ref

    • Inference in Bayesian Neural Network with Hamiltonian Monte Carlo. Custom implementation in PyTorch ref
    • Inference in a hierarchical Bayesian Neural Network using NUTS sampler. Implementation done in STAN
    • Point estimate Neural Network (Maximum Likelihood and Maximum Posterior)

Other Stuff

In this folder I keep other things different to implementations.

  • other/time_comparison_stan/
    • Keeps some time comparisons I have done with a model and the different possible implementations in stan

Todo

  • Add regression example to the Bayesian NN models. The ones comparing MFVI and HMC
  • Stochastic gradient MCMC ( Hamiltonian Monte Carlo ) BNN ref
Generative Models

I have a couple of generative models already implemented that perhaps I upload one day (will do when I need them for something, as I need to clean them up a bit):

  • Probabilistic data augmentation using MCMC

  • Probabilistic data augmentation with Mean Field VI (aka VAE)

  • Probabilistic data augmentation with flows.

About

Machine Learning models in general in PyTorch.

License:GNU General Public License v3.0


Languages

Language:Python 80.7%Language:Stan 13.3%Language:Jupyter Notebook 4.2%Language:Shell 1.9%