Mark a class attribute as pure parameter for an algorithm or pipeline.
Compared to normal parameters (
Parameter), pure parameters must only be specified for optimizable Algorithms or Pipelines. Pure parameters are expected to not influence the outcome of self optimize. This information can be used for internal checks and performance optimizations. These are most typically used in pipelines with multiple steps, that have an initial ML part that can be optimized independently and a second non-ML part, that still has some parameters. The knowledge of what parameter do not influence the outcome of optimization can be used to dramatically reduce the complexity of black box based parameter optimizations (learn more TODO: Link to guide once available.). However, using
pure_parameterincorrectly can lead to hard to detect issues. If you are unsure, just mark a parameter as
pure_parameter. This has no negative side effect, besides disabling potential performance optimizations.