anterior#

Clase que representa una distribución a priori.

La clase Prior es un contenedor para las distribuciones de PyMC que permite al usuario crear fuera del modelo de PyMC.

Nota

Este módulo ha sido desaprobado y se ha trasladado a pymc_extras.prior.

Esta es la alternativa a utilizar los diccionarios en los modelos de PyMC-Marketing.

Ejemplos#

Cree un prior normal.

from pymc_extras.prior import Prior

normal = Prior("Normal")

Cree un prior normal jerárquico utilizando distribuciones para los parámetros y especificando las dimensiones.

hierarchical_normal = Prior(
    "Normal",
    mu=Prior("Normal"),
    sigma=Prior("HalfNormal"),
    dims="channel",
)

Cree un prior normal jerárquico no centrado con el parámetro centered.

non_centered_hierarchical_normal = Prior(
    "Normal",
    mu=Prior("Normal"),
    sigma=Prior("HalfNormal"),
    dims="channel",
    # Only change needed to make it non-centered
    centered=False,
)

Cree un prior beta jerárquico utilizando la distribución Beta, distribuciones para los parámetros y especificando las dimensiones.

hierarchical_beta = Prior(
    "Beta",
    alpha=Prior("HalfNormal"),
    beta=Prior("HalfNormal"),
    dims="channel",
)

Cree un prior normal jerárquico transformado utilizando el parámetro transform. Aquí la transformación «sigmoide» proviene de pm.math.

transformed_hierarchical_normal = Prior(
    "Normal",
    mu=Prior("Normal"),
    sigma=Prior("HalfNormal"),
    transform="sigmoid",
    dims="channel",
)

Cree un previo con una función de transformación personalizada registrándola con register_tensor_transform.

from pymc_extras.prior import register_tensor_transform


def custom_transform(x):
    return x**2


register_tensor_transform("square", custom_transform)

custom_distribution = Prior("Normal", transform="square")

Funciones

deserialize_alternative_prior(datos)

Deserializador alternativo que maneja recursivamente todos los parámetros anidados.

is_alternative_prior(datos)

Verifique si los datos son un diccionario que representa un Prior (verificación alternativa).