|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectweka.associations.RuleGeneration
Class implementing the rule generation procedure of the predictive apriori algorithm. Reference: T. Scheffer (2001). Finding Association Rules That Trade Support Optimally against Confidence. Proc of the 5th European Conf. on Principles and Practice of Knowledge Discovery in Databases (PKDD'01), pp. 424-435. Freiburg, Germany: Springer-Verlag.
The implementation follows the paper expect for adding a rule to the output of the n<\i> best rules. A rule is added if: the expected predictive accuracy of this rule is among the n<\i> best and it is not subsumed by a rule with at least the same expected predictive accuracy (out of an unpublished manuscript from T. Scheffer).
Constructor Summary | |
RuleGeneration(ItemSet itemSet)
Constructor |
Method Summary | |
static boolean |
aSubsumesB(RuleItem a,
RuleItem b)
Methods that decides whether or not rule a subsumes rule b. |
static double |
binomialDistribution(double accuracy,
double ruleCount,
double premiseCount)
calculates the probability using a binomial distribution. |
boolean |
change()
Gets if the list fo the best rules has been changed |
int |
count()
Gets the actual maximum value of the generation time |
static double |
expectation(double ruleCount,
int premiseCount,
double[] midPoints,
java.util.Hashtable priors)
calculates the expected predctive accuracy of a rule |
java.util.TreeSet |
generateRules(int numRules,
double[] midPoints,
java.util.Hashtable priors,
double expectation,
Instances instances,
java.util.TreeSet best,
int genTime)
Generates all rules for an item set. |
boolean |
removeRedundant(RuleItem toInsert)
Method that removes redundant rules out of the list of the best rules. |
static FastVector |
singleConsequence(Instances instances,
int attNum,
FastVector consequences)
generates a consequence of length 1 for an association rule. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public RuleGeneration(ItemSet itemSet)
itemSet
- item set for that rules should be generated.
The item set will form the premise of the rules.Method Detail |
public static final double binomialDistribution(double accuracy, double ruleCount, double premiseCount)
accuracy
- the accuracy valueruleCount
- the support of the whole rulepremiseCount
- the support of the premise
public static final double expectation(double ruleCount, int premiseCount, double[] midPoints, java.util.Hashtable priors)
ruleCount
- the support of the rulepremiseCount
- the premise support of the rulemidPoints
- array with all mid pointspriors
- hashtable containing the prior probabilities
public java.util.TreeSet generateRules(int numRules, double[] midPoints, java.util.Hashtable priors, double expectation, Instances instances, java.util.TreeSet best, int genTime)
numRules
- the number of association rules the use wants to mine.
This number equals the size n<\i> of the list of the
best rules.midPoints
- the mid points of the intervalspriors
- Hashtable that contains the prior probabilitiesexpectation
- the minimum value of the expected predictive accuracy
that is needed to get into the list of the best rulesinstances
- the instances for which association rules are generatedbest
- the list of the n<\i> best rules.
The list is implemented as a TreeSetgenTime
- the maximum time of generation
public static boolean aSubsumesB(RuleItem a, RuleItem b)
a
- an association rule stored as a RuleItemb
- an association rule stored as a RuleItem
public static FastVector singleConsequence(Instances instances, int attNum, FastVector consequences)
instances
- the instances under considerationattNum
- an item that does not occur in the premiseconsequences
- FastVector that possibly already contains other consequences of length 1
public boolean removeRedundant(RuleItem toInsert)
toInsert
- the rule that should be inserted into the list
public int count()
public boolean change()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |