v1.5
Version 1.5 of DynaML, released August 11, 2017. Updates to global optimization api, improvements and new features in the gaussian process and stochastic process api.
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
,ContinuousDistrMixture
for random variables andMixtureDistribution
for constructing mixtures of breeze distributions.
Package dynaml.optimization
 Added
ModelTuner[T, T1]
trait as a super trait toGlobalOptimizer[T]
GridSearch
andCoupledSimulatedAnnealing
now extendAbstractGridSearch
andAbstractCSA
respectively. Added
ProbGPMixtureMachine
: constructs a mixture model after a CSA or grid search routine by calculating the mixture probabilities of members of the final hyperparameter ensemble.
Stochastic Mixture Models¶
Package dynaml.models
 Added
StochasticProcessMixtureModel
as 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.
KulbackLeibler Divergence¶
Package dynaml.probability
 Added method
KL()
toprobability
package 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 hyperparameter independently.
Splines and BSpline Generators¶
Package dynaml.analysis
 BSpline generators
 Bernstein bspline generators.
 Arbitrary spline functions can be created using the
SplineGenerator
class.
Cubic Spline Interpolation Kernels¶
Package dynaml.kernels
 Added cubic spline interpolation kernel
CubicSplineKernel
and 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 theGPOperatorModel
class. 
GenExpSpaceTimeKernel
: a kernel of the exponential family which can serve as a handy base kernel forLinearPDEKernel
class.
Basis Function Gaussian Processes¶
DynaML now supports GP models with explicitly incorporated basis functions as linear mean/trend functions.
Package dynaml.models.gp
GPBasisFuncRegressionModel
can 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 parameterDist
covariant.  Reform to
IIDRandomVar
hierarchy.
Package dynaml.probability.mcmc
 Bugfixes to the
HyperParameterMCMC
class.
General
 DynaML now ships with Ammonite
v1.0.0
.
Fixes¶
Package dynaml.optimization
 Corrected energy calculation in
CoupledSimulatedAnnealing
; added log likelihood due to hyperprior.
Package dynaml.optimization
 Corrected energy calculation in
CoupledSimulatedAnnealing
; added log likelihood due to hyperprior.