1.5
Additions
Package dynaml.algebra
-
Added support for dual numbers.
//Zero Dual val zero = DualNumber.zero[Double] val dnum = DualNumber(1.5, -1.0) val dnum1 = DualNumber(-1.5, 1.0) //Algebraic operations: multiplication and addition/subtraction dnum1*dnum2 dnum1 - dnum dnum*zero
Package dynaml.probability
- Added support for mixture distributions and mixture random variables.
MixtureRV,ContinuousDistrMixturefor random variables andMixtureDistributionfor constructing mixtures of breeze distributions.
Package dynaml.optimization
- Added
ModelTuner[T, T1]trait as a super trait toGlobalOptimizer[T] GridSearchandCoupledSimulatedAnnealingnow extendAbstractGridSearchandAbstractCSArespectively.- Added
ProbGPMixtureMachine: constructs a mixture model after a CSA or grid search routine by calculating the mixture probabilities of members of the final hyper-parameter ensemble.
Stochastic Mixture Models
Package dynaml.models
- Added
StochasticProcessMixtureModelas top level class for stochastic mixture models. - Added
GaussianProcessMixture: implementation of gaussian process
mixture models. - Added
MVTMixture: implementation of mixture model over
multioutput matrix T processes.
Kulback-Leibler Divergence
Package dynaml.probability
- Added method
KL()toprobabilitypackage object, to calculate
the Kulback Leibler divergence between two continuous random
variables backed by breeze distributions.
Adaptive Metropolis Algorithms.
-
AdaptiveHyperParameterMCMC which
adapts the exploration covariance with each sample. -
HyperParameterSCAM adapts
the exploration covariance for each hyper-parameter independently.
Splines and B-Spline Generators
Package dynaml.analysis
- B-Spline generators
- Bernstein and Cardinal b-spline generators.
- Arbitrary spline functions can be created using the
SplineGeneratorclass.
Cubic Spline Interpolation Kernels
Package dynaml.kernels
- Added cubic spline interpolation kernel
CubicSplineKerneland its ARD analogueCubicSplineARDKernel
Gaussian Process Models for Linear Partial Differential Equations
Based on a legacy ICML 2003 paper by Graepel. DynaML now ships with capability of performing PDE forward and inverse inference using the Gaussian Process API.
Package dynaml.models.gp
GPOperatorModel: models a quantity of interest which is governed by a linear PDE in space and time.
Package dynaml.kernels
-
LinearPDEKernel: The core kernel primitive accepted by theGPOperatorModelclass. -
GenExpSpaceTimeKernel: a kernel of the exponential family which can serve as a handy base kernel forLinearPDEKernelclass.
Basis Function Gaussian Processes
DynaML now supports GP models with explicitly incorporated basis
functions as linear mean/trend functions.
Package dynaml.models.gp
GPBasisFuncRegressionModelcan
be used to create GP models with trends incorporated as a linear
combination of basis functions.
Log Gaussian Processes
- LogGaussianProcessModel represents
a stochastic process whose natural logarithm follows a gaussian process.
Improvements
Package dynaml.probability
- Changes to
RandomVarWithDistr: made type parameterDistcovariant. - Reform to
IIDRandomVarhierarchy.
Package dynaml.probability.mcmc
- Bug-fixes to the
HyperParameterMCMCclass.
General
- DynaML now ships with Ammonite
v1.0.0.
Fixes
Package dynaml.optimization
- Corrected energy calculation in
CoupledSimulatedAnnealing; added
log likelihood due to hyper-prior.
Package dynaml.optimization
- Corrected energy calculation in
CoupledSimulatedAnnealing; added
log likelihood due to hyper-prior.