File learner.hpp¶
-
namespace seco
-
class ISeCoRuleLearnerConfig : public virtual IRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner that makes use of the separate-and-conquer (SeCo) paradigm.
Subclassed by seco::IAccuracyHeuristicMixin, seco::IAccuracyPruningHeuristicMixin, seco::ICoverageStoppingCriterionMixin, seco::IFMeasureHeuristicMixin, seco::IFMeasurePruningHeuristicMixin, seco::IKlnLiftFunctionMixin, seco::ILaplaceHeuristicMixin, seco::ILaplacePruningHeuristicMixin, seco::IMEstimateHeuristicMixin, seco::IMEstimatePruningHeuristicMixin, seco::INoLiftFunctionMixin, seco::IOutputWiseBinaryPredictionMixin, seco::IPartialHeadMixin, seco::IPeakLiftFunctionMixin, seco::IPrecisionHeuristicMixin, seco::IPrecisionPruningHeuristicMixin, seco::IRecallHeuristicMixin, seco::IRecallPruningHeuristicMixin, seco::ISingleOutputHeadMixin, seco::IWraHeuristicMixin, seco::IWraPruningHeuristicMixin, seco::SeCoRuleLearnerConfig
Public Functions
-
inline virtual ~ISeCoRuleLearnerConfig() override¶
-
virtual Property<IStoppingCriterionConfig> getCoverageStoppingCriterionConfig() = 0¶
Returns a
Propertythat allows to access theIStoppingCriterionConfigthat stores the configuration of the stopping criterion that stops the induction of rules as soon as enough of the label space is covered.- Returns:
A
Propertythat allows to access theIStoppingCriterionConfigthat stores the configuration of the stopping criterion that stops the induction of rules as soon as enough of the label space is covered
-
virtual Property<IHeadConfig> getHeadConfig() = 0¶
Returns a
Propertythat allows to access theIHeadConfigthat stores the configuration of the rule heads that should be induced by the rule learner.- Returns:
A
Propertythat allows to access theIHeadConfigthat stores the configuration of the rule heads that should be induced by the rule learner
-
virtual Property<IHeuristicConfig> getHeuristicConfig() = 0¶
Returns a
Propertythat allows to access theIHeuristicConfigthat stores the configuration of the heuristic for learning rules.- Returns:
A
Propertythat allows to access theIHeuristicConfigthat stores the configuration of the heuristic for learning rules
-
virtual Property<IHeuristicConfig> getPruningHeuristicConfig() = 0¶
Returns a
Propertythat allows to access theIHeuristicConfigthat stores the configuration of the heuristic for pruning rules.- Returns:
A
Propertythat allows to access theIHeuristicConfigthat stores the configuration of the heuristic for pruning rules
-
virtual Property<ILiftFunctionConfig> getLiftFunctionConfig() = 0¶
Returns a
Propertythat allows to access theILiftFunctionConfigthat stores the configuration of the lift function that affects the quality of rules, depending on the number of labels for which they predict.- Returns:
A
Propertythat allows to access theILiftFunctionConfigthat stores the configuration of the lift function that affects the quality of rules, depending on the number of labels for which they predict
-
inline virtual ~ISeCoRuleLearnerConfig() override¶
-
class ICoverageStoppingCriterionMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use a stopping criterion that stops the induction of rules as soon as a certain fraction of the available training examples and labels is covered.
Subclassed by seco::ISeCoRuleLearnerMixin
Public Functions
-
inline virtual ~ICoverageStoppingCriterionMixin() override¶
-
inline virtual ICoverageStoppingCriterionConfig &useCoverageStoppingCriterion()¶
Configures the rule learner to use a stopping criterion that stops the induction of rules as soon as a certain fraction of the available training examples and labels is covered.
- Returns:
A reference to an object of type
ICoverageStoppingCriterionConfigthat allows further configuration of the stopping criterion
-
inline virtual ~ICoverageStoppingCriterionMixin() override¶
-
class ISingleOutputHeadMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to induce rules with single-output heads that predict for a single output.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IPartialHeadMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to induce rules with partial heads.
Subclassed by seco::ISeCoClassifier::IConfig
-
class INoLiftFunctionMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to not use a lift function.
Subclassed by seco::ISeCoRuleLearnerMixin
-
class IPeakLiftFunctionMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use a lift function that monotonously increases until a certain number of labels, where the maximum lift is reached, and monotonously decreases afterwards.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IPeakLiftFunctionMixin() override¶
-
inline virtual IPeakLiftFunctionConfig &usePeakLiftFunction()¶
Configures the rule learner to use a lift function that monotonously increases until a certain number of labels, where the maximum lift is reached, and monotonously decreases afterwards.
- Returns:
A reference to an object of type
IPeakLiftFunctionConfigthat allows further configuration of the lift function
-
inline virtual ~IPeakLiftFunctionMixin() override¶
-
class IKlnLiftFunctionMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use a lift function that monotonously increases according to the natural logarithm of the number of labels for which a rule predicts.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IKlnLiftFunctionMixin() override¶
-
inline virtual IKlnLiftFunctionConfig &useKlnLiftFunction()¶
Configures the rule learner to use a lift function that monotonously increases according to the natural logarithm of the number of labels for which a rule predicts.
- Returns:
A reference to an object of type
IKlnLiftFunctionConfigthat allows further configuration of the lift function
-
inline virtual ~IKlnLiftFunctionMixin() override¶
-
class IAccuracyHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Accuracy” heuristic for learning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IAccuracyPruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Accuracy” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IFMeasureHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “F-Measure” heuristic for learning rules.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IFMeasureHeuristicMixin() override¶
-
inline virtual IFMeasureConfig &useFMeasureHeuristic()¶
Configures the rule learner to use the “F-Measure” heuristic for learning rules.
- Returns:
A reference to an object of type
IFMeasureConfigthat allows further configuration of the heuristic
-
inline virtual ~IFMeasureHeuristicMixin() override¶
-
class IFMeasurePruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “F-Measure” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IFMeasurePruningHeuristicMixin() override¶
-
inline virtual IFMeasureConfig &useFMeasurePruningHeuristic()¶
Configures the rule learner to use the “F-Measure” heuristic for pruning rules.
- Returns:
A reference to an object of type
IFMeasureConfigthat allows further configuration of the heuristic
-
inline virtual ~IFMeasurePruningHeuristicMixin() override¶
-
class IMEstimateHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “M-Estimate” heuristic for learning rules.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IMEstimateHeuristicMixin() override¶
-
inline virtual IMEstimateConfig &useMEstimateHeuristic()¶
Configures the rule learner to use the “M-Estimate” heuristic for learning rules.
- Returns:
A reference to an object of type
IMEstimateConfigthat allows further configuration of the heuristic
-
inline virtual ~IMEstimateHeuristicMixin() override¶
-
class IMEstimatePruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “M-Estimate” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IMEstimatePruningHeuristicMixin() override¶
-
inline virtual IMEstimateConfig &useMEstimatePruningHeuristic()¶
Configures the rule learner to use the “M-Estimate” heuristic for pruning rules.
- Returns:
A reference to an object of type
IMEstimateConfigthat allows further configuration of the heuristic
-
inline virtual ~IMEstimatePruningHeuristicMixin() override¶
-
class ILaplaceHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Laplace” heuristic for learning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class ILaplacePruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Laplace” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IPrecisionHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Precision” heuristic for learning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IPrecisionPruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Precision” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IRecallHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Recall” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IRecallPruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Recall” heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IWraHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Weighted Relative
Accuracy” (WRA) heuristic for learning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IWraPruningHeuristicMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use the “Weighted Relative
Accuracy” (WRA) heuristic for pruning rules.
Subclassed by seco::ISeCoClassifier::IConfig
-
class IOutputWiseBinaryPredictionMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to use a predictor for predicting whether individual labels of given query examples are relevant or irrelevant by processing rules of an existing rule-based model in the order they have been learned. If a rule covers an example, its prediction is applied to each label individually.
Subclassed by seco::ISeCoClassifier::IConfig
Public Functions
-
inline virtual ~IOutputWiseBinaryPredictionMixin() override¶
-
inline virtual void useOutputWiseBinaryPredictor()¶
Configures the rule learner to use a predictor for predicting whether individual labels of given query examples are relevant or irrelevant by processing rules of an existing rule-based model in the order they have been learned. If a rule covers an example, its prediction is applied to each label individually.
-
inline virtual ~IOutputWiseBinaryPredictionMixin() override¶
-
class ISeCoRuleLearnerMixin : public virtual IRuleLearnerMixin, public virtual ISimdMixin, public virtual seco::ICoverageStoppingCriterionMixin, public virtual seco::INoLiftFunctionMixin¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner that makes use of the separate-and-conquer (SeCo) paradigm to use a simple default configuration.
Subclassed by seco::ISeCoClassifier::IConfig
-
class ISeCoRuleLearnerConfig : public virtual IRuleLearnerConfig¶