Logic learning machine

Logic learning machine (LLM) is a machine learning method based on the generation of intelligible rules. LLM is an efficient implementation of the Switching Neural Network (SNN) paradigm, developed by Marco Muselli, Senior Researcher at the Italian National Research Council CNR-IEIIT in Genoa.

LLM has been employed in many different sectors, including the field of medicine (orthopedic patient classification, DNA micro-array analysis and Clinical Decision Support Systems ), financial services and supply chain management.

History
The Switching Neural Network approach was developed in the 1990s to overcome the drawbacks of the most commonly used machine learning methods. In particular, black box methods, such as multilayer perceptron and support vector machine, had good accuracy but could not provide deep insight into the studied phenomenon. On the other hand, decision trees were able to describe the phenomenon but often lacked accuracy. Switching Neural Networks made use of Boolean algebra to build sets of intelligible rules able to obtain very good performance. In 2014, an efficient version of Switching Neural Network was developed and implemented in the Rulex suite with the name Logic Learning Machine. Also, an LLM version devoted to regression problems was developed.

General
Like other machine learning methods, LLM uses data to build a model able to perform a good forecast about future behaviors. LLM starts from a table including a target variable (output) and some inputs and generates a set of rules that return the output value $$y$$ corresponding to a given configuration of inputs. A rule is written in the form:


 * $$ \textbf{if } \text{  } premise \text{  } \textbf{ then } \text{  } consequence$$

where consequence contains the output value whereas premise includes one or more conditions on the inputs. According to the input type, conditions can have different forms:
 * for categorical variables the input value must be in a given subset :$$x_1 \in \{A,B,C,...\}$$.
 * for ordered variables the condition is written as an inequality or an interval: $$x_2 \leq \alpha$$ or $$\beta\leq x_3\leq \gamma$$

A possible rule is therefore in the form


 * $$ \textbf{if } \text{  } x_1 \in \{A,B,C,...\} \text{  AND  } x_2 \leq \alpha \text{  AND  } \beta\leq x_3\leq \gamma \text{  } \textbf{ then } \text{  } y = \bar{y}$$

Types
According to the output type, different versions of the Logic Learning Machine have been developed:
 * Logic Learning Machine for classification, when the output is a categorical variable, which can assume values in a finite set
 * Logic Learning Machine for regression, when the output is an integer or real number.