coco_pipe.report.decoding ========================= .. py:module:: coco_pipe.report.decoding .. autoapi-nested-parse:: Composable section builders for decoding reports. Attributes ---------- .. autoapisummary:: coco_pipe.report.decoding.DECODING_PRESETS coco_pipe.report.decoding.DEFAULT_SECTIONS coco_pipe.report.decoding.DECODING_SECTION_BUILDERS coco_pipe.report.decoding.VALID_SECTIONS Exceptions ---------- .. autoapisummary:: coco_pipe.report.decoding.SectionDataUnavailable Functions --------- .. autoapisummary:: coco_pipe.report.decoding.build_decoding_overview_section coco_pipe.report.decoding.build_decoding_summary_section coco_pipe.report.decoding.build_cv_section coco_pipe.report.decoding.build_probability_section coco_pipe.report.decoding.build_decoding_diagnostics_section coco_pipe.report.decoding.build_statistical_section coco_pipe.report.decoding.build_temporal_section coco_pipe.report.decoding.build_performance_section coco_pipe.report.decoding.build_features_section coco_pipe.report.decoding.build_topomaps_section coco_pipe.report.decoding.build_fit_diagnostics_section coco_pipe.report.decoding.build_tuning_section coco_pipe.report.decoding.build_neural_section coco_pipe.report.decoding.build_configuration_section coco_pipe.report.decoding.build_provenance_section coco_pipe.report.decoding.build_caveats_section coco_pipe.report.decoding.build_export_inventory_section coco_pipe.report.decoding.build_decoding_sections coco_pipe.report.decoding.make_decoding_report coco_pipe.report.decoding.add_decoding_overview coco_pipe.report.decoding.add_decoding_summary coco_pipe.report.decoding.add_decoding_diagnostics coco_pipe.report.decoding.add_decoding_statistical_assessment coco_pipe.report.decoding.add_decoding_temporal coco_pipe.report.decoding.add_decoding_performance coco_pipe.report.decoding.add_decoding_features coco_pipe.report.decoding.add_decoding_topomaps coco_pipe.report.decoding.add_decoding_neural_artifacts Module Contents --------------- .. py:exception:: SectionDataUnavailable Bases: :py:obj:`RuntimeError` Signal that a report section is inapplicable because its data is absent. .. py:data:: DECODING_PRESETS :type: dict[str, list[str]] .. py:data:: DEFAULT_SECTIONS :value: ['overview', 'configuration', 'provenance', 'model_summary', 'cv', 'performance', 'statistical',... .. py:function:: build_decoding_overview_section(result, *, name = 'Overview') Build high-level decoding context. .. py:function:: build_decoding_summary_section(result, *, name = 'Model Performance') Build the scalar model-performance summary. .. py:function:: build_cv_section(result, *, metric = None, model = None, name = 'Cross-Validation', include_tables = False, interactive = False) Build fold scores and score dispersion only. .. py:function:: build_probability_section(result, *, model = None, name = 'Confusion and Probability', include_tables = False, interactive = False) Build confusion, ROC, precision-recall, and calibration diagnostics. .. py:function:: build_decoding_diagnostics_section(result, *, metric = None, model = None, name = 'Decoding Diagnostics', include_tables = False, interactive = False) Combine the now-separated CV and probability blocks into one section. Legacy-only: this re-colocates diagnostics that the presets deliberately keep apart. It backs the deprecated :func:`add_decoding_diagnostics` method and is intentionally absent from every preset, so it cannot reintroduce the historical double-render. Prefer ``build_cv_section`` + ``build_probability_section``. .. py:function:: build_statistical_section(result, *, metric = None, model = None, name = 'Statistical Assessment', interactive = False) Build finite-sample and temporal statistical assessment. .. py:function:: build_temporal_section(result, *, metric = None, model = None, name = 'Temporal Decoding', include_tables = False, interactive = False) Build temporal score and generalization diagnostics when applicable. .. py:function:: build_performance_section(result, *, metric = None, name = 'Performance', interactive = False) Build aggregate score and paired model-comparison figures. .. py:function:: build_features_section(result, *, feature_metadata = None, model = None, top_n = 20, name = 'Features', include_tables = False, interactive = False) Build feature importance, stability, and sensor-family summaries. .. py:function:: build_topomaps_section(result, *, feature_metadata = None, info = None, coords = None, name = 'Sensor Maps') Build feature-family sensor profiles when spatial metadata exists. .. py:function:: build_fit_diagnostics_section(result, *, model = None, name = 'Fit Diagnostics', include_tables = False, supplementary = True, interactive = False) Build timing and warning diagnostics as supplementary content. .. py:function:: build_tuning_section(result, *, model = None, name = 'Hyperparameter Tuning', include_tables = False, supplementary = True, interactive = False) Build best-parameter and search-result diagnostics. .. py:function:: build_neural_section(result, *, model = None, name = 'Neural Artifacts', include_tables = False, interactive = False) Build neural training artifacts when available. .. py:function:: build_configuration_section(result, *, name = 'Configuration') Build the stored run configuration. .. py:function:: build_provenance_section(result, *, name = 'Provenance') Build environment and provenance metadata. .. py:function:: build_caveats_section(result, *, feature_metadata = None, name = 'Caveats') Build explicit caveats for unavailable optional diagnostics. .. py:function:: build_export_inventory_section(result, *, name = 'Export Inventory') Build a compact inventory of available result accessors. .. py:data:: DECODING_SECTION_BUILDERS :type: dict[str, collections.abc.Callable[Ellipsis, coco_pipe.report.core.Section]] .. py:data:: VALID_SECTIONS .. py:function:: build_decoding_sections(result, *, sections = 'default', feature_metadata = None, info = None, coords = None, verbose = None, interactive = False, on_error = 'warn', section_options = None) Build ordered decoding sections without creating or mutating a report. .. py:function:: make_decoding_report(result, *, feature_metadata = None, info = None, coords = None, sections = 'default', interactive = False, theme = 'paper', title = 'Decoding Report', config = None, asset_urls = None, qc_result = None, output_path = None, verbose = None, on_error = 'warn', section_options = None) Build a decoding report from one ``~coco_pipe.decoding.result.ExperimentResult``. With ``interactive=True``, chart-like sections render Plotly figures; topomap and sensor-map sections remain Matplotlib images (no Plotly twin exists). .. py:function:: add_decoding_overview(self, result, *, name = 'Overview') .. py:function:: add_decoding_summary(self, result, name = 'Decoding Summary') .. py:function:: add_decoding_diagnostics(self, result, metric = None, model = None, name = 'Decoding Diagnostics') .. py:function:: add_decoding_statistical_assessment(self, result, metric = None, model = None, name = 'Statistical Assessment') .. py:function:: add_decoding_temporal(self, result, metric = None, model = None, name = 'Temporal Decoding') .. py:function:: add_decoding_performance(self, result, *, metric = None, name = 'Performance') .. py:function:: add_decoding_features(self, result, *, feature_metadata = None, name = 'Features') .. py:function:: add_decoding_topomaps(self, result, *, feature_metadata = None, info = None, coords = None, name = 'Sensor Maps') .. py:function:: add_decoding_neural_artifacts(self, result, model = None, name = 'Neural Artifacts')