crear_registro_callback#

pymc_marketing.mlflow.create_log_callback(stats=None, parameters=None, exclude_tuning=True, take_every=100)[fuente]#

Cree una función de devolución de llamada para registrar estadísticas de muestra y valores de parámetros en MLflow durante el muestreo.

Esta devolución de llamada solo funciona para el muestreador «pymc».

Parámetros:
estadísticas : list de str, opcionalpython:lista de python:str, opcional

Lista de estadísticas de muestra para registrar del Sorteo

parámetros : list de str, opcionalpython:lista de python:str, opcional

Lista de parámetros para registrar desde el Draw

exclude_tuning : bool, opcionalbool, opcional

Si se deben excluir los pasos de ajuste del registro. Por defecto es True.

take_every : int, opcionalpython:int, opcional

Especifica el intervalo en el que se registran los valores. Por defecto es 100.

Devoluciones:
callbackLlamable

La función de devolución de llamada para registrar estadísticas de muestra y valores de parámetros en MLflow durante el muestreo.

Ejemplos

Crear modelo de ejemplo:

import pymc as pm

with pm.Model() as model:
    mu = pm.Normal("mu")
    sigma = pm.HalfNormal("sigma")
    obs = pm.Normal("obs", mu=mu, sigma=sigma, observed=[1, 2, 3])

Registrar divergencias y registrar cada 100ª extracción:

import mlflow

from pymc_marketing.mlflow import create_log_callback

callback = create_log_callback(
    stats=["diverging", "model_logp"],
    take_every=100,
)

mlflow.set_experiment("Live Tracking Stats")

with mlflow.start_run():
    idata = pm.sample(model=model, callback=callback)

Registre los parámetros mu y sigma_log__ cada 100ª extracción:

import mlflow

from pymc_marketing.mlflow import create_log_callback

callback = create_log_callback(
    parameters=["mu", "sigma_log__"],
    take_every=100,
)

mlflow.set_experiment("Live Tracking Parameters")

with mlflow.start_run():
    idata = pm.sample(model=model, callback=callback)