Package ai.libs.hasco.knowledgebase
Class FANOVAParameterImportanceEstimator
- java.lang.Object
-
- ai.libs.hasco.knowledgebase.FANOVAParameterImportanceEstimator
-
- All Implemented Interfaces:
IParameterImportanceEstimator
public class FANOVAParameterImportanceEstimator extends java.lang.Object implements IParameterImportanceEstimator
Parameter importance estimator using fANOVA.
-
-
Constructor Summary
Constructors Constructor Description FANOVAParameterImportanceEstimator(PerformanceKnowledgeBase performanceKnowledgeBase, java.lang.String benchmarkName, int minNumSamples, double importanceThreshold)FANOVAParameterImportanceEstimator(java.lang.String benchmarkName, int minNumSamples, double importanceThreshold)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.String,java.lang.Double>computeImportanceForSingleComponent(Component component)Computes importance values for individual components.java.util.Set<java.lang.String>extractImportantParameters(ComponentInstance composition, boolean recompute)Extract important parameters for subsets of sizesizeOfLargestSubsetToConsider.intgetNumberPrunedParameters()Returns the number of parameters that have been prunedPerformanceKnowledgeBasegetPerformanceKnowledgeBase()Get the performance knowledge base used for parameter importance estimationjava.util.Set<java.lang.String>getPrunedParameters()booleanreadyToEstimateImportance(ComponentInstance composition)Checks whether the estimator is ready to estimate parameter importance for the compositionvoidsetPerformanceKnowledgeBase(PerformanceKnowledgeBase performanceKnowledgeBase)Set the performance knowledge base used for parameter importance estimation
-
-
-
Constructor Detail
-
FANOVAParameterImportanceEstimator
public FANOVAParameterImportanceEstimator(PerformanceKnowledgeBase performanceKnowledgeBase, java.lang.String benchmarkName, int minNumSamples, double importanceThreshold)
-
FANOVAParameterImportanceEstimator
public FANOVAParameterImportanceEstimator(java.lang.String benchmarkName, int minNumSamples, double importanceThreshold)
-
-
Method Detail
-
extractImportantParameters
public java.util.Set<java.lang.String> extractImportantParameters(ComponentInstance composition, boolean recompute) throws ExtractionOfImportantParametersFailedException
Extract important parameters for subsets of sizesizeOfLargestSubsetToConsider. Importance values are put into the importance dictionary. To recompute them, the flagrecomputecan be set.- Specified by:
extractImportantParametersin interfaceIParameterImportanceEstimator- Parameters:
composition-importanceThreshold-sizeOfLargestSubsetsToConsider-- Returns:
- Throws:
java.lang.ExceptionExtractionOfImportantParametersFailedException
-
computeImportanceForSingleComponent
public java.util.Map<java.lang.String,java.lang.Double> computeImportanceForSingleComponent(Component component)
Computes importance values for individual components.- Specified by:
computeImportanceForSingleComponentin interfaceIParameterImportanceEstimator- Returns:
-
readyToEstimateImportance
public boolean readyToEstimateImportance(ComponentInstance composition)
Description copied from interface:IParameterImportanceEstimatorChecks whether the estimator is ready to estimate parameter importance for the composition- Specified by:
readyToEstimateImportancein interfaceIParameterImportanceEstimator- Returns:
- true if the estimator is ready, false otherwise
-
getPerformanceKnowledgeBase
public PerformanceKnowledgeBase getPerformanceKnowledgeBase()
Description copied from interface:IParameterImportanceEstimatorGet the performance knowledge base used for parameter importance estimation- Specified by:
getPerformanceKnowledgeBasein interfaceIParameterImportanceEstimator- Returns:
- the performanceKnowledgeBase
-
setPerformanceKnowledgeBase
public void setPerformanceKnowledgeBase(PerformanceKnowledgeBase performanceKnowledgeBase)
Description copied from interface:IParameterImportanceEstimatorSet the performance knowledge base used for parameter importance estimation- Specified by:
setPerformanceKnowledgeBasein interfaceIParameterImportanceEstimator- Parameters:
performanceKnowledgeBase- the performanceKnowledgeBase to set
-
getNumberPrunedParameters
public int getNumberPrunedParameters()
Description copied from interface:IParameterImportanceEstimatorReturns the number of parameters that have been pruned- Specified by:
getNumberPrunedParametersin interfaceIParameterImportanceEstimator- Returns:
- number of pruned parameters
-
getPrunedParameters
public java.util.Set<java.lang.String> getPrunedParameters()
- Specified by:
getPrunedParametersin interfaceIParameterImportanceEstimator
-
-