<!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>Team voyTECH: User Activity Modeling with Boosting Trees</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Immanuel Bayer</string-name>
          <email>immanuel.bayer@palaimon.io</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anastasios Zouzias</string-name>
          <email>anastasios.zouzias@huawei.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Huawei Technologies Zurich Research Center</institution>
          <country country="CH">Switzerland</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Palaimon GmbH Berlin, Germany https://palaimon.io</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>This paper describes our winning solution for the ECMLPKDD ChAT Discovery Challenge 2020. We show that whether or not a Twitch user has subscribed to a channel can be well predicted by modeling user activity with boosting trees. We introduce the connection between target-encodings and boosting trees in the context of high cardinality categoricals and find that modeling user activity is more powerful then direct modeling of content when encoded properly and combined with a gradient boosting optimization approach.</p>
      </abstract>
      <kwd-group>
        <kwd>competition</kwd>
        <kwd>boosting</kwd>
        <kwd>high cardinality categoricals</kwd>
        <kwd>targetencodings</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        The task of the ECML-PKDD ChAT Discovery Challenge 2020 [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] is to predict
whether or not a Twitch user has subscribed to a channel (binary classification
task) given the list of messages he has posted on this and other channels.
      </p>
      <p>The dataset consists of more than 400 million public Twitch comments taken
from English channels that are published during the month of January 2020
along with metadata. The training data consists of over 29 million and the test
dataset of 90,000 channel-user combinations and their comments. In more detail,
each input training sample consists of the channel-id, the user-id, and a list of
time-stamped comments from this user, including the specific game played in
this channel at this particular time.</p>
      <p>Copyright ©c 2020 for this paper by its authors. Use permitted under Creative
Commons License Attribution 4.0 International (CC BY 4.0).</p>
    </sec>
    <sec id="sec-2">
      <title>Competition Challenges</title>
      <p>
        The ChAT competition presents two peculiarities. The first challenge is that
only half of the users in the test set have no history which requires special
attention when extracting users and channels features. This challenge draws
similarities with the cold start problem in recommendation systems [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. The
second challenge is related to the sampling distribution of the test set
(leaderboard). More precisely, the entire spectrum of user/channel activity levels (low,
normal, high) is weighted equally across all groups which is vastly different than
their frequencies in the training set (see Table 1). Namely, for each out of 9
combinations of user activity levels (low, normal, high) and channel activity
levels (low, normal, high), 10,000 channel-user pairs are sampled uniformly (i.e.,
one channel-user activity group is where the user is of low activity and the
channel is of normal activity). Hence, in total 90,000 test samples are generated.
In Table 1, we outline statistics of the dataset within the activity groups.
– The detailed presentation of the winning solution of the Discovery Challenge
2020 including training and evaluation setup.
– Introduction of the connection between target encodings and boosting trees
in the context of high cardinality categoricals.
– Additional experiments on the competition dataset that examine the critical
modeling decisions of our solution.
      </p>
    </sec>
    <sec id="sec-3">
      <title>User Activity Modeling</title>
      <p>subscribes
Team voyTECH: User Activity Modeling with Boosting Trees
user
Our approach is based on the assumption that
modeling user activity is more important than plays
specific content (e.g. message text). User ac- /watches hosts
tivity is modeled as interactions between the
user and key objects of the system she
interacts with (e.g. channels and games). game</p>
      <p>
        This approach naturally leads to a high
dimensional categorical feature/variable rep- Fig. 1. Interactions
resentation that has been well studied in the
context of recommender systems, click-through-rate predictions and similar
industrial applications. It is also closely related to the concept of graph-based
relational features [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>Our experimental results (Section 3) indicate that the interactions illustrated
in Figure 1 together with features describing the quantity of user activity (e.g.
days active, number of frequently used channels) have strong predictive power.
Introducing game-id as a high level object is especially important for the 50% test
set user without history (cold-start). For a cold-start user, their most frequent
game-id can effectively proxy their user-id (more details in Section 3.1). Before
presenting details of our solution (Section 3.3), we first introduce the concept
of target encoding to motivate our choice to combine high dimensional feature
representations with boosting tree models.
2</p>
      <p>
        High Cardinality Categoricals and Boosting Trees
In this section, we discuss in detail the interaction between (high cardinality)
categoricals, mean target encodings and boosting trees which is at the core of
our winning solution in form of the popular CatBoost library that we used to
implement our models [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        Several user and channel categorical features are present in the dataset such
as which game has been played and activity levels for user, games, and channels.
By computing the interaction features between user and channel representations,
several categoricals with high cardinality are extracted. Due to their sparsity,
such high cardinality categoricals pose several challenges in modeling and, in
general, can lead to poor generalization performance. A popular class of models
to handle such a semi-structured datasets containing high cardinality categoricals
are Gradient Boosting Trees [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and in particular the CatBoost library. The
winning solution is based on a single CatBoost model. Model ensembles are
likely to further improve our results, but were skipped due to time restrictions.
2.1
      </p>
    </sec>
    <sec id="sec-4">
      <title>Categorical Encodings in Models</title>
      <p>The handling of categorical features usually happens during the feature
engineering phase, where the modeler has the freedom to arbitrarily transform or
extract the input features before those are fed into a model. However, models
exist that can handle categorical features automatically, i.e., the modeler simply
specifies the features that should be handled as categoricals without any
further pre-processing required. The user of such models is only able to adjust the
predefined categorical encoding process with input through hyper-parameters.
For example, hyper-parameters for categorical features include ‘perform
one-hotencoding if cardinality of any categorical is less than a threshold‘, ‘perform hash
encoding with specified number of hashing dimensions‘ to name a few.</p>
      <p>
        Here, we summarize a few recently proposed models that handle categorical
features as part of the model definition. Two gradient boosting tree
implementations, Microsoft’s LightGBM [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] and Yandex’s CatBoost [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], allow the user
to specify which features should be handled as categoricals by the models. The
h2o.ai implementation of Random Forests handles categoricals out of the box.
Neural networks can provide an embedding layer to handle categoricals as an
additional layer of a neural network, see Keras embedding layer or the so-called
‘entity embeddings‘ [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. LightGBM splits a categorical feature by partitioning
its categories into 2 subsets. If the categorical feature has k levels, there are
2(k−1) − 1 possible partitions. However, there is an efficient O(k log(k)) time
solution for regression trees [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The basic idea is to sort the categories according
to the training objective at each split.
      </p>
      <p>
        CatBoost is a gradient boosting tree implementation that applies a
regularized mean target encoding on the top-level tree split as a preprocessing step. Such
preprocessing could be considered sub-optimal, at least for the case of trees with
large depth [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Although the CatBoost approach might result in sub-optimal
greedy binary splits, CatBoost requires less operations per tree split and offers
a very efficient and optimized implementation. The efficiency if based on the
property that regularized mean target encoding values are computed only once
compared to the optimal greedy approach where the mean target encodings have
to be maintained or computed on every tree split.
      </p>
      <p>In the following section, we provide more background on the fundamentals
of CatBoost and, in particular, its connection to mean target encodings since
mean target encodings are the core design principle behind CatBoost.
2.2</p>
    </sec>
    <sec id="sec-5">
      <title>Target Encodings</title>
      <p>In this section, we setup the framework of feature extraction from categoricals
that is usually called target encodings from machine learning practitioners.</p>
      <p>We denote m samples with n features by a m × n design matrix X with
column coefficients that are either numericals (in R) or categoricals4. In other
words, the j-th column of X is in Rm or Cjm for a set of elements of categoricals Cj .
Moreover, we denote by Xj the j-th column of X and by [n] the set {1, 2, . . . , n}.
In addition, we denote by y the m-dimensional target vector. The mean value
4 Throughout this paper, a feature is an input variable/predictor that is used for
prediction. A categorical feature (or categorical) is a feature with a domain that is a
fixed set without an explicit ordering. The elements of a categorical are referred as
levels. For example, postal code, favorite color, city or country of a specific individual
are examples of categoricals.
of y, also referred to as mean target value, is denoted by µ. The tuple (X, y)
contains all relevant information for a prediction task and we call such a tuple
design matrix pair or for simplicity, design matrix.</p>
      <p>We focus on the typical binary classification task, i.e., assuming an input
target vector y ∈ {0, 1}m. The analysis can be extended directly to the regression
task. Now we are ready to define target encodings.</p>
      <p>Definition 1 (Target Encodings). Given (X, y) and an integer j ∈ [n] so that
the j-th column of X is categorical, it follows that target encoding is a function
f(Xj,y) : Cj → R.</p>
      <p>From now on, we write f instead of f(Xj,y) for notation convenience. It is
important to note that we allow f to depend on the input dataset. Moreover, we say
that f is defined (or fitted) on (X, y) to explicitly specify the input data used
on the definition of f .</p>
      <p>A very common example of target encoding is the mean target encoding. That
is, assume that the j-th column of X is a categorical containing values/levels in
Cj = {L1, L2, . . . , Lk}. The mean target encoding µj of the j-th column is defined
as follows: µj support on Cj and for any L ∈ Cj ,
µj (L) =
1 m</p>
      <p>! yi Xi,j=L
N i=1
(1)
where N equals to the number of occurrences of L in the j-th column of X and
pred is the indicator function, i.e., equals to 1 if pred is true, otherwise equals
to zero. In words, mean target encodings are roughly defined as the mean target
value of any level of the categorical (group).</p>
      <p>In general, any property of the target values distribution of the group can be
also extracted. For example, ML practitioners frequently use the minimum,
maximum, standard deviation, kurtosis, percentiles of the target values in addition
to the mean value. The main idea is to extract as much statistical information
of the target distribution of the group as possible.</p>
      <p>
        Regularization of Target Encodings. By definition, target encodings
introduce target leakage and could lead to poor generalization performance, hence,
target encoding regularization must always be used [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In this section, we outline
several regularization methods of target encodings.
      </p>
      <p>
        Extra caution on regularization should be given in the presence of high
cardinality categoricals, i.e., categoricals with a large number of distinct levels as
present in this competition. In fact, it is relatively easy to construct an
example where the naive application of target encodings leads to severe overfitting.
In order to exemplify this behavior, a minimal example is constructed by the
authors of the ‘vtreat‘ package [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. CatBoost provides an implementation that
handles these issues automatically, however, it is important for the modeler to
better understand the general approaches that we outline next.
Smoothing / Empirical Bayes / Shrinkage of Mean Target Encoding. In the
presence of high-cardinality categoricals, it is quite often the case that
individual categorical levels appear only in a small number of samples. In such a
scenario, the estimate of the mean target encoding doesn’t generalize well due
to the small number of samples used to calculate the statistics. Here, smoothing
or shrinkage can be applied which have a similar effect as empirical Bayesian
(EB) approaches [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Indeed, Empirical Bayesian conditional probabilities of a
categorical can be understood as mean target encodings [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>In our notation, the EB regularized version of the mean target encoding is
defined as
µjEB(L) := λ(N )µj (L) + (1 − λ(N ))µ
(2)
where N equals to the number of occurrences of L in the j-th column of X
and λ(n) is a monotonically increasing function on n bounded between 0 and
1
1. A common choice of practitioners for λ is λ(n) = 1+exp(−((n−l)/σ) which
is a s-shaped function with a value of 0.5 for n = l and σ representing the
steepness [13, Equation 4]. Thus, Equation 2 is a smoothed version of the mean
target encoding.</p>
      <p>
        Bootstrapping / rolling mean. Bootstrapping is another approach to regularized
target encodings. A specific instance of bootstrapping and target encodings is
implemented in CatBoost [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>CatBoost uses a bootstrapping rolling mean approach to reduce overfitting
while utilizing the whole training dataset for estimating the target encodings. In
a nutshell, CatBoost performs a random permutation on the rows of X and for the
i-th row of X (with respect to the random permutation) the mean target encoding
is computed using only the rows up to the (i−1)-row. Namely, CatBoost averages
several independent random permutations and, moreover, adds a shrinkage prior
to the global mean.</p>
      <p>To sum up, CatBoost performs categorical encoding for a level L ∈ Cj as
follows. For the i-th row and a fixed permutation of the rows, CatBoost computes
µjCat(L, i) := λµj "L; (X1:(i−1),j , y1:(i−1)# + (1 − λ)µ
where µ is the mean target value and λ is a smoothing hyper-parameter.
3</p>
      <sec id="sec-5-1">
        <title>Winning Model and Additional Experiments</title>
        <p>In this section, we describe the winning solution in more detail and present
additional experimental results that better explain the critical choices made to
achieve our result.
3.1</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Feature Engineering</title>
      <p>We have extracted a range of features from the message log representing the
training data. The following features focus on different aspects of the data
(time/activity, message, game).
1. t_min:day of first message 8. m_med:medium number of
charac2. t_max:day of last message ter per message
3. t_days:number of days with mes- 9. g_n_mes:total number of messages
sages 10. g_n:number of games
4. t_dur: t_max - t_min
5. t_active:t_days / t_dur 11. g_top:game with most messages
6. m_total: total number of charac- 12. g_chat:number of messages for
ters for all messages game just chatting
7. m_max:max number of character 13. g_top_freq: fraction of messages
per message for g_top</p>
      <p>All features have been computed as user- and channel-features. This can be
done efficiently by aggregating the messages on either the user or channel id.
Features such as the number of days between the first and last message (t dur)
are computed for individual channel-user combinations.</p>
      <p>In addition the following features have been added:
1. uid:user id
2. n_channel:number of channels per</p>
      <p>user
3. u_group[low, normal, high]: user
activity
4. cid:channel id
5. n_user:number of user per
chan</p>
      <p>nel
6. c_group[low, normal, high]:
channel activity</p>
      <p>We show in Section 3.3 that only a small subset of all features is needed to
achieve competitive performance.</p>
      <p>(a) Top features (train)
(b) Top features (test)
3.2</p>
    </sec>
    <sec id="sec-7">
      <title>Best Performing Model</title>
      <p>Model definition. The model is based on the CatBoost library version 0.23.1.
The loss function is set to be logistic loss, also known as cross-entropy loss.
Training of the model is stopped early based on the performance on our custom
validation set using the autostop capabilities of CatBoost (‘od type‘ set to ”Iter”
and ‘od wait‘ set to 20). The best model is selected automatically by setting
use best model=True.</p>
      <p>The top performing submission is a single CatBoost model trained with
the following hyper-parameters: ’l2 leaf reg’: 64, ’learning rate’: 0.08,
’threshold’: 0.167, ’depth’: 9, ’random strength’: 0.5, ’max ctr complexity’: 2. These
parameters have been manually selected on our constructed test set.
Cross validation Setup. Training and testing data come from a vastly different
distribution, hence, a careful cross validation setup was crucial for model training
and hyper-parameter tuning. It is given from the competition description that
half of the users in the test set have no history and user-channel interactions
are sampled uniformly from low, normal, and high activity levels. Therefore, our
goal is to construct a validation set with similar properties. The validation set is
constructed as follows: we sample in total 45,000 channel-user pairs (5,000 pairs
per activity level pair group), ensuring that these pairs do not appear in the
training set. These 45,000 channel-pairs are then duplicated in the validation set
by modifying the user-id with an unknown identifier not present in the training
set.The training dataset is sub-sampled with a ‘max per group‘ parameter that
restricts the number of samples per channel-user group.
3.3</p>
    </sec>
    <sec id="sec-8">
      <title>Additional Experiments</title>
      <p>
        We find that we can achieve strong performance (Table 3) even with a very small
subset of features (’uid’, ’cid’, ’t days’, ’g top’, ’g top c’, ’n user’, ’n channel’,
’m med’, ’m max’, ’t min’) selected by using CatBoot’s feature importance
(Figure 2). The sub-sampling of the training data decreases the model performance
(Figure 3) and the interaction between features (max ctr compl ≥ 2) is
important. However, the memory and run-time requirements increase dramatically
when max ctr compl &gt; 2. We therefore had to trade higher interactions against
more training samples, which were more critical for performance.
(a) Leaderboard Model
(b) Best Features Model
In this work we showed that modeling user activity is more powerful than
direct modeling of content when encoded properly and combined with a suitable
optimization approach. We also introduced the connection between target
encodings and boosting trees in the context of high cardinality categoricals and
highlighted differences in the two popular boosting tree implementations
CatBoost and LightGBM. We plan to conduct further experiments that compare
Boosting Trees to Factorization Machines [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], a model that has been used
successfully to model user activity in an earlier Discovery Challenge [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <sec id="sec-8-1">
        <title>Acknowledgement</title>
        <p>We would like to thank the organizers for the interesting competition and their
support with the TIRA platform. From Palaimon we want to thank Phoebe Kuhn
for her help with the manuscript and Alexander Pisarenko for his relentless work
to provide us with a reliable and scalable infrastructure.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bayer</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nagel</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rendle</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Graph based relational features for collective classification</article-title>
          .
          <source>In: Pacific-Asia Conference on Knowledge Discovery and Data Mining</source>
          . pp.
          <fpage>447</fpage>
          -
          <lpage>458</lpage>
          . Springer (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bayer</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rendle</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Factor models for recommending given names</article-title>
          .
          <source>ECML PKDD Discovery</source>
          Challenge p.
          <volume>81</volume>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Breiman</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Friedman</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stone</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olshen</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          : Classification and
          <string-name>
            <given-names>Regression</given-names>
            <surname>Trees</surname>
          </string-name>
          .
          <source>The Wadsworth and Brooks-Cole statistics-probability series</source>
          , Taylor &amp; Francis (
          <year>1984</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Dorogush</surname>
            ,
            <given-names>A.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ershov</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gulin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Catboost: gradient boosting with categorical features support</article-title>
          .
          <source>In: Workshop on ML Systems at NIPS</source>
          <year>2017</year>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. Fisher, W.D.:
          <article-title>On grouping for maximum homogeneity</article-title>
          .
          <source>Journal of the American Statistical Association</source>
          <volume>53</volume>
          (
          <issue>284</issue>
          ),
          <fpage>789</fpage>
          -
          <lpage>798</lpage>
          (
          <year>1958</year>
          ). https://doi.org/10.1080/01621459.
          <year>1958</year>
          .10501479
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Gelman</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carlin</surname>
            ,
            <given-names>J.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stern</surname>
            ,
            <given-names>H.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rubin</surname>
            ,
            <given-names>D.B.</given-names>
          </string-name>
          :
          <article-title>Bayesian Data Analysis</article-title>
          . Chapman and Hall/CRC, 2nd edn. (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Guo</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Berkhahn</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Entity embeddings of categorical variables</article-title>
          .
          <source>CoRR abs/1604</source>
          .06737 (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Hastie</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tibshirani</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Friedman</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          :
          <source>The Elements of Statistical Learning: Data Mining, Inference, and Prediction</source>
          . Springer series in statistics, Springer (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Kaufman</surname>
          </string-name>
          , S.,
          <string-name>
            <surname>Rosset</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perlich</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Leakage in data mining: Formulation, detection, and avoidance</article-title>
          .
          <source>In: Proceedings of the 17th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD)</source>
          . pp.
          <fpage>556</fpage>
          -
          <lpage>563</lpage>
          . ACM (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Ke</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meng</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Finley</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          , Ma,
          <string-name>
            <given-names>W.</given-names>
            ,
            <surname>Ye</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            ,
            <surname>Liu</surname>
          </string-name>
          , T.Y.:
          <article-title>Lightgbm: A highly efficient gradient boosting decision tree</article-title>
          .
          <source>In: Neural Information Processing Systems (NIPS)</source>
          , pp.
          <fpage>3146</fpage>
          -
          <lpage>3154</lpage>
          . Curran Associates, Inc. (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Kobs</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Potthast</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wiegmann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zehe</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stein</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hotho</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Towards predicting the subscription status of twitch.tv users - ecml-pkdd chat discovery challenge 2020</article-title>
          .
          <article-title>Proceedings of ECML-PKDD 2020 ChAT Discovery Challenge (</article-title>
          <year>2020</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Lam</surname>
            ,
            <given-names>X.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vu</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Le</surname>
          </string-name>
          , T.D.,
          <string-name>
            <surname>Duong</surname>
            ,
            <given-names>A.D.</given-names>
          </string-name>
          :
          <article-title>Addressing cold-start problem in recommendation systems</article-title>
          .
          <source>In: Proceedings of the 2nd International Conference on Ubiquitous Information Management and Communication</source>
          . p.
          <fpage>208211</fpage>
          . ICUIMC 08,
          <string-name>
            <surname>ACM</surname>
          </string-name>
          (
          <year>2008</year>
          ). https://doi.org/10.1145/1352793.1352837
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Micci-Barreca</surname>
            ,
            <given-names>D.:</given-names>
          </string-name>
          <article-title>A preprocessing scheme for high-cardinality categorical attributes in classification and prediction problems</article-title>
          .
          <source>SIGKDD Explor. Newsl</source>
          .
          <volume>3</volume>
          (
          <issue>1</issue>
          ),
          <fpage>27</fpage>
          -
          <lpage>32</lpage>
          (
          <year>Jul 2001</year>
          ). https://doi.org/10.1145/507533.507538
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Rendle</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Factorization machines</article-title>
          .
          <source>In: 2010 IEEE International Conference on Data Mining</source>
          . pp.
          <fpage>995</fpage>
          -
          <lpage>1000</lpage>
          . IEEE (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Zumel</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mount</surname>
          </string-name>
          , J.:
          <article-title>vtreat: a data.frame processor for predictive modeling</article-title>
          .
          <source>CoRR abs/1706</source>
          .09516 (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>