iaml.flow.model

Editable recipes, independent of fitted steps and candidates.

Classes

Recipe

Common navigation, composition and inspection operations.

ComponentSpec

A configured class recipe; constructing it never fits the component.

Selection

A snapshot of component objects, with atomic collective configuration.

GroupSpec

A group of explicit children or components from an automatic registry.

SequenceSpec

A recipe whose children run in their declared order.

AdaptiveSpec

A recipe that runs each applicable child for the candidate dataset.

ChoiceSpec

A recipe representing alternative component or pipeline choices.

PipelineSpec

Root of the default recipe, containing main and minimal strategies.

AnalysisCollection

All requested analytic computations, rather than candidate alternatives.

Functions

component_kind(component)

Return the recipe family supported by an IAML component class.

as_recipe(value)

Keep a recipe or wrap an IAML component class in a component recipe.

use(component, **params)

Declare an unfitted component with optional parameter configuration.

choice(*alternatives[, tag])

Declare explicit alternatives or an automatic family selected by tag.

normalizers()

Declare a choice from the registered normalization components.

predictors()

Declare a choice from the registered predictor components.

optional(recipe)

Allow a recipe to be either present or omitted during search.

metrics(*components)

Declare requested metrics, using the registered defaults when omitted.

statistics(*components)

Declare requested statistics, using the registered defaults when omitted.

explanations(*components)

Declare requested explanations, using the registered defaults when omitted.

Module Contents

iaml.flow.model.component_kind(component)

Return the recipe family supported by an IAML component class.

iaml.flow.model.as_recipe(value)

Keep a recipe or wrap an IAML component class in a component recipe.

class iaml.flow.model.Recipe

Common navigation, composition and inspection operations.

kind = 'pipeline'
alias = None
node_id = '00000000000000000000000000000000'
__deepcopy__(memo)
attach(owner, field)

Attach a root to its study; used by the study integration layer.

clone()

Copy this recipe with fresh identities and no attached study owner.

named(alias)

Assign a unique alias used to select and edit this recipe node.

__getitem__(alias)
__getattr__(alias)
__iter__()
__rshift__(other)
find_all(component)

Select every occurrence of a component class within this recipe.

replace(recipe)

Replace an attached node while retaining its alias and container position.

describe()

Return a readable description of this recipe and its configuration.

diff(base)

Describe the changes between this recipe and a reference recipe.

to_code()

Return Python code that reconstructs this recipe.

class iaml.flow.model.ComponentSpec(component, **params)

Bases: Recipe

A configured class recipe; constructing it never fits the component.

component
kind = 'pipeline'
parameters
configure(**params)

Validate and apply parameter values or search domains to this component.

instantiate()

Create a fresh unfitted component carrying its declared policy.

class iaml.flow.model.Selection(scope, targets)

A snapshot of component objects, with atomic collective configuration.

__iter__()
__len__()
configure(**params)

Apply validated parameters atomically to every selected component.

class iaml.flow.model.GroupSpec(children=(), *, tag=None)

Bases: Recipe

A group of explicit children or components from an automatic registry.

mode = 'sequence'
children = []
tag = None
excluded
add(recipe, before=None)

Add a cloned recipe, optionally before an aliased sequence item.

remove(*selectors)

Remove children selected by alias or component class.

freeze()

Replace automatic registry expansion with the currently resolved children.

class iaml.flow.model.SequenceSpec(children=(), *, tag=None)

Bases: GroupSpec

A recipe whose children run in their declared order.

mode = 'sequence'
class iaml.flow.model.AdaptiveSpec(children=(), *, tag=None)

Bases: GroupSpec

A recipe that runs each applicable child for the candidate dataset.

mode = 'adaptive'
class iaml.flow.model.ChoiceSpec(children=(), *, tag=None)

Bases: GroupSpec

A recipe representing alternative component or pipeline choices.

mode = 'choice'
initial_aliases = None
start(*aliases)

Choose aliased direct alternatives to evaluate at the start of search.

class iaml.flow.model.PipelineSpec(children=(), *, tag=None)

Bases: ChoiceSpec

Root of the default recipe, containing main and minimal strategies.

classmethod default()

Build a fresh copy of IAML’s default main and minimal recipes.

class iaml.flow.model.AnalysisCollection(kind, children=(), *, defaults=False)

Bases: GroupSpec

All requested analytic computations, rather than candidate alternatives.

mode = 'analyses'
kind
resolved()

Return the requested analysis components after validating their aliases.

iaml.flow.model.use(component, **params)

Declare an unfitted component with optional parameter configuration.

iaml.flow.model.choice(*alternatives, tag=None)

Declare explicit alternatives or an automatic family selected by tag.

iaml.flow.model.normalizers()

Declare a choice from the registered normalization components.

iaml.flow.model.predictors()

Declare a choice from the registered predictor components.

iaml.flow.model.optional(recipe)

Allow a recipe to be either present or omitted during search.

iaml.flow.model.metrics(*components)

Declare requested metrics, using the registered defaults when omitted.

iaml.flow.model.statistics(*components)

Declare requested statistics, using the registered defaults when omitted.

iaml.flow.model.explanations(*components)

Declare requested explanations, using the registered defaults when omitted.