pub fn kronecker_reparameterization_engine(
marginal_designs: &[Array2<f64>],
marginal_penalties: &[Array2<f64>],
marginal_dims: &[usize],
lambdas: &[f64],
has_double_penalty: bool,
penalty_shrinkage_floor: Option<f64>,
) -> Result<KroneckerReparamResult, EstimationError>Expand description
Kronecker-factored reparameterization for tensor-product penalties.
Instead of eigendecomposing the full p×p balanced penalty (O(p³)), this eigendecomposes each marginal penalty separately (O(Σ q_k³)) and computes the joint eigensystem as the Kronecker product of marginal eigensystems.