synthetic
synthetic
¶
Dataset schema for synthetic multimodal benchmark tasks.
SyntheticSchema
¶
SyntheticSchema(zarr_path, metadata, dataset_type=value, task_name=value, num_episodes=1000, seed=42, image_size=64, num_modes=2, trajectory_length=60, noise_std=0.01, num_styles=1, mode_weights=None, num_rollouts=200)
Bases: DatasetSchema
Schema for procedurally generated synthetic 2D navigation datasets.
Unlike CSV or HDF5 schemas, this schema has no raw data files to read. Episodes are generated on-the-fly via the synthetic generators module and written directly to Zarr.
Initialize and validate the synthetic benchmark schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
zarr_path
|
str
|
Path to save/load the zarr store. |
required |
metadata
|
DatasetMetadata
|
Metadata for zarr array creation. |
required |
dataset_type
|
str
|
Type of dataset. Must be 'synthetic'. |
value
|
task_name
|
str
|
SyntheticTaskName.value string identifying the task. |
value
|
num_episodes
|
int
|
Total episodes to generate, balanced across modes. |
1000
|
seed
|
int
|
Random seed for reproducible generation. |
42
|
image_size
|
int
|
Side length in pixels of rendered images (square). |
64
|
num_modes
|
int
|
Number of behavioral modes. |
2
|
trajectory_length
|
int
|
Number of timesteps per episode. |
60
|
noise_std
|
float
|
Standard deviation of Gaussian trajectory noise. |
0.01
|
num_styles
|
int
|
Number of sinusoidal style variations per corridor. |
1
|
mode_weights
|
list[float] | None
|
Per-mode sampling weights. None for uniform. |
None
|
num_rollouts
|
int
|
Rollouts per evaluation in the training callback. |
200
|
Source code in src/versatil/data/raw/schemas/custom/synthetic.py
get_callbacks
¶
Provide a rollout evaluation callback for synthetic training.
Source code in src/versatil/data/raw/schemas/custom/synthetic.py
extract_episode
¶
Not applicable for synthetic data.
Synthetic episodes are generated procedurally, not extracted from raw files. Use create_zarr_from_synthetic instead.
Raises:
| Type | Description |
|---|---|
NotImplementedError
|
Always, since synthetic data is generated not extracted. |