clip.marsclip_splits¶
marsclip_splits ¶
Patch split manifests for MarsCLIP Stage A/Stage B workflows.
compute_split_counts ¶
compute_split_counts(num_samples: int, *, train_fraction: float, val_fraction: float, test_fraction: float) -> tuple[int, int, int]
Convert split fractions into deterministic integer counts.
Source code in src/clip/marsclip_splits.py
build_patch_split_manifest ¶
build_patch_split_manifest(patch_records: DataFrame, *, split_seed: int = 0, train_fraction: float = 0.7, val_fraction: float = 0.15, test_fraction: float = 0.15, num_folds: int = 5) -> pd.DataFrame
Build a manifest with holdout and K-fold assignments for patch ids.
Source code in src/clip/marsclip_splits.py
summarize_patch_split_manifest ¶
summarize_patch_split_manifest(manifest: DataFrame, *, num_folds: int | None = None) -> dict[str, Any]
Summarize a patch split manifest for logging/reporting.
Source code in src/clip/marsclip_splits.py
save_patch_split_manifest ¶
Persist a split manifest as CSV or Parquet based on suffix.
Source code in src/clip/marsclip_splits.py
load_patch_split_manifest ¶
Load a persisted split manifest.
Source code in src/clip/marsclip_splits.py
save_split_summary ¶
Persist split summary metadata as JSON.
Source code in src/clip/marsclip_splits.py
select_patch_ids_for_role ¶
select_patch_ids_for_role(manifest: DataFrame, *, role: str, mode: str = 'holdout', fold_index: int = 0) -> list[str]
Select patch ids for a train/val/test role from a manifest.
Source code in src/clip/marsclip_splits.py
resolve_manifest_indices ¶
resolve_manifest_indices(patch_records: DataFrame, manifest: DataFrame, *, role: str, mode: str = 'holdout', fold_index: int = 0) -> list[int]
Map manifest patch ids back to dataset row indices.
Source code in src/clip/marsclip_splits.py
build_dataset_subsets ¶
build_dataset_subsets(dataset: Dataset, patch_records: DataFrame, manifest: DataFrame, *, mode: str = 'holdout', fold_index: int = 0) -> tuple[Subset, Subset, Subset]
Create train/val/test subsets from a manifest and patch table.