Prolog-based agnostic explanation module for structured pattern classification

Gonzalo Nápoles, Fabian Hoitsma, Andreas Knoben, Agnieszka Jastrzebska, Maikel Leon Espinosa

Research output: Contribution to journalArticleScientific

44 Downloads (Pure)


This paper presents a Prolog-based reasoning module to generate counterfactual explanations given the predictions computed by a black-box classifier. The proposed symbolic reasoning module can also resolve what-if queries using the ground-truth labels instead of the predicted ones. Overall, our approach comprises four well-defined stages that can be applied to any structured pattern classification problem. Firstly, we pre-process the given dataset by imputing missing values and normalizing the numerical features. Secondly, we transform numerical features into symbolic ones using fuzzy clustering such that extracted fuzzy clusters are mapped to an ordered set of predefined symbols. Thirdly, we encode instances as a Prolog rule using the nominal values, the predefined symbols, the decision classes, and the confidence values. Fourthly, we compute the overall confidence of each Prolog rule using fuzzy-rough set theory to handle the uncertainty caused by transforming numerical quantities into symbols. This step comes with an additional theoretical contribution to a new similarity function to compare the previously defined Prolog rules involving confidence values. Finally, we implement a chatbot as a proxy between human beings and the Prolog-based reasoning module to resolve natural language queries and generate counterfactual explanations. During the numerical simulations using synthetic datasets, we study the performance of our system when using different fuzzy operators and similarity functions. Towards the end, we illustrate how our reasoning module works using different use cases.
Original languageEnglish
Pages (from-to)1-65
Number of pages65
Publication statusPublished - 23 Dec 2021


  • Explainable Artificial Intelligence
  • Counterfactual Explanations
  • Symbolic Reasoning
  • Fuzzy clustering
  • Fuzzy-rough Sets


Dive into the research topics of 'Prolog-based agnostic explanation module for structured pattern classification'. Together they form a unique fingerprint.

Cite this