src/iohmm_evac/inference/__init__.py

# SPDX-License-Identifier: AGPL-3.0-only
# Copyright (C) 2026 SWGY, Inc.
"""IO-HMM inference: forward-backward, EM, and the high-level fit() entry."""

from __future__ import annotations

from iohmm_evac.inference.em import EMConfig, EMResult, run_em
from iohmm_evac.inference.fit import FitResult, fit
from iohmm_evac.inference.fit_params import (
    ALLOWED_TRANSITIONS,
    FEATURE_NAMES,
    EmissionFitParams,
    FitParameters,
    InitialFitParams,
    TransitionFitParams,
    dgp_truth_to_fit_init,
)
from iohmm_evac.inference.forward_backward import (
    ForwardBackwardResult,
    forward_backward,
    log_transition_matrix,
)
from iohmm_evac.inference.initialization import (
    from_dgp_truth,
    kmeans_init,
    random_initialization,
)

__all__ = [
    "ALLOWED_TRANSITIONS",
    "FEATURE_NAMES",
    "EMConfig",
    "EMResult",
    "EmissionFitParams",
    "FitParameters",
    "FitResult",
    "ForwardBackwardResult",
    "InitialFitParams",
    "TransitionFitParams",
    "dgp_truth_to_fit_init",
    "fit",
    "forward_backward",
    "from_dgp_truth",
    "kmeans_init",
    "log_transition_matrix",
    "random_initialization",
    "run_em",
]