title: Rule induction
text: # Rule induction
  
  Rule induction is an area of machine learning in which formal rules are extracted from a set of observations. The rules extracted may represent a full scientific model of the data, or merely represent local patterns in the data.
  
  Data mining in general and rule induction in detail are trying to create algorithms without human programming but with analyzing existing data $structures.^{:415-}$ In the easiest case, a rule is expressed with “if-then statements” and was created with the ID3 algorithm for decision tree $learning.^{:7}^{:348}$ Rule learning algorithm are taking training data as input and creating rules by partitioning the table with cluster $analysis.^{:7}$ A possible alternative over the ID3 algorithm is genetic programming which evolves a program until it fits to the $data.^{:2}$
  
  Creating different algorithm and testing them with input data can be realized in the WEKA $software.^{:125}$ Additional tools are machine learning libraries for Python, like scikit-learn.
  
  ## Paradigms
  
  Some major rule induction paradigms are:
  
  * Association rule learning algorithms (e.g., Agrawal)
  * Decision rule algorithms (e.g., Quinlan 1987)
  * Hypothesis testing algorithms (e.g., RULEX)
  * Horn clause induction
  * Version spaces
  * Rough set rules
  * Inductive Logic Programming
  * Boolean decomposition (Feldman)
  
  ## Algorithms
  
  Some rule induction algorithms are:
  
  * Charade
  * Rulex
  * Progol
  * CN2
  