Logic learning machine

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

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,[1] developed by Marco Muselli, Senior Researcher at the Italian National Research Council CNR-IEIIT in Genoa. Logic Learning Machine is implemented in the Rulex suite.

LLM has been employed in different fields, including orthopaedic patient classification,[2] DNA microarray analysis [3] and Clinical Decision Support System.[4]


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.[5] Also a LLM version devoted to regression problems was developed.


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 corresponding to a given configuration of inputs. A rule is written in the form:

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 :.
  • for ordered variables the condition is written as an inequality or an interval: or

A possible rule is therefore in the form


According to the output type, different versions of 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.


  1. ^ Muselli, Marco (2006). "Switching Neural Networks: A new connectionist model for classification" (PDF). WIRN 2005 and NAIS 2005, Lecture Notes on Computer Science. 3931: 23–30.
  2. ^ Mordenti, M.; Ferrari, E.; Pedrini, E.; Fabbri, N.; Campanacci, L.; Muselli, M.; Sangiorgi, L. (2013). "Validation of a New Multiple Osteochondromas Classification Through Switching Neural Networks". American Journal of Medical Genetics Part A. 161: 556–560. doi:10.1002/ajmg.a.35819. PMID 23401177.
  3. ^ Cangelosi, D.; Muselli, M.; Blengio, F.; Becherini, P.; Versteeg, R.; Conte, M.; Varesio, L. (2013). "Use of Attribute Driven Incremental Discretization and Logic Learning Machine to build a prognostic classifier for neuroblastoma patients". BITS2013.
  4. ^ Parodi, S.; Filiberti, R.; Marroni, P.; Montani, E.; Muselli, M. (2014). "Differential diagnosis of pleural mesothelioma using Logic Learning Machine". BITS2014.
  5. ^ "Rulex: a software for knowledge extraction from data". Italian National Research Council. Retrieved 7 March 2015.

External links[edit]