<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Explanation Groves - Controlling the Trade-of between the Degree of Explanation vs. its Complexity</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Gero Szepannek</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Stralsund University of Applied Sciences</institution>
          ,
          <addr-line>Zur Schwedenschanze 15, 18435 Stralsund</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Regulatory requirements, such as the recently published EU AI Act, emphasize the need to explain machine learning models. Nonetheless, the limits of any given explanation have to be taken into account. From Psychology research it is known, that the human working memory capacity is limited. For this reason, any explanation must not be too complex. In this work, explanation groves are presented as a model agnostic tool to control the complexity of an explanation while simultanously maximizing the obtained degree of explanation. Explanation groves do result, if the degree of explanation is maximized over the search space of all sets of if-then rules of prespecified size. A user-friendly implementation of explanation groves is given in the R package xgrove. Its use is demonstrated for a random forest model trained on the Boston housing data. Explanation groves not only provide an easily understandable explanation but can be further used to analyze the trade-of between the obtained degree of explanation and its corresponding complexity.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Model Agnostic XAI</kwd>
        <kwd>Rule-based Explanations</kwd>
        <kwd>Surrogate Models</kwd>
        <kwd>Working Memory Capacity</kwd>
        <kwd>Gradient Boosting</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>not only provide an easily understandable explanation but can be further used to analyze the trade-of
between the obtained degree of explanation and its corresponding complexity.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Explanation Groves</title>
      <sec id="sec-2-1">
        <title>2.1. Measuring Explainability</title>
        <p>
          In order to find the best explanation it has to be defined what characterizes a good explanation is. In
literature, several concepts are proposed to analyze this (cf. e.g. [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]). For the purpose of this work the
metric proposed in [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] is used: An explanation () is appropriate if it is close to the model of
interest ^ () for any value of . According to [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] this can be summarized by the expected squared
diference:
and a measure to quantify the appropriateness of an explanation is given by the degree of explanation:
∫︁
() =
        </p>
        <p>(^ () − ())2  ()
ϒ = 1 −
()</p>
        <p>0
where 0 is the  based on () = , ∀ being the constant average prediction  :=
(^ ()). By construction, ϒ is similar to the 2 coeficient of determination for regression problems
and can be thus interpreted in a similar way: For a good explanation () will be close to 0
and thus the closer ϒ is to the value of one the better the explanation.</p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Finding the Best Explanation</title>
        <p>Based on the previous quantification of the appropriateness of an explanation, one can try to find the
best explanation of by stagewise maximization of ϒ. For this purpose, an iterative approach can be
used. Let</p>
        <p>
          ()()
be the explanation after the ℎ iteration,  ∈ N. The ESD from the previous section measures the
squared loss between the model’s predictions and its explanation. As in gradient boosting theory [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] a
greedy approach to minimizing the loss function is obtained by iteratively updating (− 1)() into
the direction of the steepest descent:
= −
−
(^ (), ()) ⃒⃒⃒
        </p>
        <p>() ⃒⃒ ()=(− 1)()
(^ () − ())2 ⃒⃒</p>
        <p>() ⃒⃒⃒ ()=(− 1)()
= 2(^ () − (− 1)())
= : ˜
i.e. by iteratively fitting the pseudo-residuals ˜ between model and current explanation after stage
( − 1) to the data, where  = 1, ...,  denotes the observation index. The optimal model-agnostic
rule-based explanation is then given by the sum over a set of weighted rules, which can be written as:
(1)
(2)
(3)
e
s
n
o
p
s
e
R
l
e
d
o
M</p>
        <p>
          Here, 1(∈()) denotes the indicator function that returns 1 if rule () holds for  and 0 otherwise.
() is a rule of the form  ≤  in variable  for numeric variables or  ∈  with  ⊂ |  | for
categorical variables.   is a weight that describes how the explanation changes, if rule () holds.
For this purpose, (),  + and  − can be computed simultaneously by fitting a gradient boosting
model using squared loss and decision trees of depth one (stumps) to the predictions ^ () of the model
of interest [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ].
        </p>
        <p>
          Note that the resulting optimal explanation () consists of a set of rules and corresponding
weights {((),  +,  − )} and thus represents a rule-based explanation as opposed to example-based
explanations. For a comparison of both approaches for model explanation cf. e.g. [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]. The complexity
of the resulting explanation is given by the number of rules and can be controlled by the number of
iterations .
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. Illustration</title>
        <p>be computed in order to analyze whether there is an explanation that is both easy to understand and
appropriate.</p>
        <p>
          Note that an explanation grove only denotes a surrogate model [cf. 17]. This means, it is only an
approximation which mimics the model under investigation but there is no guarantee that the identified
rules correctly describe the original model. In the example, a simple and understandable explanation
could be obtained if it would be known that the underlying function is of trigononetric type. Anyway, in
practice, the type of the underlying function is usually not known and a surrogate model can neverthless
help understanding a model’s behaviour. In that sense, one may refer to the famous quote of George
Box that ‘’all models are wrong but some are useful” [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ].
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Demonstration of the R Package xgrove</title>
      <p>
        As it has been worked out before, the proposed methodology not only allows to find a set of rules of
ifxed size that maximizes the appropriateness of the resulting explanation but, furthermore, by
comparing groves of diferent size, allows to analyze the trade-of between appropriateness and complexity.
Explanation groves are implemented in the R package xgrove which is available on CRAN [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Its
use is demonstrated to find an explanation for a random forest model that has been trained on the
Boston housing data [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. The data can be accessed via the UCI machine learning benchmark repository
[
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. The data consist of median housing values (variable cmedv) from 506 census tracts in the suburbs
of Boston and the goal is to predict the housing prices based on 15 explanatory variables such as the
crime rate (crim), the average number of rooms (rm), the percentage of persons of lower status in the
population (lstat) or the weighted distances to five Boston employment centers (dis).
      </p>
      <p>
        Initially, a random forest model is trained using the ranger implementation [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. A random forest
has been chosen as an example here, as random forests turned out to perform good in many data
situations [cf. e.g. 22]. In addition, random forests are comparatively insensitive to the choice of the
hyperparameters [
        <xref ref-type="bibr" rid="ref23 ref24 ref25">23, 24, 25</xref>
        ]. For this reason, the default hyperparameters are used.
      </p>
      <p>Note that explanation groves are model agnostic and the same code can be run for arbitrary models.
As a default, it is presumed that the call predict(model, data) returns the desired predictions ^ ()
of the model to be analyzed (here: rf). It is possibile to define user-specific predict functions as it is
done here by the function pf.</p>
      <p>
        The total number splits over all 500 trees in the forest sums up to 80331 which is, of course, far too
high to be interpretable. Instead, from Psychology research it is known that humans’ working memory
# load data
library(pdp)
data(boston)
# train model
library(ranger)
set.seed(42)
rf &lt;- ranger(cmedv ~ ., data = boston)
# define predict function, if necessary
pf &lt;- function(model, data) {
return(predict(model, data)$predictions)
}
# include library
library(xgrove)
# specify desired grove sizes
ntrees &lt;- c(4, 8, 16, 32, 64, 128)
# remove target variable from data
data &lt;- boston[, colnames(boston) != "cmedv"]
# compute groves of different size
xg &lt;- xgrove(rf, data, ntrees, pfun = pf)
# visualize achieved degree of explanation vs. complexity
plot(xg)
# print rules of the grove with at maximum eight rules
xg$rules[["8"]]
capacity is limited and restricted to a small number of items [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ].
      </p>
      <p>Finally, explanation groves are computed using the function xgrove(), which requires three
arguments: the model, the data as well as the desired number of rules (ntrees). For this example, six
groves of diferent size are computed where the number of rules is successively doubled from four to
128. The target variable should not be used for the explanation. For this reason it is removed from the
data here.1 The additional pfun argument allows to define arbitrary predict functions and only needs
to be specified if predict(model, data) does not directly return the desired predictions (cf. above).</p>
      <p>The resulting S3 object (xg) summarizes the achieved degree of explaination ϒ as well as the
corresponding number of rules for the diferent groves (cf. figure 3). In xg$groves, all groves are of
diferent size are stored as specified by the ntrees argument in the call. A similar, but more convenient
output is given by xg$rules where identical rules with no data points inbetween both splits are
aggregated. Thus, the resulting number of rules is smaller or equal than pre-specified. An example of a
resulting grove is given in table 2.</p>
      <p>Figure 3 compares the appropriateness of the explanations given by groves of diferent size. This
ifgure can be created by calling the plot() method on the output object of the xgrove() call. It can
be easily seen that the degree of explanation gets better with an increasing number of rules. A value
of ϒ ∼ 0.9 is already obtained for less than 20 rules in this case. On the other hand, if a degree of the
1This is done automatically if the model contains a terms component if the remove.target argument is specified as TRUE
(default). Alternatively, this can be done manually as it is done here.</p>
      <p>n
o
li
spu .085
explanation of at least ϒ = 0.95 is required, more than 80 rules are needed. This, in turn, will be hard
to interpret.</p>
      <p>The resulting grove is given in table 2 below for a grove of six rules. It can be easily seen, that the
predicted house prices decrease from 22.53 by 3.33 if the crime rate in a census tract is above 9.33 percent
and the model predicts slightly higher prices for more eastern census tracts (longitude &gt; − 71.04). A
comparatively strong increase of house prices is assigned to census tracts with small percentages of
persons with lower status (below 14.44 percent and even more if it is also below 4.55 percent). Finally,
also a strong efect can be seen for census tracts with a high average room number above 6.84 or even
above 7.44. Nonetheless, the degree of explanation given by these rules is only ϒ ∼ 0.836. Ideally,
there should exist a grove of few rules and a high degree of explanation (i.e. in the top left corner of the
previous graph). It is up to the user to decide whether this can be considered as suficient here, but at
least, there should be awareness about the magnitude of the gap between the degree of explanation and
the true model’s responses.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Summary</title>
      <p>Explanation groves are introduced as a model-agnostic tool to extract a set of understandable rules in
order to explain arbitrary machine learning models. An algorithm is proposed that allows to find the
best explanation by a prespecified number of rules.</p>
      <p>The proposed method is available in the R package xgrove on CRAN. It is demonstrated how groves
of diferent size can be easily computed in order to explain arbitratry machine learning models. The
results consist in an set of understandable if-then rules. By increasing the number of rules, and thus the
complexity of the explanation, the appropriateness of the resulting explanation will improve but it is
well-known that human’s working memory capacity is limited. In consequence, by creating groves
of diferent size, explanation groves allow to analyze the trade-of between the appropriateness and
the complexity of an explanation. The observed trade-of between the degree of explanation and its
complexity should be taken into account whenever explainable machine learning is applied in practice.</p>
    </sec>
    <sec id="sec-5">
      <title>Declaration on Generative AI</title>
      <p>The author has not employed any Generative AI tools.</p>
    </sec>
    <sec id="sec-6">
      <title>A. Online Resources</title>
      <p>The corresponding R package xgrove is avaliable on CRAN.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>European</given-names>
            <surname>Commission</surname>
          </string-name>
          ,
          <source>EU artificial intelligence act</source>
          , https://artificialintelligenceact.eu/the-act/,
          <year>2024</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bücker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Szepannek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Gosiewska</surname>
          </string-name>
          , P. Biecek, TAX4CS
          <article-title>- Transparency, auditability and explainability of machine learning models in credit scoring</article-title>
          ,
          <source>Journal of the Operational Research Society</source>
          (
          <year>2021</year>
          )
          <fpage>1</fpage>
          -
          <lpage>21</lpage>
          . doi:
          <volume>10</volume>
          .1080/01605682.
          <year>2021</year>
          .
          <volume>1922098</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>G.</given-names>
            <surname>Miller</surname>
          </string-name>
          ,
          <article-title>The magical number seven, plus or minus two: Some limits on our capacity for processing information</article-title>
          ,
          <source>Psychological Review</source>
          <volume>63</volume>
          (
          <year>1956</year>
          )
          <fpage>81</fpage>
          -
          <lpage>97</lpage>
          . doi:
          <volume>10</volume>
          .1037/h0043158.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>N.</given-names>
            <surname>Cowan</surname>
          </string-name>
          ,
          <article-title>The magical mystery four: How is working memory capacity limited</article-title>
          , and why?,
          <source>Curr Dir Psychol Sci</source>
          <volume>19</volume>
          (
          <year>2010</year>
          )
          <fpage>51</fpage>
          -
          <lpage>57</lpage>
          . doi:
          <volume>10</volume>
          .1177/0963721409359277.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Lou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Caruana</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gehrke</surname>
          </string-name>
          , G. Hooker,
          <article-title>Accurate intelligible models with pairwise interactions</article-title>
          ,
          <source>in: Proc. 19th ACM SIGKDD Int. Conf. on KDD, ACM</source>
          , New York, NY, USA,
          <year>2013</year>
          , p.
          <fpage>623</fpage>
          -
          <lpage>631</lpage>
          . doi:
          <volume>10</volume>
          .1145/2487575.2487579.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Banerjee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Ding</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.-M. Noone</surname>
          </string-name>
          ,
          <article-title>Identifying representative trees from ensembles</article-title>
          ,
          <source>Stat Med 31</source>
          (
          <year>2012</year>
          )
          <fpage>1601</fpage>
          -
          <lpage>16</lpage>
          . doi:
          <volume>10</volume>
          .1002/sim.4492.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>B.-H.</given-names>
            <surname>Laabs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. L.</given-names>
            <surname>Kronziel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. R.</given-names>
            <surname>König</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Szymczak</surname>
          </string-name>
          ,
          <article-title>Construction of artificial most representative trees by minimizing tree-based distance measures</article-title>
          , in: L.
          <string-name>
            <surname>Longo</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Lapuschkin</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          Seifert (Eds.),
          <source>Explainable Artificial Intelligence</source>
          , Springer Nature Switzerland, Cham,
          <year>2024</year>
          , pp.
          <fpage>290</fpage>
          -
          <lpage>310</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>G.</given-names>
            <surname>Szepannek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.-H.</given-names>
            <surname>Laabs</surname>
          </string-name>
          ,
          <article-title>Can't see the forest for the trees</article-title>
          ,
          <source>Behaviormetrika</source>
          <volume>51</volume>
          (
          <year>2024</year>
          )
          <fpage>411</fpage>
          -
          <lpage>423</lpage>
          . doi:
          <volume>10</volume>
          .1007/s41237-023-00205-2.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Esposito</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Malerba</surname>
          </string-name>
          , G. Semeraro,
          <string-name>
            <given-names>J.</given-names>
            <surname>Kay</surname>
          </string-name>
          ,
          <article-title>A comparative analysis of methods for pruning decision trees</article-title>
          ,
          <source>IEEE Trans. on Pattern Analysis and Machine Intelligence</source>
          <volume>19</volume>
          (
          <year>1997</year>
          )
          <fpage>476</fpage>
          -
          <lpage>491</lpage>
          . doi:
          <volume>10</volume>
          .1109/34.589207.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>G.</given-names>
            <surname>Szepannek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lübke</surname>
          </string-name>
          ,
          <article-title>Explaining artificial intelligence with care</article-title>
          , KI - Künstliche
          <string-name>
            <surname>Intelligenz</surname>
          </string-name>
          (
          <year>2022</year>
          ).
          <source>doi:10.1007/s13218-022-00764-8.</source>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>G.</given-names>
            <surname>Szepannek</surname>
          </string-name>
          , xgrove: Explanation groves -
          <source>R package version 0</source>
          .
          <fpage>1</fpage>
          -
          <lpage>15</lpage>
          ,
          <year>2025</year>
          . URL: https://CRAN. R-project.org/package=xgrove.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>D.</given-names>
            <surname>Alvarez-Melis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. S.</given-names>
            <surname>Jaakkola</surname>
          </string-name>
          ,
          <article-title>Towards robust interpretability with self-explaining neural networks</article-title>
          ,
          <source>in: Proceedings of the 32nd International Conference on Neural Information Processing Systems</source>
          , NIPS'18, Curran Associates Inc.,
          <string-name>
            <surname>Red</surname>
            <given-names>Hook</given-names>
          </string-name>
          ,
          <string-name>
            <surname>NY</surname>
          </string-name>
          , USA,
          <year>2018</year>
          , p.
          <fpage>7786</fpage>
          -
          <lpage>7795</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>G.</given-names>
            <surname>Szepannek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lübke</surname>
          </string-name>
          ,
          <article-title>How much do we see? on the explainability of partial dependence plots for credit risk scoring</article-title>
          ,
          <source>Argumenta Oeconomica</source>
          <volume>50</volume>
          (
          <year>2023</year>
          ). doi:
          <volume>10</volume>
          .15611/aoe.
          <year>2023</year>
          .
          <volume>1</volume>
          .07.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>J.</given-names>
            <surname>Friedman</surname>
          </string-name>
          ,
          <article-title>Greedy function approximation: A gradient boosting machine</article-title>
          ,
          <source>Annals of Statistics</source>
          <volume>29</volume>
          (
          <year>2001</year>
          )
          <fpage>1189</fpage>
          -
          <lpage>1232</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>G.</given-names>
            <surname>Ridgeway</surname>
          </string-name>
          ,
          <article-title>Generalized boosted models: A guide to the gbm package</article-title>
          ,
          <year>2024</year>
          . URL: https: //cran.r-project.org/web/packages/gbm/vignettes/gbm.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>J. van der</given-names>
            <surname>Waa</surname>
          </string-name>
          , E. Nieuwburg,
          <string-name>
            <given-names>A.</given-names>
            <surname>Cremers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Neerincx</surname>
          </string-name>
          ,
          <article-title>Evaluating xai: A comparison of rulebased and example-based explanations</article-title>
          ,
          <source>Artificial Intelligence</source>
          <volume>291</volume>
          (
          <year>2021</year>
          ). doi:
          <volume>10</volume>
          .1016/j.artint.
          <year>2020</year>
          .
          <volume>103404</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>C.</given-names>
            <surname>Molnar</surname>
          </string-name>
          ,
          <source>Interpretable Machine Learning</source>
          ,
          <volume>2</volume>
          <fpage>ed</fpage>
          .,
          <year>2022</year>
          . URL: https://christophm.github.
          <article-title>io/ interpretable-ml-book.</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>G.</given-names>
            <surname>Box</surname>
          </string-name>
          ,
          <article-title>Robustness in the strategy of scientific model building</article-title>
          , Academic Press,
          <year>1979</year>
          , pp.
          <fpage>201</fpage>
          -
          <lpage>246</lpage>
          . doi:
          <volume>10</volume>
          .1016/B978-0
          <source>-12-438150-6</source>
          .
          <fpage>50018</fpage>
          -
          <lpage>2</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>D.</given-names>
            <surname>Harrison</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Rubinfeld</surname>
          </string-name>
          ,
          <article-title>Hedonic prices and the demand for clean air</article-title>
          ,
          <source>J. of Environmental Economics and Managemen</source>
          <volume>5</volume>
          (
          <year>1978</year>
          )
          <fpage>81</fpage>
          -
          <lpage>102</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>D.</given-names>
            <surname>Dua</surname>
          </string-name>
          ,
          <string-name>
            <surname>C. Graf,</surname>
          </string-name>
          <article-title>UCI machine learning repository</article-title>
          ,
          <year>2017</year>
          . URL: "http://archive.ics.uci.
          <source>edu/ml".</source>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>M. N.</given-names>
            <surname>Wright</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          <article-title>Ziegler, ranger: A fast implementation of random forests for high dimensional data in C++</article-title>
          and
          <string-name>
            <surname>R</surname>
          </string-name>
          ,
          <source>Journal of Statistical Software</source>
          <volume>77</volume>
          (
          <year>2017</year>
          )
          <fpage>1</fpage>
          -
          <lpage>17</lpage>
          . doi:
          <volume>10</volume>
          .18637/jss.v077.
          <year>i01</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>M.</given-names>
            <surname>Fernández-Delgado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Cernadas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Barro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Amorim</surname>
          </string-name>
          ,
          <article-title>Do we need hundreds of classifiers to solve real world classification problems?</article-title>
          ,
          <source>J. Mach. Learn. Res</source>
          .
          <volume>15</volume>
          (
          <year>2014</year>
          )
          <fpage>3133</fpage>
          -
          <lpage>3181</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>P.</given-names>
            <surname>Probst</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.-L.</given-names>
            <surname>Boulesteix</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Bischl</surname>
          </string-name>
          ,
          <article-title>Tunability: Importance of hyperparameters of machine learning algorithms</article-title>
          ,
          <source>J. Mach. Learn. Res</source>
          .
          <volume>20</volume>
          (
          <year>2021</year>
          )
          <fpage>1934</fpage>
          -
          <lpage>1965</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>G.</given-names>
            <surname>Szepannek</surname>
          </string-name>
          ,
          <article-title>On the practical relevance of modern machine learning algorithms for credit scoring applications</article-title>
          ,
          <source>WIAS Report Series</source>
          <volume>29</volume>
          (
          <year>2017</year>
          )
          <fpage>88</fpage>
          -
          <lpage>96</lpage>
          . doi:
          <volume>10</volume>
          .20347/wias.report.29.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>B.</given-names>
            <surname>Bischl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Binder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Pielok</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Richter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Coors</surname>
          </string-name>
          , J. Thomas,
          <string-name>
            <given-names>T.</given-names>
            <surname>Ullmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Becker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.-L.</given-names>
            <surname>Boulesteix</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Deng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lindauer</surname>
          </string-name>
          , Hyperparameter optimization: Foundations, algorithms, best practices, and open challenges,
          <source>WIREs Data. Mining. Knowl. Discov</source>
          .
          <volume>13</volume>
          (
          <year>2023</year>
          ). doi:
          <volume>10</volume>
          .1002/ widm.1484.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>