Skip to content

Variance estimators¤

jaxqtl separates model fitting from the choice of coefficient covariance estimator. The available implementations provide classical Fisher-information or Huber–White sandwich standard errors.

jaxqtl.infer.AbstractVarianceEstimator

jaxqtl.infer.AbstractVarianceEstimator(equinox.Module) [source] ¤

Base interface for LM/GLM coefficient covariance estimators.

Concrete implementations are passed into jaxqtl.infer.LinearModel.fit and jaxqtl.infer.GeneralizedLinearModel.fit to compute the coefficient covariance matrix used for Wald-style standard errors and test statistics.

__call__(self, family: ExponentialFamily, X: jax.Array, y: jax.Array, eta: jax.Array, mu: jax.Array, weight: jax.Array, disp: ScalarLike = 1.0) -> jax.Array ¤

Estimate the coefficient covariance matrix for a fitted GLM.

Arguments:

  • family: GLM family implementing jaxqtl.distribution.ExponentialFamily.
  • X: Design matrix with shape (n, p).
  • y: Response vector with shape (n,).
  • eta: Linear predictor $\eta$ with shape (n,).
  • mu: Fitted mean with shape (n,).
  • weight: IRLS weights with shape (n,) (or a scalar weight).
  • disp: Dispersion/scale parameter (family-specific).

Returns:

Coefficient covariance matrix with shape (p, p).

Covariance estimators¤

jaxqtl.infer.FisherInfoError(jaxqtl.infer.AbstractVarianceEstimator) [source] ¤

Fisher information covariance estimator.

Uses the IRLS working weights to form an observed-information approximation \(\widehat{\mathrm{Cov}}(\hat\beta) \approx (X^\top W X)^{-1}\).

__call__(self, family: ExponentialFamily, X: jax.Array, y: jax.Array, eta: jax.Array, mu: jax.Array, weight: jax.Array, disp: ScalarLike = 1.0) -> jax.Array ¤

Compute the Fisher information covariance estimate.

Arguments:

  • family: GLM family implementing jaxqtl.distribution.ExponentialFamily (unused).
  • X: Design matrix with shape (n, p).
  • y: Response vector with shape (n,) (unused).
  • eta: Linear predictor $\eta$ with shape (n,) (unused).
  • mu: Fitted mean with shape (n,) (unused).
  • weight: IRLS weights with shape (n,) (or a scalar weight).
  • disp: Dispersion/scale parameter (unused).

Returns:

Coefficient covariance matrix with shape (p, p).


jaxqtl.infer.HuberError(jaxqtl.infer.AbstractVarianceEstimator) [source] ¤

Huber-White sandwich covariance estimator.

Computes a robust covariance estimate using an observed Hessian approximation and a score outer product, yielding a "sandwich" form that can be more stable under mean/variance misspecification.

__call__(self, family: ExponentialFamily, X: jax.Array, y: jax.Array, eta: jax.Array, mu: jax.Array, weight: jax.Array, disp: ScalarLike = 1.0) -> jax.Array ¤

Compute the robust Huber-White covariance estimate.

Arguments:

  • family: GLM family implementing jaxqtl.distribution.ExponentialFamily.
  • X: Design matrix with shape (n, p).
  • y: Response vector with shape (n,).
  • eta: Linear predictor $\eta$ with shape (n,).
  • mu: Fitted mean with shape (n,).
  • weight: IRLS weights with shape (n,) (or a scalar weight).
  • disp: Dispersion/scale parameter (family-specific).

Returns:

Coefficient covariance matrix with shape (p, p).