supaernova.configs.steps.posterior.model
[docs]
module
supaernova.configs.steps.posterior.model
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 | from typing import Literal, ClassVar
from pathlib import Path
from pydantic import PositiveInt, PositiveFloat
from supaernova.analysis.dispersion import DispersionPlot
from supaernova.configs.steps.nflow import NFlowStepConfig
from supaernova.configs.steps.steps import AbstractStepResult, AbstractStepAnalysis
from supaernova.analysis.distribution import DistributionPlot
from supaernova.configs.steps.backends import AbstractModelConfig
class PosteriorStepAnalysis(AbstractStepAnalysis):
plot_map_init: DistributionPlot | list[DistributionPlot] | None = None
plot_map_best: DistributionPlot | list[DistributionPlot] | None = None
plot_hmc: DistributionPlot | list[DistributionPlot] | None = None
plot_dispersion: DispersionPlot | list[DispersionPlot] | None = None
class PosteriorModelConfig(AbstractModelConfig):
# --- Class Variables ---
id: ClassVar[str] = "posterior_model"
required_steps: ClassVar[list[str]] = [NFlowStepConfig.id]
analysis: PosteriorStepAnalysis
# === Required ===
debug: bool = False
profile: bool = False
# === Optional ===
seed: int = 12345
iterations: int = 1
train_subset: bool = True
test_subset: bool = True
subset: Literal["train", "test"] = "train"
analysis: PosteriorStepAnalysis = PosteriorStepAnalysis.model_validate({})
save_best: bool = False
n_chains_early: int
n_chains_mid: int
n_chains_final: int
tolerance: PositiveFloat = 0.01
max_iterations: PositiveInt = 2500
n_burnin: PositiveInt
n_samples: PositiveInt
n_leapfrog: PositiveInt = 5
target_acceptance_rate: PositiveFloat = 0.651
random_initial_positions: bool = False
u_delta_av_min: float = -10.0
u_delta_av_max: float = 10.0
u_delta_av_start: float = -1.0
u_delta_av_end: float = 1.0
u_delta_av_mean: float = 0.0
u_delta_av_std: float = 1.0
u_latents_min: float = -10.0
u_latents_max: float = 10.0
u_latents_mean: float = 0.0
u_latents_std: float = 1.0
delta_av_min: float = -5.0
delta_av_max: float = 5.0
delta_av_start: float = -0.5
delta_av_end: float = 0.5
delta_av_mean: float = 0.0
delta_av_std: float = 0.5
train_delta_m: bool
delta_m_min: float = -15
delta_m_max: float = 15
delta_m_start: float = -1.5
delta_m_end: float = 1.5
delta_m_mean: float = 0.0
delta_m_std: float = 0.1
train_delta_p: bool
delta_p_min: float = -10
delta_p_max: float = 10
delta_p_start: float = -1.0
delta_p_end: float = 1.0
delta_p_mean: float = 0.0
delta_p_std: float = 0.01
train_bias: bool
bias_min: float = -10
bias_max: float = 10
bias_start: float = -1.0
bias_end: float = 1.0
bias_mean: float = 0.0
bias_std: float = 1.0
|