bencher.results.optuna_result ============================= .. py:module:: bencher.results.optuna_result Classes ------- .. autoapisummary:: bencher.results.optuna_result.OptunaResult Functions --------- .. autoapisummary:: bencher.results.optuna_result._evaluate_over_non_optimized bencher.results.optuna_result._aggregate_non_optimized bencher.results.optuna_result._study_has_multiple_params Module Contents --------------- .. py:function:: _evaluate_over_non_optimized(worker, opt_kwargs, non_opt_vars, result_vars) Evaluate worker across all combinations of non-optimized vars and return mean results. .. py:function:: _aggregate_non_optimized(df, opt_vars, non_opt_vars, target_names) Group DataFrame by optimized vars and average target columns over non-optimized vars. .. py:function:: _study_has_multiple_params(study) True when the study has >1 trial parameter, making importance meaningful. .. py:class:: OptunaResult(bench_cfg: bencher.bench_cfg.BenchCfg) Bases: :py:obj:`bencher.results.bench_result_base.BenchResultBase` .. py:method:: to_optuna_plots(**kwargs) -> list[panel.pane.panel] Create an optuna summary from the benchmark results :returns: A list of optuna plot summarising the benchmark process :rtype: list[pn.pane.panel] .. py:method:: to_optuna_from_results(worker, n_trials=100, extra_results: list[OptunaResult] | None = None, sampler=None) .. py:method:: bench_results_to_optuna_trials(include_meta: bool = True) -> list Convert an xarray dataset to optuna trials so optuna can further optimise or plot. :param include_meta: When True, include all variables (inputs + meta like repeat and over_time) as trial parameters for importance analysis. When False, use only input variables with partition/aggregation via the optimize flag. :type include_meta: bool :returns: Optuna trials derived from benchmark results. :rtype: list[optuna.trial.FrozenTrial] .. py:method:: bench_result_to_study(include_meta: bool) -> optuna.Study .. py:method:: get_best_trial_params(canonical=False) .. py:method:: get_pareto_front_params() .. py:method:: collect_optuna_plots(pareto_width: float | None = None, pareto_height: float | None = None) -> panel.pane.panel Use optuna to plot various summaries of the optimisation. :param pareto_width: Optional width for the pareto front plot. :param pareto_height: Optional height for the pareto front plot. :returns: A panel with optuna visualisations. :rtype: pn.pane.panel .. py:method:: deep() -> OptunaResult Return a deep copy of these results .. py:method:: get_best_holomap(name: str | None = None)