elicito._outputs#
Create xr.DataTree for eliobj.results
Functions:
| Name | Description |
|---|---|
combine_reps |
Stack replication dimension |
create_datatree |
Create data tree as final results object |
create_expert_ds |
Create expert group |
create_hist_corrds |
Create coordinates for dim: replication, epoch |
create_hyperparameter_group |
Create xr.Dataset from hyperparameter results in eliobj |
create_initialization_group |
Create result group for initialization runs |
create_loss_group |
Create xr.Dataset for loss section |
create_marginal_group |
Create xr.Dataset from marginal prior updates |
create_oracle_ds |
Create oracle group for Inference data |
create_prior_ds |
Create prior group for Inference data |
create_result_group |
Build an xarray.Dataset from eliobj results for a given group. |
to_dataarray |
Create xr.DataArray for eliobj result |
to_dataset |
Create a xr.Dataset from eliobj results |
Attributes:
| Name | Type | Description |
|---|---|---|
MAIN_DIMS |
main dimensions for history result objects |
MAIN_DIMS
module-attribute
#
main dimensions for history result objects
combine_reps #
Stack replication dimension
Helper function to handle the raw nested dictionary output
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
obj
|
Any
|
fitted eliobj |
required |
group
|
str
|
corresponds to key for selecting result in eliobj |
required |
Returns:
| Type | Description |
|---|---|
Tensor
|
stacked tensor with shape (replication, ...) |
Source code in src/elicito/_outputs.py
create_datatree #
create_datatree(
history: list[Any],
results: list[Any],
trainer: Trainer,
parameters: list[Parameter],
expert: ExpertDict,
) -> DataTree
Create data tree as final results object
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
history
|
list[Any]
|
results of fitted eliobj per epoch stored in a list of dictionaries |
required |
results
|
list[Any]
|
results of fitted eliobj for the final epoch |
required |
trainer
|
Trainer
|
eliobj trainer dictionary |
required |
parameters
|
list[Parameter]
|
parameter information from eliobj |
required |
expert
|
ExpertDict
|
eliobj expert dictionary |
required |
Returns:
| Type | Description |
|---|---|
DataTree
|
xr.DataTree with final results |
Source code in src/elicito/_outputs.py
578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 | |
create_expert_ds #
Create expert group
Only used if expert information is provided via el.expert.data.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
results
|
list[Any]
|
results of fitted eliobj for the final epoch |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset including information about the expert-elicited summaries |
Source code in src/elicito/_outputs.py
create_hist_corrds #
Create coordinates for dim: replication, epoch
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
history
|
list[Any]
|
results of fitted eliobj per epoch |
required |
Returns:
| Type | Description |
|---|---|
dict[str, Iterable[int]]
|
mapping for coords property of xr.Dataset |
Source code in src/elicito/_outputs.py
create_hyperparameter_group #
Create xr.Dataset from hyperparameter results in eliobj
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
history
|
list[Any]
|
results of fitted eliobj per epoch stored in a list of dictionaries |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset with variables corresponding to hyperparameter values and their gradients per epoch |
Source code in src/elicito/_outputs.py
create_initialization_group #
Create result group for initialization runs
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
parameters
|
list[Any]
|
parameter information from eliobj |
required |
results
|
list[Any]
|
results of fitted eliobj for the final epoch |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset including information about initial hyperparameter values and corresponding loss per iteration. |
Source code in src/elicito/_outputs.py
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 | |
create_loss_group #
Create xr.Dataset for loss section
loss-xr.Dataset incl. total loss value as well single loss components per epoch
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
history
|
list[Any]
|
results of fitted eliobj per epoch stored in a list of dictionaries |
required |
results
|
list[Any]
|
results of fitted eliobj for the final epoch |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset including information about total loss and loss components per epoch |
Source code in src/elicito/_outputs.py
create_marginal_group #
Create xr.Dataset from marginal prior updates
Summaries information about mean and standard deviation for each marginal prior distribution based on prior samples across epochs.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
history
|
list[Any]
|
results of fitted eliobj per epoch stored in a list of dictionaries |
required |
parameters
|
list[Parameter]
|
parameter information from eliobj |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset including information about mean and sd of the marginal priors across epochs |
Source code in src/elicito/_outputs.py
create_oracle_ds #
Create oracle group for Inference data
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
results
|
list[Any]
|
results of fitted eliobj for the final epocheliobj : eliobj containing results section with training information about ground truth containt prior_samples and elicited_summaries used for learning |
required |
parameters
|
list[Parameter]
|
parameter information from eliobj |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset containing oracle information |
Source code in src/elicito/_outputs.py
create_prior_ds #
Create prior group for Inference data
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
results
|
list[Any]
|
results of fitted eliobj for the final epoch |
required |
parameters
|
list[Parameter]
|
parameter information from eliobj |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
dataset containing prior samples per model parameter |
Source code in src/elicito/_outputs.py
create_result_group #
create_result_group(
results: list[Any],
group: str,
description: str,
dim_name: Optional[str] = None,
base_dims: list[str] = ["replication", "batch", "draw"],
) -> Dataset
Build an xarray.Dataset from eliobj results for a given group.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
results
|
list[Any]
|
results of fitted eliobj for the final epoch |
required |
group
|
str
|
Name of the group to extract (e.g. "model_samples"). |
required |
description
|
str
|
Description to attach to each DataArray. |
required |
dim_name
|
Optional[str]
|
prefix used to name dimensions additional to base dimensions. |
None
|
base_dims
|
list[str]
|
Dimension names for the first axes (default: ["replication","batch","draw"]). |
['replication', 'batch', 'draw']
|
Returns:
| Type | Description |
|---|---|
Dataset
|
Dataset containing one DataArray per variable in the group. |
Source code in src/elicito/_outputs.py
to_dataarray #
to_dataarray(
obj: Any,
group: str,
dims: list[str],
name: str,
attrs: Optional[dict[str, str]] = None,
) -> DataArray
Create xr.DataArray for eliobj result
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
obj
|
Any
|
fitted eliobj |
required |
group
|
str
|
corresponds to key for selecting result in eliobj |
required |
dims
|
list[str]
|
dimensions of array (e.g., [replication, epoch]) |
required |
name
|
str
|
name that should appear in the dataset |
required |
attrs
|
Optional[dict[str, str]]
|
optional attributes for the dataarray provided as a dictionary |
None
|
Returns:
| Type | Description |
|---|---|
DataArray
|
xr.DataArray from eliobj result dictionary |
Source code in src/elicito/_outputs.py
to_dataset #
Create a xr.Dataset from eliobj results
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
obj
|
Any
|
fitted eliobj |
required |
group
|
str
|
key corresponding to section in eliobj dictionary |
required |
dims
|
list[str]
|
dimensions of array (e.g., [replication, epoch]) |
required |
names_subgroups
|
str | list[str]
|
name of single data variables in xr.Dataset |
required |
Returns:
| Type | Description |
|---|---|
Dataset
|
xr.Dataset including subgroups as data variables |