<!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>Experimental Assessment of a Threshold Selection Algorithm for Tuning Classi ers in the Field of Hierarchical Text Categorization</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Andrea Addis</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giuliano Armano</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Eloisa Vargiu</string-name>
          <email>vargiug@diee.unica.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Electrical and Electronic Engineering University of Cagliari Piazza d'Armi</institution>
          ,
          <addr-line>Cagliari</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>1995</year>
      </pub-date>
      <abstract>
        <p>Text Categorization is the task of assigning prede ned categories to text documents. It can provide conceptual views of document collections and has many important applications in the real world. Nowadays, most of the research on text categorization has focused on mapping text documents to a set of categories among which structural relationships hold. Without loss of generality, let us assume that a classi er entrusted with recognizing documents of a given category outputs a degree of membership, usually a value in [0,1]. The behavior of any such classi er typically depends on an acceptance threshold, which turns the degree of membership into a dichotomous decision. In principle, the problem of nding the best acceptance thresholds for a set of classi ers related by taxonomic relationships is a di cult problem. Hence, any proposal aimed at nding suboptimal solutions to this problem may have great importance, especially in the eld of hierarchical text categorization. In this paper, we make an experimental assessment of a greedy threshold selection algorithm aimed at nding a suboptimal combination of thresholds in a hierarchical text categorization setting. The quadratic complexity of the algorithm makes it easier to nd good suboptimal solutions even for large taxonomies. Experimental results, performed on Reuters data collections, show that the proposed approach is able to nd suboptimal solutions with small computational complexity.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>The new information era has widely changed our lives thanks to a great deal
of new possibilities to create content (i.e., knowledge) and share it all over
the world throughout new and widespread communication systems. Human
beings have always known the importance of organizing entities or notions
in hierarchies, according to the \divide et impera" paradigm. In the last few
decades, with the advent of modern information systems, this concept has
been widely employed to partition items and concepts into smaller parts,
each being e ectively and e ciently managed. The contribution of this
approach is particularly evident in the Web 2.0, where the main and most
crucial knowledge bases exploit it in order to organize large collections of
web pages1, articles2 or emails3 in hierarchies of topics. This organization
allows to focus on a speci c level of details ignoring specialization at lower
levels and generalization at upper levels. In this scenario, the main goal
of automatic categorization systems is to deal with reference taxonomies
in an e ective and e cient way {the corresponding research sub eld being
Hierarchical Text Categorization (HTC).</p>
      <p>
        Nowadays there is a great amount of contributions in HTC focusing, in
particular, on how to build training sets, selecting features, and learning
methods. In our opinion, a further important issue is concerned with the
fact that, in real-world scenarios, data is typically characterized by
imbalance. In fact, relevant and irrelevant documents (i.e., positive and negative
examples, respectively) are typically imbalanced, turning classi ers trained
with the same percent of positive and negative examples into inadequate
tools. According to [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], a hierarchical approach can give bene ts to the
systems involved with the above scenarios.
      </p>
      <p>Without loss of generality, let us assume that a classi er for a category
ci 2 C usually consists of a function CSVi : D ! [0; 1]. Given a document
dj , CSVi(dj ) returns a categorization status value for it that represents the
evidence for the fact dj 2 ci. The behavior of ci depends on an acceptance
threshold i, such that CSVi(dj ) i is interpreted as dj 2 ci, and
conversely CSVi(dj ) &lt; i is interpreted as dj 2= ci. In HTC, this is transposed
into a multidimensional space, i.e., the de nition of a vector of thresholds .</p>
      <p>
        In principle, how to nd the best acceptance thresholds for a set of
classi ers related by taxonomic relationships is a di cult problem. As for TC,
there are various policies for determining the acceptance threshold, the most
important distinction being whether it is analytically or experimentally
derived [
        <xref ref-type="bibr" rid="ref10">11</xref>
        ]. The former approach is possible only in presence of a theoretical
result that indicates how to compute the threshold that maximizes the
expected value of an e ectiveness function [10]. The latter consists of testing
di erent values for the acceptance threshold on a validation set and choosing
the value which maximizes e ectiveness [
        <xref ref-type="bibr" rid="ref11">12</xref>
        ]. As for HTC, let us recall here
the threshold selection algorithms proposed in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        In this paper, we perform an experimental assessment of a greedy
threshold selection algorithm aimed at nding a suboptimal combination of
thresholds in the context of Progressive Filtering (PF), the hierarchical text
categorization setting proposed in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Experimental results, performed on Reuters
data collections, show that the proposed approach is able to nd suboptimal
1see e.g., Google Directory (http://www.google.com/dirhp) and the DMOZ project
(http://www.dmoz.org)
      </p>
      <p>
        2see e.g., Wikipedia (http://www.wikipedia.org) and Reuters
(http://www.reuters.com/)
3see e.g., Thunderbird 3 (http://www.mozillamessaging.com/thunderbird/)
solutions while maintaining a quadratic complexity, which makes it easier
to nd good suboptimal solutions even for large taxonomies [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>The rest of the paper is organized as follows: in section 2, we brie y
recall the PF approach. In section 3 we describe TSA, putting into evidence
the theoretical background that allowed to build the algorithm and its
computational bene ts. Experiments and results are illustrated in section 4.
Conclusions discussed in section 5 end the paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Progressive Filtering</title>
      <p>A way to implement Progressive Filtering (PF) consists of unfolding the
given taxonomy into pipelines of classi ers, as depicted in Figure 1. Each
node of the pipeline is a binary classi er able to recognize whether or not
an input belongs to the corresponding class (i.e., to the corresponding node
of the taxonomy).</p>
      <p>In principle, PF could be applied to classify any kind of item: images,
audios, videos, textual documents, and so on. In this paper we are interested
in using PF for hierarchical text categorization, so that textual documents
(documents for short hereinafter) have been considered.</p>
      <p>Given a taxonomy, where each node represents a classi er entrusted with
recognizing all corresponding positive inputs (i.e., interesting documents),
each input traverses the taxonomy as a \token", starting from the root. If
the current classi er recognizes the token as positive, it passes it on to all
its children (if any), and so on. A typical result consists of activating one or
more branches within the taxonomy, in which the corresponding classi ers
have been activated by the given token. Let us note that partitioning the
taxonomy in pipelines gives rise to a set of new classi ers, each represented
by a pipeline. For instance, the taxonomy depicted in Figure 1 gives rise to
six corresponding pipelines.</p>
    </sec>
    <sec id="sec-3">
      <title>The Proposed Threshold Selection Algorithm</title>
      <sec id="sec-3-1">
        <title>Motivations</title>
        <p>As we know from classical text categorization, given a set of documents D
and a set of labels C, a function CSVi : D ! [0; 1] exists for each ci 2 C.
The behavior of ci is controlled by a threshold i, responsible for relaxing or
restricting the acceptance rate of the corresponding classi er. Let us recall
that, given d 2 D, CSVi(d) i is interpreted as a decision to categorize d
under ci, whereas CSVi(d) &lt; i is interpreted as a decision not to categorize
d under ci.</p>
        <p>In PF, let us still assume that CSVi exists with the same semantics
adopted in the classical case. Considering a pipeline , composed by n
classi ers, the acceptance policy strictly depends on the vector of thresholds
= h 1; 2; ; ni that embodies the thresholds of all classi ers in . In
order to categorize d under , the following constraint must be satis ed:
for k = 1::n, CSVi(d) k. On the contrary, d is not categorized under
ci in the event that a classi er in rejects it. In so doing, a classi er may
have di erent behaviors, depending on which pipeline it is embedded. As a
consequence, each pipeline can be considered in isolation from the others.
For instance, given 1 = hC1; C2; C3i and 2 = hC1; C2; C4i, the classi er
C1 is not compelled to have the same threshold in 1 and in 2 (the same
holds for C2).</p>
        <p>Actually, the proposed approach performs a sort of \ attening" though
preserving the information about the hierarchical relationships embedded
in a pipeline. For instance, the pipeline hC1; C2; C3i actually represents
the classi er C3, although the information about the existing subsumption
relationships are preserved (i.e., C3 C2 C1, where \ " denotes the
usual covering).</p>
        <p>In PF, given an utility function4, we are interested in nding an e ective
(and computationally \light") way to reach a sub-optimum in the task of
determining the best vector of thresholds. To this end, for each pipeline
a sub-optimal combination of thresholds is searched for, considering the
actual ratio between positive and negative examples, which in turn depends
on the given scenario. Unfortunately, nding the best acceptance thresholds
is a di cult task. In fact, exhaustively trying each possible combination of
thresholds (brute-force approach) is unfeasible, the number of thresholds
being in nite. However, the brute-force approach can be approximated by
de ning a granularity step that requires to assess only a nite number of
points in a range [0; 1] in which the thresholds are permitted to vary with
step . This \relaxed" brute force algorithm (RBF for short) for calibrating
thresholds would be very helpful in the task of nding a sub-optimal solution,
4Di erent utility functions (e.g., precision, recall, F , user-de ned) can be adopted,
depending on the constraint imposed by the underlying scenario.
although still too heavy from a computational point of view. Thus, in this
paper we propose a novel Threshold Selection Algorithm (namely, TSA)
devised to deal with this problem, which maintains the capability of nding
a near-optimum solution characterized by a low time complexity.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>The Proposed Algorithm</title>
        <p>Utility functions typically adopted in TC, and therefore in HTC, are
nearlyconvex with respect to the acceptance threshold. In Figure 2 three typical
trends of utility functions are depicted (precision, recall, and F1).</p>
        <p>Let us note that setting the threshold of a classi er to 0, no matter which
utility function is adopted, forces the classi er to reach its maximum error
in terms of false positives (FP). On the other hand, setting the threshold to
1 forces the classi er to reach its maximum error in terms of false negatives
(FN).</p>
        <p>Due to the shape of the utility function and to its dependence on FP
and FN, it becomes feasible to search its maximum around a restricted range
(i.e., a subrange of [0; 1]) towards a de ned direction. In particular, bearing
in mind that the lower the threshold the less restrictive the classi er, we can
build a greedy bottom-up algorithm for selecting decision threshold that
relies on two functions:
repair (R), which operates on a classi er C by increasing or decreasing
its threshold {i.e., R(up; C) and, R(down; C), respectively{ until the
selected utility function reaches and maintains a local maximum.
calibrate (C), which operates going downwards from the given classi er
to its o spring by repeatedly calling R. It is intrinsically recursive and
at each step it calls R to calibrate the current classi er.</p>
        <p>Given a pipeline = hC1; C2; ; CLi, where L is its depth, TSA is then
de ned as follows (all thresholds are initially set to zero):
T SA( ) := f or k = L downto 1 do C(up; Ck)
which indicates that C is applied to each node of the pipeline, starting from
the leaf (k = L).</p>
        <p>Under the assumption that p is a structure that contains all information
about a pipeline, including the corresponding vector of thresholds and the
utility function to be optimized, the pseudo-code of TSA is:
function TSA(p:pipeline):
for k:=1 to p.length</p>
        <p>do p.thresholds[i] = 0
for k:=p.length downto 1</p>
        <p>do Calibrate(up,p,k)
return p.thresholds
end TSA
The Calibrate function is de ned as follows:
and</p>
        <p>C(up; Ck) := R(up; Ck); k = L
C(up; Ck) := R(up; Ck) + C(down; Ck+1); k &lt; L
(2)
(3)
C(down; Ck) := R(down; Ck); k = L</p>
        <p>
          C(down; Ck) := R(down; Ck) + C(up; Ck+1); k &lt; L
where the + operator actually denotes a sequence operator, meaning that
in the formula a + b action a is performed before action b. In pseudo-code:
function Calibrate(dir:{up,down}, p:pipeline, level:integer):
Repair(dir,p,level)
if level &lt; p.length then Calibrate(toggle(dir),p,level+1)
end Calibrate
where toggle is a function that reverses the current direction, and Repair is
de ned as:
function Repair(dir:{up,down}, p:pipeline, level:integer):
delta := (dir = up) ? p.delta : -p.delta
best_threshold := p.thresholds[level]
max_uf := p.utility_function()
uf := max_uf
while uf &gt;= max_uf * 0.8 and p.thresholds[level] in [
          <xref ref-type="bibr" rid="ref1">0,1</xref>
          ]
do p.thresholds[level] := p.thresholds[level] + delta
uf := p.utility_function()
if uf &lt; max_uf then continue
max_uf := uf
best_threshold := p.thresholds[level]
p.thresholds[level] := best_threshold
end Repair
        </p>
        <p>The factor 0:8 is used to limit the impact of local minimums during the
search.</p>
        <p>Once calculated the sub-optimal combination of thresholds for a given
imbalance, the pipelines are ready to be used in the corresponding
scenario. Let us note, here, that this combination depends on both the adopted
dataset and the actual input imbalance. In fact, as noted in [10], di erent
goals for the system lead to di erent optimal behaviors.
3.3</p>
      </sec>
      <sec id="sec-3-3">
        <title>Computational Complexity</title>
        <p>Searching for a sub-optimal combination of thresholds in a pipeline can be
actually viewed as the problem of nding a maximum in a utility function
F that depends on the corresponding thresholds :
= argmax F ( )
(4)</p>
        <p>Unfortunately, the above task is characterized by a high time
complexity, being actually a problem of meta-learning (i.e., a learning problem
whose instances are in fact learning problems themselves). To calculate the
computational complexity, let us de ne a granularity step that requires to
visit only a nite number of points in a range [ min; max], 0 min &lt;
max 1, in which the thresholds could vary with step . Therefore,
p = b 1 ( max min)c being the maximum number of points to be checked
for each classi er in a pipeline and L being the length of the pipeline, the
average time of TSA, T (T SA), is proportional to (L + L2) p ( max min),
which implies that TSA has complexity O(L2). Hence, the time
complexity is quadratic with the number of classi ers embedded by a pipeline. As
already noted, a comparison between TSA and the brute-force approach is
unfeasible, the generic element of the threshold vector being a real
number. Nevertheless, experimental results show that the e ectiveness of TSA
is almost identical to the one obtained by running RBF , in which only p
points are checked for each classi er in a pipeline. Note that the average
time of RBF , T (RBF ), is proportional to pL, which in turns implies that
its computational complexity is O(pL).</p>
        <p>To show the drastic complexity reduction brought by the TSA algorithm,
let us consider a pipeline composed of 4 classi ers (i.e., L = 4), and p = 100.
In this case the orders of magnitude of T (RBF ) and T (T SA) are 108 whereas
103, respectively.</p>
        <p>It is also important to note that, due to the enormous computational time
that can be reached, the RBF approach should be applied in practice only
by setting p to a value much lower than the one applicable with TSA. For
instance, with a ratio of 10 2, i.e., pRBF = 20 and pT SA = 2000, T (RBF ) /
160; 000 and T (T SA) / 20; 000. In other words, TSA is still 8 times faster
than RBF (even considering max = 1 and min = 0), while ensuring a
better result due to the higher granularity.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Experimental Results</title>
      <p>
        The Reuters Corpus Volume I (RCV1-v2) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] has been chosen as benchmark
dataset. In this corpus, stories are coded into four hierarchical groups:
Corporate/Industrial (CCAT), Economics (ECAT), Government/Social (GCAT),
and Markets (MCAT). Although the complete list consists of 126 categories,
only part of them have been used in our hierarchical approach. The total
number of codes actually assigned to the data is 93, whereas the overall
number of documents is about 803,000, each document belonging to at least
one category and, on average, to 3.8 categories. To calculate the time
complexity of TSA with respect to RBF, we selected the 24 pipelines of depth
4 that end with a leaf node.
      </p>
      <p>
        Experiments have been performed on a SUN Workstation with two Opteron
280, 2Ghz+ and 8Gb Ram. To perform experiments we customized the
X.MAS [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] architecture, a generic multiagent architecture built upon JADE
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and devised to make it easier the implementation of information
retrieval/ ltering applications.
      </p>
      <p>
        Experiments have been carried out by using classi ers based on the wk
NN technology [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], which do not require speci c training and are very robust
with respect to noisy data. As for document representation, we adopted the
bag of words approach, a typical method for representing texts in which each
word from a vocabulary corresponds to a feature and a document to a feature
vector. First, all non-informative words such as prepositions, conjunctions,
pronouns and very common verbs are disregarded by using a stop-word list.
Subsequently, the most common morphological and in exional su xes are
removed by adopting a standard stemming algorithm. After having
determined the overall sets of features, their values are computed for each
document resorting to the well-known TF-IDF method. To reduce the high
dimensionality of the feature space, we locally select the features that
represent a node by adopting the information gain method. During the training
activity, each classi er has been trained with a balanced data set of 1000
documents, characterized by 200 (TF-IDF) features selected in accordance
with their information gain.
      </p>
      <p>Experiments, performed on a balanced dataset of 2000 documents for
each class, have been focused on calculating the performance improvement
of TSA vs. RBF. A step T SA = 5 10 4 (hence, pT SA = 2 103) has been
adopted to increment thresholds in TSA; whereas a step RBF = 0:05 (hence,
pRBF = 20) has been adopted for the RBF approach5. Table 1 illustrates
the results comparing the time spent, in seconds and hours, by RBF and
TSA. Each row of the table corresponds to the time spent to perform a
calibrate step so that the last row corresponds to the total elapsed time.
The last column clearly shows that, the ratio between the time spent by the
two algorithms is approximately constant. Table 1 shows that, as expected,
TSA is faster than RBF notwithstanding the imposed granularity step. To
show that the overall performances of PF are not worsened by the adoption
of TSA vs. RBF, we performed further experiments aimed at comparing the
performance obtained by applying TSA vs. the performance obtained by
5the motivation of this choice has been discussed in the previous section
applying RBF. In particular, experiments have been performed by assessing
the behavior of PF in terms of F1 in presence of di erent ratios of positive
examples vs. negative examples {i.e., from 2 1 to 2 7. Results, summarized
in Table 2, show that the performance of TSA is always better than the one
obtained with RBF. This is due to the fact that, as previously pointed out,
TSA worked with a higher granularity (i.e., pRBF =pT SA = 20=2000 = 10 2).</p>
      <p>Taking into account these results, we can also establish the average range
of search in which the TSA found a maximum of the utility function with
pRBF = 20, pT SA = 2000, and L = 4: TRBF = 8 TT SA = 28 TT SA {i.e.,
= 0:29. This further interesting result shows that TSA succeeds in nding
the sub-optimum within less that the 30% of the search range. For obvious
reasons, max min decreases while climbing a pipeline from the leaf to the
root.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>In this paper, after proposing TSA, a threshold selection algorithm for
hierarchical text categorization, we made an experimental assessment aimed at
nding a suboptimal combination of thresholds in a hierarchical text
categorization setting. The quadratic complexity of the algorithm makes it easier
to nd good suboptimal solutions even for large taxonomies. Experimental
results, performed on Reuters data collections, show that the proposed
approach is able to outperform a relaxed version of the brute force approach.
Furthermore, TSA is also very e ective in dealing with the input imbalance
that typically occurs in real-world scenarios.
[10] D. D. Lewis. Evaluating and optimizing autonomous text classi cation
systems. In SIGIR '95: Proceedings of the 18th annual international</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A.</given-names>
            <surname>Addis</surname>
          </string-name>
          , G. Armano, and
          <string-name>
            <given-names>E.</given-names>
            <surname>Vargiu</surname>
          </string-name>
          .
          <article-title>From a generic multiagent architecture to multiagent information retrieval systems</article-title>
          .
          <source>In AT2AI-6</source>
          , Sixth International Workshop, From Agent Theory to Agent Implementation, pages
          <volume>3</volume>
          {
          <issue>9</issue>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Addis</surname>
          </string-name>
          , G. Armano, and
          <string-name>
            <given-names>E.</given-names>
            <surname>Vargiu</surname>
          </string-name>
          .
          <article-title>Using progressive ltering to deal with information overload</article-title>
          .
          <source>In 7th International Workshop on Text-based Information Retrieval</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Addis</surname>
          </string-name>
          , G. Armano, and
          <string-name>
            <given-names>E.</given-names>
            <surname>Vargiu</surname>
          </string-name>
          .
          <article-title>Using the progressive ltering approach to deal with input imbalance in large-scale taxonomies</article-title>
          .
          <source>In Large-Scale Hierarchical Classi cation Workshop</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          , G. Caire, and
          <string-name>
            <given-names>D.</given-names>
            <surname>Greenwood</surname>
          </string-name>
          .
          <article-title>Developing Multi-Agent Systems with JADE (Wiley Series in Agent Technology)</article-title>
          . John Wiley and Sons,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ceci</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Malerba</surname>
          </string-name>
          .
          <article-title>Classifying web documents in a hierarchy of categories: a comprehensive study</article-title>
          .
          <source>Journal of Intelligent Information Systems</source>
          ,
          <volume>28</volume>
          (
          <issue>1</issue>
          ):
          <volume>37</volume>
          {
          <fpage>78</fpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>W.</given-names>
            <surname>Cost</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Salzberg</surname>
          </string-name>
          .
          <article-title>A weighted nearest neighbor algorithm for learning with symbolic features</article-title>
          .
          <source>Machine Learning</source>
          ,
          <volume>10</volume>
          :
          <fpage>57</fpage>
          {
          <fpage>78</fpage>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S. D</given-names>
            <surname>'Alessio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Murray</surname>
          </string-name>
          , and
          <string-name>
            <surname>R.</surname>
          </string-name>
          <article-title>Schia no. The e ect of using hierarchical classi ers in text categorization</article-title>
          .
          <source>In Proceedings of of the 6th International Conference on Recherche dInformation Assiste par Ordinateur (RIAO)</source>
          , pages
          <fpage>302</fpage>
          {
          <fpage>313</fpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>S.</given-names>
            <surname>Kotsiantis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kanellopoulos</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Pintelas</surname>
          </string-name>
          .
          <article-title>Handling imbalanced datasets: a review</article-title>
          .
          <source>GESTS International Transactions on Computer Science and Engineering</source>
          ,
          <volume>30</volume>
          :
          <fpage>25</fpage>
          {
          <fpage>36</fpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>D.</given-names>
            <surname>Lewis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Rose</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Li</surname>
          </string-name>
          .
          <article-title>RCV1: A new benchmark collection for text categorization research</article-title>
          .
          <source>Journal of Machine Learning Research</source>
          ,
          <volume>5</volume>
          :
          <fpage>361</fpage>
          {
          <fpage>397</fpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>F.</given-names>
            <surname>Sebastiani</surname>
          </string-name>
          .
          <source>Machine learning in automated text categorization. ACM Computing Surveys (CSUR)</source>
          ,
          <volume>34</volume>
          (
          <issue>1</issue>
          ):1{
          <fpage>55</fpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Yang</surname>
          </string-name>
          .
          <article-title>An evaluation of statistical approaches to text categorization</article-title>
          .
          <source>Information Retrieval</source>
          ,
          <volume>1</volume>
          (
          <issue>1</issue>
          /2):
          <volume>69</volume>
          {
          <fpage>90</fpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>