MeasureTransport / MParT

Monotone Parameterization Toolkit (MParT): A core library for constructing and using transport maps.
https://measuretransport.github.io/MParT/
BSD 3-Clause "New" or "Revised" License
12 stars 4 forks source link

Add interface for constraints on parameters #419

Open mparno opened 4 months ago

mparno commented 4 months ago

Unlike the MonotoneComponent class, the RectifiedMultivariateExpansion class requires some of the expansion parameters to be positive in order for the resulting map to be monotone. We currently don't have a good way of defining or imposing these bounds during map training. I propose we add a ParameterBounds() function to the ConditionalMapBase class that returns any lower or upper bounds on the map parameters that are needed to ensure monotonicity. The default behavior could be [-inf,inf] indicating that no bounds are necessary.

dannys4 commented 4 months ago

Should be easy to add this to TrainOptions (not considering the bindings). See here and then the SetupOptimization function in TrainMap.cpp