petitRADTRANS.sbi.preprocessing#

Preprocessing helpers and normalization metadata for SBI observation blocks.

Classes#

BlockNormalizationStats

Normalization statistics for one observation block family.

TaskPreprocessingMetadata

Serializable preprocessing metadata for an SBI task family.

Functions#

compute_block_normalization_stats(→ dict[str, ...)

Compute per-block normalization statistics from training observations.

fit_task_preprocessing(→ TaskPreprocessingMetadata)

Fit preprocessing statistics from training observation blocks.

normalize_observation_block(...)

Normalize one observation block with fitted preprocessing statistics.

normalize_observation_blocks(...)

Normalize a list of observation blocks.

Module Contents#

class petitRADTRANS.sbi.preprocessing.BlockNormalizationStats#

Normalization statistics for one observation block family.

name: str#
modality: str#
value_mean: float#
value_std: float#
uncertainty_mean: float | None = None#
uncertainty_std: float | None = None#
coordinate_mean: float | None = None#
coordinate_std: float | None = None#
n_samples: int = 0#
n_values: int = 0#
value_median: float | None = None#
value_iqr: float | None = None#
uncertainty_median: float | None = None#
uncertainty_iqr: float | None = None#
value_median_per_wl: list[float] | None = None#
value_iqr_per_wl: list[float] | None = None#
uncertainty_median_per_wl: list[float] | None = None#
uncertainty_iqr_per_wl: list[float] | None = None#
log_median_flux: float | None = None#
to_payload() dict[str, Any]#
class petitRADTRANS.sbi.preprocessing.TaskPreprocessingMetadata#

Serializable preprocessing metadata for an SBI task family.

version: str#
blocks: Mapping[str, BlockNormalizationStats]#
metadata: Mapping[str, Any]#
to_payload() dict[str, Any]#
classmethod from_payload(payload: Mapping[str, Any]) TaskPreprocessingMetadata#
petitRADTRANS.sbi.preprocessing.compute_block_normalization_stats(blocks: list[petitRADTRANS.sbi.observation.ObservationBlock]) dict[str, BlockNormalizationStats]#

Compute per-block normalization statistics from training observations.

petitRADTRANS.sbi.preprocessing.fit_task_preprocessing(training_observations: list[list[petitRADTRANS.sbi.observation.ObservationBlock]], version: str = '0.5.0', metadata: Mapping[str, Any] | None = None) TaskPreprocessingMetadata#

Fit preprocessing statistics from training observation blocks.

petitRADTRANS.sbi.preprocessing.normalize_observation_block(block: petitRADTRANS.sbi.observation.ObservationBlock, preprocessing_metadata: TaskPreprocessingMetadata) petitRADTRANS.sbi.observation.ObservationBlock#

Normalize one observation block with fitted preprocessing statistics.

Uses robust (median/IQR) normalization for values and uncertainties when available, falling back to mean/std for backward compatibility with older preprocessing metadata. Coordinates always use mean/std normalization.

petitRADTRANS.sbi.preprocessing.normalize_observation_blocks(blocks: list[petitRADTRANS.sbi.observation.ObservationBlock], preprocessing_metadata: TaskPreprocessingMetadata) list[petitRADTRANS.sbi.observation.ObservationBlock]#

Normalize a list of observation blocks.