Skip to main content

Rule based Classification

 A rule-based classifier uses a set of If - Then rules for classification. An If - Then rule is an expression of the form

If condition Then conclusion.

The If part is known as rule antecedent or precondition and Then part is known as rule consequent. The rule antecedent contains attribute test condition and rule consequent contains class prediction.

If rule antecedents are satisfied, then the rule covers the data in the dataset.

The coverage and accuracy of a rule is assessed by

coverage = ncovers/|D|

accuracy = ncorrect/ncovers

where

ncovers - no of data covered by rule

ncorrect - no of data classified correctly by rule

D - no of data in the dataset.

If a rule is satisfied by a data in the dataset, then the rule is said to be triggered. IF only one rule is triggered, then the rule classifies the data, which referred as rule firing. If more than one rule is triggered, then conflict resolution strategy to be applied to classify the data. 

The size ordering and rule ordering are the conflict resolution strategies.

The size ordering strategy assigns the highest priority to the triggering rule with more attribute tests.

The rule ordering may be class based or rule based. The classes are sorted in decreasing order of prevalence.

The rules are organized into one long priority list, according to some measure of rule quality, such as accuracy, coverage, or size or based on advice from domain experts in the rule based ordering. When rule ordering is used, the rule set is known as a decision list.

Most rule-based classification systems use a class-based rule-ordering strategy.


Popular posts from this blog

Decision Tree - Gini Index

The Gini index is used in CART. The Gini index measures the impurity of the data set, where p i - probability that data in the data set, D belong to class, C i  and pi = |C i,D |/|D| There are 2 v - 2 possible ways to form two partitions of the data set, D based on a binary split on a attribute. Each of the possible binary splits of the attribute is considered. The subset that gives the minimum Gini index is selected as the splitting subset for discrete valued attribute. The degree of Gini index varies between 0 and 1. The value 0 denotes that all elements belong to a certain class or if there exists only one class, and the value 1 denotes that the elements are randomly distributed across various classes. A Gini Index of 0.5 denotes equally distributed elements into some classes. The Gini index is biased toward multivalued attributes and has difficulty when the number of classes is large.

Gaussian Elimination - Row reduction Algorithm

 Gaussian elimination is a method for solving matrix equations of the form, Ax=b.  This method is also known as the row reduction algorithm. Back  Substitution Solving the last equation for the variable and then work backward into the first equation to solve it.  The fundamental idea is to add multiples of one equation to the others in order to eliminate a variable and to continue this process until only one variable is left. Pivot row The row that is used to perform elimination of a variable from other rows is called the pivot row. Example: Solving a linear equation The augmented matrix for the above equation shall be The equation shall be solved using back substitution. The eliminating the first variable (x1) in the first row (Pivot row) by carrying out the row operation. As the second row become zero, the row will be shifted to bottom by carrying out partial pivoting. Now, the second variable (x2)  shall be eliminated by carrying out the row operation again. ...

Exercise 1 - Amdahl's Law

A programmer is given the job to write a program on a computer with processor having speedup factor 3.8 on 4 processors. He makes it 95% parallel and goes home dreaming of a big pay raise. Using Amdahl’s law, and assuming the problem size is the same as the serial version, and ignoring communication costs, what is the speedup factor that the programmer will get? Solution Speedup formula as per Amdahl's Law, N - no of processor = 4 f - % of parallel operation = 95% Speedup = 1 / (1 - 0.95) + (0.95/4) = 1 / 0.5 + (0.95/4) Speedup = 3.478 The programmer gets  3.478 as t he speedup factor.