phenotypic.tune.compute_param_importance_report#

phenotypic.tune.compute_param_importance_report(store: StudyStore, *, random_state: int = 0, objective: str | None = None) ImportanceReport[source]#

Rank parameters and record the method + interaction honesty flag.

First asks the store for a native importance model via store.param_importances() (capability dispatch — never an isinstance check). A non-empty result is the fANOVA path (interactions_estimated=True); None falls back to the homegrown RandomForest + permutation estimate (interactions_estimated=False). A per-objective request (objective given) always takes the RF path: the native importance models rank against the optimizer’s scalar, not a named objective from the multi-objective sidecar.

Parameters:
  • store (StudyStore) – The study store of completed trials. Any object exposing param_importances() and trials satisfies the contract.

  • random_state (int) – Seed for the forest + permutation (RandomForest path).

  • objective (str | None) – The named multi-objective to rank against (plan §0a sidecar). None ranks against Trial.score and may use the native fANOVA model; a name forces the RF path against Trial.objectives[name].

Returns:

An ImportanceReport carrying the ranked importances, the method, and the interactions_estimated flag.

Return type:

ImportanceReport