class_docstr: The nonparametric surrogate predicts a model's performance on a new dataset
  as the average performance across all known datasets.
  
  Performances are either predicted as ranks or actual values.
class_docstr_tok: ["The","nonparametric","surrogate","predicts","a","model","'s","performance","on","a","new","dataset","as","the","average","performance","across","all","known","datasets",".","Performances","are","either","predicted","as","ranks","or","actual","values","."]
docstr: Args:
      tracker: A tracker that can be used to impute latency and number of model parameters
          into model performances. Also, it is required for some input features.
      use_simple_dataset_features: Whether to use dataset features to predict using a
          weighted average.
      use_seasonal_naive_performance: Whether to use the Seasonal Naïve nCRPS as dataset
          featuers. Requires the cacher to be set.
      use_catch22_features: Whether to use catch22 features for datasets statistics. Ignored
          if `use_dataset_features` is not set.
      predict: The metrics to predict. All if not provided.
      output_normalization: The type of normalization to apply to the features of each
          dataset independently. `None` applies no normalization, "quantile" applies quantile
          normalization, and "standard" transforms data to have zero mean and unit variance.
      impute_simulatable: Whether the tracker should impute latency and number of model
          parameters into the returned performance object.
docstr_tok: ["Args",":","tracker",":","A","tracker","that","can","be","used","to","impute","latency","and","number","of","model","parameters","into","model","performances",".","Also",",","it","is","required","for","some","input","features",".","use_simple_dataset_features",":","Whether","to","use","dataset","features","to","predict","using","a","weighted","average",".","use_seasonal_naive_performance",":","Whether","to","use","the","Seasonal","Na\u00efve","nCRPS","as","dataset","featuers",".","Requires","the","cacher","to","be","set",".","use_catch22_features",":","Whether","to","use","catch22","features","for","datasets","statistics",".","Ignored","if","`","use_dataset_features","`","is","not","set",".","predict",":","The","metrics","to","predict",".","All","if","not","provided",".","output_normalization",":","The","type","of","normalization","to","apply","to","the","features","of","each","dataset","independently",".","`","None","`","applies","no","normalization",",","``","quantile","''","applies","quantile","normalization",",","and","``","standard","''","transforms","data","to","have","zero","mean","and","unit","variance",".","impute_simulatable",":","Whether","the","tracker","should","impute","latency","and","number","of","model","parameters","into","the","returned","performance","object","."]
code: def __init__(
      self,
      tracker: ModelTracker,
      use_simple_dataset_features: bool = False,
      use_seasonal_naive_performance: bool = False,
      use_catch22_features: bool = False,
      predict: Optional[List[str]] = None,
      output_normalization: OutputNormalization = None,
      impute_simulatable: bool = False,
  ):
      """
      Args:
          tracker: A tracker that can be used to impute latency and number of model parameters
              into model performances. Also, it is required for some input features.
          use_simple_dataset_features: Whether to use dataset features to predict using a
              weighted average.
          use_seasonal_naive_performance: Whether to use the Seasonal Naïve nCRPS as dataset
              featuers. Requires the cacher to be set.
          use_catch22_features: Whether to use catch22 features for datasets statistics. Ignored
              if `use_dataset_features` is not set.
          predict: The metrics to predict. All if not provided.
          output_normalization: The type of normalization to apply to the features of each
              dataset independently. `None` applies no normalization, "quantile" applies quantile
              normalization, and "standard" transforms data to have zero mean and unit variance.
          impute_simulatable: Whether the tracker should impute latency and number of model
              parameters into the returned performance object.
      """
      super().__init__(
          tracker, predict, output_normalization, impute_simulatable
      )
  
      self.use_dataset_features = any(
          [
              use_simple_dataset_features,
              use_seasonal_naive_performance,
              use_catch22_features,
          ]
      )
      if self.use_dataset_features:
          self.config_transformer = ConfigTransformer(
              add_model_features=False,
              add_dataset_statistics=use_simple_dataset_features,
              add_seasonal_naive_performance=use_seasonal_naive_performance,
              add_catch22_features=use_catch22_features,
              tracker=tracker,
          )
  
file_path: gluonts/src/gluonts/nursery/tsbench/src/tsbench/surrogate/nonparametric.py
imports: from collections import defaultdict
  from typing import Dict, List, Optional
  import numpy
  import numpy.typing
  from sklearn.metrics.pairwise import euclidean_distances
  from tsbench.config import Config, ModelConfig
  from tsbench.config.model.models import SeasonalNaiveModelConfig
  from tsbench.evaluations.tracking import ModelTracker
  from ._base import DatasetFeaturesMixin, OutputNormalization, Surrogate
  from ._factory import register_surrogate
  from .transformers import ConfigTransformer
label_desc: Use image node_id 1 to create a new NonparametricSurrogate object from inherited base classes: Surrogate, DatasetFeaturesMixin with example: obj = NonparametricSurrogate(tracker, use_simple_dataset_features, use_seasonal_naive_performance, use_catch22_features, predict, output_normalization, impute_simulatable)