org.dllearner.algorithms.refinement2
Class MultiHeuristic
java.lang.Object
org.dllearner.algorithms.refinement2.MultiHeuristic
- All Implemented Interfaces:
- Comparator<ExampleBasedNode>, ExampleBasedHeuristic
public class MultiHeuristic
- extends Object
- implements ExampleBasedHeuristic
This heuristic combines the following criteria to assign a
double score value to a node:
- quality/accuracy of a concept (based on the full training set, not
the negative example coverage as the flexible heuristic)
- horizontal expansion
- accuracy gain: The heuristic takes into account the accuracy
difference between a node and its parent. If there is no gain (even
though we know that the refinement is proper) it is unlikely (although
not excluded) that the refinement is a necessary path to take towards a
solution.
The heuristic has two parameters:
- expansion penalty factor: describes how much accuracy gain is worth
an increase of horizontal expansion by one (typical value: 0.01)
- gain bonus factor: describes how accuracy gain should be weighted
versus accuracy itself (typical value: 1.00)
The value of a node is calculated as follows:
value = accuracy + gain bonus factor * accuracy gain - expansion penalty
factor * horizontal expansion - node children penalty factor * number of children of node
accuracy = (TP + TN)/(P + N)
TP = number of true positives (= covered positives)
TN = number of true negatives (= nr of negatives examples - covered negatives)
P = number of positive examples
N = number of negative examples
- Author:
- Jens Lehmann
MultiHeuristic
@Deprecated
public MultiHeuristic(int nrOfPositiveExamples,
int nrOfNegativeExamples)
- Deprecated.
MultiHeuristic
public MultiHeuristic(int nrOfPositiveExamples,
int nrOfNegativeExamples,
ROLComponent2Configurator configurator)
compare
public int compare(ExampleBasedNode node1,
ExampleBasedNode node2)
- Specified by:
compare in interface Comparator<ExampleBasedNode>
getNodeScore
public double getNodeScore(ExampleBasedNode node)
getNodeScore
public static double getNodeScore(ExampleBasedNode node,
int nrOfPositiveExamples,
int nrOfNegativeExamples,
ROLComponent2Configurator configurator)
DL-Learner is licenced under the terms of the GNU General Public License.
Copyright © 2007-2008 Jens Lehmann