<!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>Multi-level Deep Learning based E-commerce Product Categorization</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Wenhu Yu</string-name>
          <email>yuwenhu@jd.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Zhiqiang Sun</string-name>
          <email>sunzhiqiang3@jd.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Haifeng Liu</string-name>
          <email>bjliuhaifeng@jd.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Zhipeng Li</string-name>
          <email>lizhipeng@jd.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Zhitong Zheng</string-name>
          <email>zhengzhitong@a</email>
          <email>zhengzhitong@affiliation.org</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>JD.</institution>
          <addr-line>com</addr-line>
          ,
          <country country="CN">China</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <abstract>
        <p>E-commerce product categorization is an important topic, and its quality directly affects subsequent search, recommendations and related personalized services. E-commerce product classification is challenging due to the large scale and complexity of the product information and categories. In the E-Commerce Text Classification Challenge, we combine machine learning, deep learning, and natural language processing to propose a multi-level and multi-class deep learning tree method. Our method constructs multiple models based on single-label and multi-level label predictions as well as the characteristics of the product tree structure and combines the multiple models to generate a new classification model. The proposed classification model is tested on the online test dataset. The accuracy, recall, and F1 score are 0.8552, 0.8389, 0.8404 in leaderboard(Stage 1) and 0.8397, 0.8428, 0.8379 in leaderboard(Stage 2) respectively, ranking among top 3 scorers.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>CCS CONCEPTS
•Applied computing organization
infrastructure; Supervised learning
•Computing methodologies →
processing
→ E-commerce
by classification;
Natural language
Deep learning, Hierarchical search tree, Text classification</p>
    </sec>
    <sec id="sec-2">
      <title>1 INTRODUCTION</title>
      <p>The task of the big data challenge is to predict the e-commerce
product category according to the given product title. The
challenges of this task are as follows.</p>
      <p>(1) The distribution of product categories is extremely
unbalanced. For example, there are thousands of product titles
related to some merchandise categories, but some product
categories only have 1 to 2 titles in the training dataset.
(2) Offline training data and online test data are very different.
The analysis shows that the training dataset and the test dataset
involve about 220,000 and 580,0000 different words respectively,
which means that the online test dataset contains a large number
of new words.</p>
      <p>(3) The levels of category to be predicted is complex. If a
category label such as "A&gt;B&gt;C" is defined as the third category
level, the product category level in the training dataset can reach
8.</p>
      <p>(4) The large number of product categories to be predicted
greatly increases the complexity of the classification problem. If
we consider each label as a category in the training data set, there
are 3008 categories in total. If we look at categories at different
levels, we can reach 1600 categories at the most levels.</p>
      <p>To address these challenges, we develop classification
strategies based on the characteristics of the data. We merge the
training dataset and the test dataset to construct word vectors for
textual expressions so that semantic similarity can be used to
process new words in the test dataset. Sampling and data
enhancement techniques are used to address the unbalanced
category issue. To deal with the complexity of product
classification, we construct eight sample datasets according to the
category hierarchy and develop two classification algorithms to
build classification models for different levels and search paths
using category trees.
2</p>
    </sec>
    <sec id="sec-3">
      <title>RELATED WORK</title>
      <p>
        Text classification is an important topic in natural language
processing. It is widely used in information retrieval, search
recommendation, news classification, anti-spam, public opinion
analysis and other fields. A large number of text classification
methods have already been pro-posed in the past. Conventional
feature processing constructs TF-IDF and other features[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] . Word
vector based methods can improve the performance compared
with traditional methods in terms of expressing the semantic
information between words[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], getting more dense vectors and
reducing the complexity of extracting text features. Classification
algorithms and methods from Naive Bayes, KNN classification to
more recent Fasttext and deep learning models such as TextCNN,
TextRNN, VDCNN, AbLSTM, etc. have achieved better
performance and accuracy.
      </p>
      <p>Compared with the prior work, we evaluate the effectiveness of
different feature extraction methods and classification algorithms,
and then combine multiple models to develop a new product
category classification method.</p>
    </sec>
    <sec id="sec-4">
      <title>3 EXPERIMENTAL AND COMPUTATIONAL</title>
    </sec>
    <sec id="sec-5">
      <title>DETAILS</title>
      <p>All experiments use Tensorflow and Fasttext. In the classification
experiment, we divide the data into three sets: training set,
verification set, and test set. The data volume are 720,000, 80,000
and 200,000 respectively. In order to evaluate the impact of each
step on the final test, we first analyze the distributions of the word
frequency, product label hierarchy and word count, etc. The
effectiveness of different text preprocessing methods, including
noun extraction, stemming and excluding stop words, and
different word vector models is evaluated. We also evaluate the
impact of Fasttext, TextCNN, TextRNN , directory tree and
AbLSTM models. Based on the results, we choose the best models
and combine them to classify the online test dataset.
3.1</p>
    </sec>
    <sec id="sec-6">
      <title>Data Exploration</title>
      <p>We first analyze the given data. The result shows in Fig1.</p>
      <p>We find that the distributions of the title length are centered
around 10 words and the length of the titles in the training dataset
shows a longer-tail distribution from Fig1.b and Fig1.c. Fig1.d
shows that the number of products of each category in the
training set varies from 1 to 70,000, an extremely unbalanced
distribution. We further study the distribution that 3rd, 4th and
5th categories account for the largest proportions of the data both
in titles and subcategories from Fig1.e and Fig1.f.
We analyze the category labels obtained by the classification
model and investigate why some categories are misclassified on
the validation dataset.</p>
      <p>#e offline training dataset is divided into a standard
training dataset with a size of 720,000 and a validation
dataset with a size of 80,000. We set the ngram parameter
to 2 and the word window length to 100. Using the Fas%ext
model with the standard training dataset, the model's
prediction performance on the validation dataset is shown
in Table1. #e interval indicates the predicted probability
interval. Inconsistent and Consistent indicate the number
of prediction category labels that are consistent and
inconsistent with the real category labels respectively.
Total is the total number of titles included in the prediction
probability interval.</p>
      <p>The number of titles with a prediction probability higher than
0.93 is 65,374, accounting for 81.7% of all 80,000 titles in the
validation dataset. The result is consistent basically with the
calculated precision as Table2 shows. If the predicted probability
is greater than 0.93, there is a high probability that the predicted
label is consistent with the reference label. Otherwise, the
prediction is erroneous and we need to study it further.</p>
      <p>To analyze the erroneous results, we first obtain the data that
does not match the actual prediction labels in the validation
dataset, and then use the similarity method to perform an
approximate match detection.</p>
      <p>For example, for the title "Fuel Pressure Regulator Carter
404500HP" , the Fasttext model’s prediction is 2199&gt; 661&gt; 4498&gt; 343
while the actual result is 2199&gt; 4592&gt;12. We search the most
similar product titles as 2199&gt;661&gt;4498&gt;343 and 2199&gt;4592&gt;12 in
the training dataset. The most similar title as the former and the
latter are "Fuel Pressure Regulator: Belt/Hex Drive Pump EFI
Regulator" and "Edelbrock 1727 Fuel Pressure Regulator"
respectively. This may be the cause of misclassification.
3.3</p>
    </sec>
    <sec id="sec-7">
      <title>Feature Engineering</title>
      <p>In the field of natural language processing, feature engineering
includes text preprocessing, feature extraction and text expression.
Feature extraction process plays a very important role in text
classification. The classification task is mainly composed of two
parts, converting data to features and features to classification.
The former process determines the upper limit of the classification
model performance.</p>
      <p>3.3.1 Text preprocessing. We try different text preprocessing
methods including removing stop words, stemming and nouns
extraction to evaluate their accuracy using the Fasttext algorithm.
The result on the validation dataset is shown in Table 2. We can
see that the more we modify the title, the worse the resulting
accuracy is. We hence decide to use the original title as input in
the experiments later.
3.3.2 Feature extraction ant text extraction. Text
representation is a way to convert text information into machine
understandable language. The traditional methods for text
representation are word-bag model or vector space model. The
word-bag model is characterized by high dimensionality and
sparsity. It cannot express the semantic information very well. In
order to perform text representation better, we extract some
features to enhance text information. Common feature extraction
methods include mutual information, information gain, and
TFIDF method. However, these feature extraction methods can only
reflect the features of specific words, but can not express the
context and semantic similarity. Semantics-based text
representation transforms text into word vector. Word2vec, glove
and Fasttext can perform text representation based on semantics.
We use Fasttext to calculate the word vector on the 1 million
dataset in our work.
3.4</p>
    </sec>
    <sec id="sec-8">
      <title>Modeling</title>
      <p>
        Traditional text classification methods such as naive Bayes and
nearest neighbor classification do not take into account contextual
correlation. Therefore, the performance is poor when used in
large-scale multi-classification problems. Deep neural networks
may be better because it calculates the local correlation[
        <xref ref-type="bibr" rid="ref2 ref3 ref4">2-4</xref>
        ]. In our
work, we use the word vector method to do text representation
and build the model using the CNN, RNN, and several other
network structures.
      </p>
      <p>If we consider "3292&gt;114&gt;123" a single label, it’s a single-label
classification problem. If we consider "3292&gt;114&gt;123" a
combination of "3292", "114" and "123", it becomes a multi-label
classification. We discuss the two different models next.</p>
      <p>
        3.4.1 Single-lable prediction model. We initialize the word
embedding matrix using the Fasttext model. The word embedding
dimension is 100 and N-gram is 2. We also use TextCNN,
TextRNN, AbLSTM and other models to conduct the text
classification experiments [
        <xref ref-type="bibr" rid="ref10 ref11 ref5 ref6 ref7 ref8 ref9">5-11</xref>
        ]. The performance of each model
is shown in Table 3. Among all the models, Fasttext and AbLSTM
perform better than the others.
3.4.2 Multi-level label prediction model. If the problem is
defined as a multi-level label prediction, we need to predict the
category label in each level and then combine different levels of
category numbers according to the category tree.
      </p>
      <p>We analyze the category labels and find that a category number
belongs to a single level at a time. For example, number 11 never
appears under the first-level and second-level categories at the
same time. Based on this observation, we generate a multi-level
tree using the product category labels for the offline training data.
A multi-level tree example is shown in Fig2.</p>
      <p>Different data training sets for different category levels are
generated. Since the levels are up to 8, 8 models are generated.
Each model predicts a label, and searches the tree in a top-down
order. The probability of a multi-level category label is the average
of the probability of the labels on the search path.</p>
      <p>Fig.3 shows the multi-level tree classification model training
process. First, the original data is divided into eight sets according
to different hierarchical category labels, and a classification model
corresponding to per level is trained on each data set.</p>
      <p>Fig.4 depicts the multi-level tree classification prediction
process. The multi-level tree classification model consists of an
input layer, a word vector layer, a classification model layer, and
a tree search layer. For a new product title, according to the
pretraining word vector model, the word vector layer is converted
into a vector form that can be calculated by the computer, and
then according to different hierarchical models, the top three most
probable labels are calculated, and finally the categories are
combined. In the tree, all possible paths are calculated, and the
path with the highest average probability is selected as the output
value.</p>
      <p>For each test sample, assuming that the maximum level of the
hierarchical tree is k , the maximum possible path is calculated as
follows :
!"#ℎ% = [( )+ *, ( )+ - , … ( )+ 01 *, ( )+ 0]</p>
      <p>7
!% = 3 !) 4+5!) 6</p>
      <p>) 89
!"#ℎ):; = !"#ℎ:&lt;=):; (?@) (3)
where ( )+ 0 represents a random label in the kth category and
Pathh is a collection of all paths made up of different levels of
category elements. !) 4+5 and !) 6 represent the probability
corresponding to the ith label at the m-1th level , and the jth label
at the mth level respectively. Ph is the product of the probability of
each node on a path and Pathmax is the path with the highest
probability .</p>
      <p>With the previous experience of the hierarchical tree model, we
try a new sample tagging method, which replaces tag with a
combination of the tags of current hierarchical level and all of its
superior. For example, if the predicted target is '3292&gt;114&gt;123', we
will get '3292', '3292&gt;114' and '3292&gt;114&gt;123’. In order to
distinguish it from the previous hierarchical tree, we name the
new tree model SP tree. With different classification algorithms,
different models including Fasttext+SP TREE (FST) and AbLSTM+
SP TREE (AST) are constructed. We choose the deepest level of
the label set containing the hierarchical prediction label from top
to bottom, and take the label with the highest probability in the
set as the prediction result. Equation (4) and (5) describe the above
calculation process, where BCDEF7 represents the sequence
number corresponding to the prediction result with the highest
probability at the kth level.!"#ℎ:&lt;=):; (?(?:G%01 *)) represents the
most probable prediction in the k-1th level. !"#ℎ7 denotes all
predictions for the kth level. !"#ℎ7):; indicates the maximum
probability label of the kth level which contains its superior labels.</p>
      <p>BCDEFH = "IJK"F!(!"#ℎ"IJK"F(!(!"#ℎH−1)) ∈ !"#ℎH)
(1)
(2)
(4)
(5)
!"#ℎ7):; = !"#ℎOPQR;0</p>
      <p>The Fasttext and AbLSTM methods are used for classification
according to the results of the single model. The models are
submitted online for evaluating the test dataset. The result is
shown in Table 4.</p>
      <p>The model based on the single-label prediction achieves higher
recall rates and F1 scores while the model based on multi-label
prediction achieves higher precision.
For model fusion, we use both the simple voting method and the
weighted voting method. The simple voting method refers to
voting on the results according to multiple models, and
determining the category based on the voting results. The
weighted voting method refers to adding up the predicted
probability values of multiple models, and choosing the prediction
with the highest probability value. The results of online data test
using the simple voting method and the weighted voting method
are shown in Table 5.
The classification of product categories based on the product titles
is an important and challenging problem. We propose a method
that combines different classification models.</p>
      <p>1. More data preprocessing such as excluding stop words,
stemming, and extracting nouns can lead to worse performance.
This observation suggests the use of the original titles as the input.</p>
      <p>2. We build two types of models using single-label prediction
and multi-level label prediction respectively. For single-label
prediction, we use Fasttext, Text-CNN, Text-RNN, VDCNN and
AbLSTM. The results show that Fasttext and AbLSTM perform
better than the others. For multi-level label prediction, according
to the different processing methods of sample tags, we construct
hierarchical search tree model and short path tree model . For
hierarchical search tree, we first extract the category tree
structure in the training dataset and use different classification
algorithms to predict the top three labels with the highest
probability in each level. We then choose the path with the
highest probability as the prediction result according to the
category tree. Compared with the hierarchical tree, the short path
tree appends all parent tags to the current level tag when
processing the sample tag</p>
      <p>The model based on single-label
prediction achieves higher recall rates and F1 scores while the
model based on multi-label prediction gets higher precision.
These results imply that the classification model can be improved
by combing different models.</p>
      <p>3. Our approach combines the results from Fasttext, AbLSTM,
Fasttext-Tree(FT) AbLSTM-Tree(AT) , Fasttext-SP-Tree(FST) and
AbLSTM-SP-Tree(AST) with weighting strategy and achieves a
precision, recall and F1 score of 0.8552, 0.8389, 0.8404 in
leaderboard(Stage 1) and 0.8397 , 0.8428 , 0.8379 in leaderboard
(Stage 2) respectively . The proposed approach could also be used
for other text classification tasks such as movie, music, fresh, etc.</p>
    </sec>
    <sec id="sec-9">
      <title>ACKNOWLEDGMENTS</title>
      <p>#is work was partially supported by the SIGIR eCom`18 Project
"Taxonomy Classification for eCommerce-scale Product Catalogs"
and by Rakuten Institute of Technology Boston (RIT-Boston).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Ronan</given-names>
            <surname>Collobert</surname>
          </string-name>
          and
          <string-name>
            <given-names>Jason</given-names>
            <surname>Weston</surname>
          </string-name>
          .
          <year>2008</year>
          .
          <article-title>A unified architecture for natural language processing:deep neural networks with multitask learning</article-title>
          .
          <source>Internet Control Message Protocol (ICML)</source>
          ,
          <fpage>160</fpage>
          -
          <lpage>167</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Cicero</given-names>
            <surname>Nogueria Dos Santos</surname>
          </string-name>
          and Maira Ga%i.
          <year>2014</year>
          .
          <article-title>Deep convolutional neural networks for sentiment analysis of short texts</article-title>
          .
          <source>In COLING</source>
          ,
          <fpage>69</fpage>
          -
          <lpage>78</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Sepp</given-names>
            <surname>Hochreiter</surname>
          </string-name>
          and
          <string-name>
            <given-names>Jurgen</given-names>
            <surname>Schmidhuber</surname>
          </string-name>
          .
          <year>1997</year>
          .
          <article-title>Long short-term memory</article-title>
          .
          <source>In Neural computation</source>
          ,
          <fpage>1735</fpage>
          -
          <lpage>1780</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Yoon</given-names>
            <surname>Kim</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Convolutional neural networks for sentence classification</article-title>
          .
          <source>In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing(EMNLP).</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Pedro</surname>
            <given-names>HO</given-names>
          </string-name>
          <string-name>
            <surname>Pinheiro and Ronan Collobert</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Recurrent convolutional neural networks for scene labeling</article-title>
          .
          <source>In Internet Control Message Protocol (ICML)</source>
          ,
          <fpage>82</fpage>
          -
          <lpage>90</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Karen</given-names>
            <surname>Simonyan</surname>
          </string-name>
          and
          <string-name>
            <given-names>Andrew</given-names>
            <surname>Zisserma</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>Very deep convolutional networks for large-scare image recognition</article-title>
          .
          <source>In ICLR .</source>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Zichao</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Diyi</given-names>
            <surname>Yang</surname>
          </string-name>
          , Chris Dyer, Xiaodong He,
          <string-name>
            <surname>Alex Smola</surname>
            , and
            <given-names>Eduard</given-names>
          </string-name>
          <string-name>
            <surname>Hovy</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>Hierarchical a%ention networks for document classification</article-title>
          .
          <source>In Proceedings of NAACL-HLT</source>
          ,
          <fpage>1480</fpage>
          -
          <lpage>1489</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Geoffrey</surname>
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Hinton</surname>
          </string-name>
          ,
          <source>Simon Osindero and Yee Whye Teh</source>
          .
          <year>2006</year>
          .
          <article-title>A fast learning algorithm for deep belief nets</article-title>
          .
          <source>In Neural Computation</source>
          ,
          <fpage>1527</fpage>
          -
          <lpage>1554</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Armand</given-names>
            <surname>Joulin</surname>
          </string-name>
          , Edouard Grave, Piotr Bojanowski, Ma%hijs Douze,
          <source>Herve Jegou and Tomas Mikolov</source>
          .
          <year>2017</year>
          .
          <article-title>FASTTEXT.ZIP:COMPRESSING TEXT CLASSIFICATION MODELS</article-title>
          .
          <source>In ICLR.</source>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Zichao</surname>
            <given-names>Yang</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Diyi</given-names>
            <surname>Yang</surname>
          </string-name>
          , Chris Dyer, Xiaodong He, Alex Smola and
          <string-name>
            <given-names>Eduard</given-names>
            <surname>Hovy</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>Hierarchical a%ention networks for document classification</article-title>
          .
          <source>In Proceeding of NAACL-HLT</source>
          ,
          <fpage>1480</fpage>
          -
          <lpage>1489</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Alexis</surname>
            <given-names>Conneau</given-names>
          </string-name>
          , Holger Schwenk,
          <source>Yann Le Cun and Loïc Barrault</source>
          .
          <year>2017</year>
          .
          <article-title>Very Deep Convolutional Networks for Text Classification</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Takeru</surname>
            <given-names>Miyato</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Andrew M.</given-names>
            <surname>Dai</surname>
          </string-name>
          and
          <string-name>
            <given-names>Ian</given-names>
            <surname>Goodfellow</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>Virtual Adversarial Training for Semi-Supervised Text Classification</article-title>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>