Source code for tramp.likelihoods

from .gaussian_likelihood import GaussianLikelihood
from .sgn_likelihood import SgnLikelihood
from .abs_likelihood import AbsLikelihood
from .modulus_likelihood import ModulusLikelihood
from .piecewise_linear_likelihood import (
    ReluLikelihood, LeakyReluLikelihood, AsymmetricAbsLikelihood,
    HardTanhLikelihood, HardSigmoidLikelihood, SymmetricDoorLikelihood
)


LIKELIHOOD_CLASSES = {
    "gaussian": GaussianLikelihood,
    "abs": AbsLikelihood,
    "sgn": SgnLikelihood,
    "door": SymmetricDoorLikelihood,
    "relu": ReluLikelihood,
    "l-relu": LeakyReluLikelihood,
    "h-tanh": HardTanhLikelihood,
    "h-sigm": HardSigmoidLikelihood,
    "a-abs": AsymmetricAbsLikelihood,
    "modulus": ModulusLikelihood
}


[docs]def get_likelihood(y, likelihood_type, **kwargs): likelihood = LIKELIHOOD_CLASSES[likelihood_type](y=y, **kwargs) return likelihood