<!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>
      <journal-title-group>
        <journal-title>Com Data Challenge). ACM, New York, NY, USA,
Article</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Encoder-Decoder neural networks for taxonomy classification</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Makoto Hiramatsu</string-name>
          <email>himkt@klis.tsukuba.ac.jp</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Kei Wakabayashi</string-name>
          <email>kwakaba@slis.tsukuba.ac.jp</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Faculty of Library, Information and Media Science, University of Tsukuba</institution>
          ,
          <addr-line>Tsukuba, Ibaraki</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Graduate School of Library, Information and Media, Studies, University of Tsukuba</institution>
          ,
          <addr-line>Tsukuba, Ibaraki</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <volume>4</volume>
      <issue>4</issue>
      <abstract>
        <p>This paper describes our taxonomy classifier for SIGIR eCom Rakuten Data Challenge. We propose a taxonomy classifier based on sequenceto-sequence neural networks, which are widely used in machine translation and automatic document summarization, by treating taxonomy classification as the translation problem from a description of a product to a category path. Experiments show that our method can predict category paths more accurately than baseline classifier.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>CCS CONCEPTS</title>
      <p>• Computing methodologies → Information extraction;</p>
    </sec>
    <sec id="sec-2">
      <title>INTRODUCTION</title>
      <p>Taxonomy is the major classification schemes in organizing
concepts. With the rapid growth of the e-commerce market
accompanying the development on the Internet, the number of products on
e-commerce becomes enormous. In this situation, it is required to
develop methods that predict taxonomic categories automatically
because it is costly to classify all the products manually.</p>
      <p>Rakuten Data Challenge, which is a competition we participated,
provides a task to predict correct categories for each given product.
As a feature of this task, categories have a hierarchical structure.
This hierarchical structure corresponds to a taxonomy, which
indicates that items in a category are further classified into a
subcategory that contains further lower detail information. Each
product has a path in the taxonomy like “Clothing, Shoes &amp; Accessories →
Shoes → Men → Boots”.</p>
      <p>As an approach to solving this task, the most straightforward
approach is to train a multi-class classifier (e.g., Random Forest)
that predicts a category path as a class of a given product. However,
Permission to make digital or hard copies of part or all of this work for personal or
classroom use is granted without fee provided that copies are not made or distributed
for profit or commercial advantage and that copies bear this notice and the full citation
on the first page. Copyrights for third-party components of this work must be honored.
For all other uses, contact the owner/author(s).</p>
      <p>SIGIR 2018 eCom Data Challenge, July 2018, Ann Arbor, Michigan, USA
© 2018 Copyright held by the owner/author(s).</p>
      <p>ACM ISBN 978-x-xxxx-xxxx-x/YY/MM.
https://doi.org/10.1145/nnnnnnn.nnnnnnn
as mentioned earlier, the number of category paths is 3,695, which
is fairly large to be considered as a set of classes for ordinal machine
learning classifier. Moreover, this approach independently treats
these category paths although a category path shares a part of
another category path of a similar product. It is expected that this fact
causes more data sparseness issue and degrades the performance
because the classifier has no way to find common patterns that are
shared in two diferent category paths.</p>
      <p>In this paper, we propose a taxonomy classifier based on
EncoderDecoder neural networks. The key idea is to regard the category
path as a series of category names in each hierarchical level. From
this perspective, the taxonomy classification task can be converted
into a sequence-to-sequence problem, which has a text (i.e., a
sequence of words) of the product name as the input and a sequence
of category names as the output. In recent years, remarkable
performance has been demonstrated in the field of machine translation
and automatic summarization by using the model called neural
network Encoder-Decoder architecture. We apply the
EncoderDecoder model to the taxonomy classification task and evaluate
the performance. Experiments show that our approach can
successfully predict category paths more precisely than the baseline
approach that treats the task as a multi-class classification problem
and applies Random Forest.
2</p>
    </sec>
    <sec id="sec-3">
      <title>DATASET</title>
      <sec id="sec-3-1">
        <title>Category depth Frequency of item 1 2</title>
        <p>We have 800,000 records for training data and 200,000 records for
test data. Each record has a description of a product and a category
path. The number of labels in the training data is 3,695, and each
label is assigned to 868 items on average. The category (id=4015) is
most frequently assigned to products, which is assigned to 268,295
items. Figure 1 shows the histogram of the number of words in each
description in the training data. The average number of words was
10.92, and the standard deviation was 5.21. The maximum number
of words was 58, and the minimum value was 1.</p>
        <p>20 30 40
number of words in product descriptions in the dataset
50
60
(2)
(3)
(4)
(5)</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>3 PROPOSED METHOD</title>
    </sec>
    <sec id="sec-5">
      <title>3.1 Preprocessing</title>
      <p>We used 20 % of the training dataset as the validation set to
evaluate models. As preprocessing, we lowercase a product name in
training/validation/test sets with SpaCy 1. We use both the original
corpus and the lowercase corpus and compare classifier
performances.</p>
      <p>
        For the weights of dense word representation layer, we use
GloVe [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] pre-trained embeddings trained on Gigaword and Wikipedia.
GloVe contains the lowercase words in its vocabulary. The
preprocessing of lowercase makes the vocabulary matchinд rate improve.
We show the matchinд rate of two corpora in Table 2 where source
means descriptions of products, which are inputs. matchinд rate is
defined by
      </p>
    </sec>
    <sec id="sec-6">
      <title>3.2 Encoder-Decoder neural networks for taxonomy classifier</title>
      <p>
        Encoder-Decoder Neural Network is a type of neural network that
is actively studied in recent years [
        <xref ref-type="bibr" rid="ref1 ref3 ref7">1, 3, 7</xref>
        ], which shows very good
performance in various tasks such as machine translation and
automatic summarization. We will describe the Encoder-Decoder Neural
Network used in this research.
      </p>
      <p>
        Figure 2 shows our Encoder-Decoder neural network with
attention mechanism [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Our model has two main functions called
encoder and decoder. An encoder function fenc takes an input
sequence of words x = (x1, x2, . . . , xn ) and a decoder function
fdec predicts the probability of a category path sequence y =
(y1, y2, . . . , ym ). fenc outputs a sequnce of hidden states h = (h1, h2, . . . , hn ).
To predict yt , fdec uses information from h and ct . A context vector
ct captures input sequence information to help predict an each label
yt . A context vector ct is defined as following:
ct = Õ at i hi ,
      </p>
      <p>i
and attention is defined as following:</p>
      <p>
        aˆt i ,
at i = Íj aˆt j
aˆt i = att (hi , h¯t ),
att (hi , h¯t ) = hi T Wah¯t ,
matchinд rate = |VDat aset ∩ VGloV e | ,
|VDat aset |
(1)
where att (ht , h¯i ) is an attention function. The attention function
of our works is based on Luong et al. [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] defined as following:
where VDat aset is the vocabulary of the dataset and VGloV e is the
vocabulary in the GloVe embeddings.
where h is the encoder state, h¯ is the decoder state and Wa is the
weight matrix that controls the contribution of each hi and h¯t .
      </p>
      <sec id="sec-6-1">
        <title>1https://spacy.io</title>
        <p>After the encoder takes input, the decoder predicts outputs using
encoder state. As a feature of the Encoder-Decoder neural network,
the input sequence length and the output sequence length do not
have to match. It can predict various length category path with
various length of a description of a product.
4</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>EXPERIMENTS</title>
      <p>This section presents evaluations of our taxonomy classifier and
the baseline classifier in the validation set. At the time of training,
we use up to 50,000 words as the features both in baseline and the
proposed model. In the experiment, we examine parameters of our
taxonomy classifier (in Table 3) and show best parameters in each
pair of encoder and decoder in Table 4.
4.1</p>
    </sec>
    <sec id="sec-8">
      <title>Baseline</title>
      <p>
        We use Random Forest [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] as the baseline. Random Forest is
commonly used in various kind of tasks including classification. If we
try to solve the multi-label problem where there are 3,695 labels, the
computational cost is very expensive. To avoid this dificulty, we
use the category path as the label to predict. Therefore our baseline
tries to solve the multi-class (3,695 classes) classification problem.
4.2
      </p>
    </sec>
    <sec id="sec-9">
      <title>Results</title>
      <p>We evaluate the performance of our proposed models and the
baseline on the validation set with the oficial script ( eval.py). We
show the best parameters for each model in Table 4, and the results
in Table 5. Bidirectional LSTM with GloVe achieves the best F1
score. Our model achieved the best performance when it uses
Bidirectional LSTM as an encoder/decoder, lowercase dataset and use
GloVe embeddings to initialize the weights of the embedding layer
for the input sequence. Interestingly, it shows bad scores when we
use GRU for encoder and decoder. We will further investigate the
reason for this.
5</p>
    </sec>
    <sec id="sec-10">
      <title>CONCLUSION</title>
      <p>In this paper, we propose an encoder-decoder neural network for
taxonomy classification where there are various sizes of category
paths. It is computationally expensive to solve this problem as a
multi-label classification because there are over 3,695 categories in
the dataset, To avoid this dificulty, we regarded taxonomy
classiifcation as the translation from the description of products to the
Word embedding dim for source (product)
Pre-trained word embedding
Word embedding dim for target (category)
Encoder / Decoder units
Number of Encoder / Decoder
Encoder / Decoder dim
Global attention
[LSTM, BiLSTM, GRU, BiGRU]
GRU
LSTM
300
500
300
500
encoder and decoder.</p>
      <p>RNN dim</p>
      <p>Embedding type</p>
      <sec id="sec-10-1">
        <title>Embedding dim</title>
      </sec>
      <sec id="sec-10-2">
        <title>Precision</title>
      </sec>
      <sec id="sec-10-3">
        <title>Model</title>
        <p>GRU</p>
      </sec>
      <sec id="sec-10-4">
        <title>LSTM</title>
      </sec>
    </sec>
    <sec id="sec-11">
      <title>ACKNOWLEDGEMENTS</title>
      <p>This work was supported by JSPS KAKENHI Grant Number 16H02904.
Also, we would like to show our gratitude to Kento Nozawa and
Taro Tezuka for comments that greatly improved the manuscript.
0.5367
0.6031</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Dzmitry</given-names>
            <surname>Bahdanau</surname>
          </string-name>
          , Kyunghyun Cho, and
          <string-name>
            <given-names>Yoshua</given-names>
            <surname>Bengio</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Neural Machine Translation by Jointly Learning to Align and Translate</article-title>
          .
          <source>In Proc. International Conference on Learning Representations</source>
          . http://arxiv.org/abs/1409.0473
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Leo</given-names>
            <surname>Breiman</surname>
          </string-name>
          .
          <year>2001</year>
          .
          <string-name>
            <given-names>Random</given-names>
            <surname>Forests</surname>
          </string-name>
          .
          <source>Mach. Learn</source>
          .
          <volume>45</volume>
          ,
          <issue>1</issue>
          (Oct.
          <year>2001</year>
          ),
          <fpage>5</fpage>
          -
          <lpage>32</lpage>
          . https: //doi.org/10.1023/A:1010933404324
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Kyunghyun</given-names>
            <surname>Cho</surname>
          </string-name>
          , Bart van Merrienboer,
          <string-name>
            <surname>Caglar Gulcehre</surname>
            , Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, and
            <given-names>Yoshua</given-names>
          </string-name>
          <string-name>
            <surname>Bengio</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation</article-title>
          .
          <source>In Proc. Empirical Methods in Natural Language Processing</source>
          . http://emnlp2014.org/ papers/pdf/EMNLP2014179.pdfhttp://arxiv.org/abs/1406.1078
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Minh-thang Luong</surname>
          </string-name>
          and
          <string-name>
            <surname>Christopher D Manning</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>Efective Approaches to Attention-based Neural Machine Translation</article-title>
          .
          <source>In Proc. Empirical Methods in Natural Language Processing</source>
          .
          <fpage>1412</fpage>
          -
          <lpage>1421</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F.</given-names>
            <surname>Pedregosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Varoquaux</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Gramfort</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Michel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Thirion</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Grisel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Blondel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Prettenhofer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Weiss</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Dubourg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Vanderplas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Passos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Cournapeau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Brucher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Perrot</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E.</given-names>
            <surname>Duchesnay</surname>
          </string-name>
          .
          <year>2011</year>
          .
          <article-title>Scikit-learn: Machine Learning in Python</article-title>
          .
          <source>Journal of Machine Learning Research</source>
          <volume>12</volume>
          (
          <year>2011</year>
          ),
          <fpage>2825</fpage>
          -
          <lpage>2830</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Jefrey</given-names>
            <surname>Pennington</surname>
          </string-name>
          , Richard Socher, and
          <string-name>
            <given-names>Christopher D.</given-names>
            <surname>Manning</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>GloVe: Global Vectors for Word Representation</article-title>
          .
          <source>In Proc. Empirical Methods in Natural Language Processing</source>
          .
          <fpage>1532</fpage>
          -
          <lpage>1543</lpage>
          . http://www.aclweb.org/anthology/D14-1162
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Ilya</given-names>
            <surname>Sutskever</surname>
          </string-name>
          , Oriol Vinyals, and
          <string-name>
            <surname>Quoc</surname>
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Le</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Sequence to sequence learning with neural networks</article-title>
          .
          <source>In Proc. Advances in Neural Information Processing Systems</source>
          .
          <volume>3104</volume>
          -
          <fpage>3112</fpage>
          . http://arxiv.org/abs/1409.3215
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>