Skip to content

Latest commit

 

History

History
31 lines (21 loc) · 1.38 KB

README.md

File metadata and controls

31 lines (21 loc) · 1.38 KB

DGP-StochasticImputation

A C++ implementation of [1] Deep Gaussian Process with Stochastic Imputation. This code was written for my Masters thesis : "Modeling Non-Stationarity with Deep Gaussian Processes: Applications in Aerospace Engineering" [2]. The original Python implementation can be found in (https://github.com/mingdeyu/DGP).

The library depends on several external (header-only) libraries, mainly: Eigen, ThreadPool and optim (https://github.com/kthohr/optim). However, the main optimizer is an LBFFGSB which requires a Fortran compiler.

The current code is a rough draft.

TODO:

  • Rewrite demo.cpp
  • Remove (or integrate Particle Swarm/Adam/ConjugateGrad optimizer) optim dependency
  • Add LBFGSB header-only
  • Add CMakeLists.txt
  • Implement Eigen Tensor operations for further vectorization of kernel expectations
  • Implement automatic differentiation
  • Interface with Python using pybind11

References:

[1] Ming, D., Williamson, D., and Guillas, S., “Deep Gaussian Process Emulation using Stochastic Imputation,” ArXiv, Vol. abs/2107.01590, 2021.

[2] Izzaturrahman, M.F., Palar, P.S., Zuhal, L. and Shimoyama, K., 2022. Modeling Non-Stationarity with Deep Gaussian Processes: Applications in Aerospace Engineering. In AIAA SCITECH 2022 Forum (p. 1096).