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::INoCoverageStoppingCriterionMixin, 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 the sum of the weights of the uncovered labels is smaller or equal to a certain threshold.- Returns:
A
Propertythat allows to access theIStoppingCriterionConfigthat stores the configuration of the stopping criterion that stops the induction of rules as soon as the sum of the weights of the uncovered labels is smaller or equal to a certain threshold
-
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 INoCoverageStoppingCriterionMixin : public virtual seco::ISeCoRuleLearnerConfig¶
- #include <learner.hpp>
Defines an interface for all classes that allow to configure a rule learner to not use any stopping criterion that stops the induction of rules as soon as the sum of the weights of the uncovered labels is smaller or equal to a certain threshold.
Subclassed by seco::ISeCoRuleLearnerMixin
Public Functions
-
inline virtual ~INoCoverageStoppingCriterionMixin() override¶
-
inline virtual void useNoCoverageStoppingCriterion()¶
Configures the rule learner to not use any stopping criterion that stops the induction of rules as soon as the sum of the weights of the uncovered labels is smaller or equal to a certain threshold.
-
inline virtual ~INoCoverageStoppingCriterionMixin() 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 the sum of the weights of the uncovered labels is smaller or equal to a certain threshold.
Subclassed by seco::ISeCoClassifier::IConfig
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 the sum of the weights of the uncovered labels is smaller or equal to a certain threshold.
- 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 seco::INoCoverageStoppingCriterionMixin, 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¶