<!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>Explore next destination prediction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Yuanzhe Zhou</string-name>
          <email>zhouyuanzhe@whu.edu.cn</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Shikang Wu</string-name>
          <email>danny199607@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Chenyang Zheng</string-name>
          <email>zhengchenyang01@baidu.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>BEIJING</institution>
          ,
          <country country="CN">CHINA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>WUHAN</institution>
          ,
          <country country="CN">CHINA</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <fpage>34</fpage>
      <lpage>35</lpage>
      <abstract>
        <p>Next destination prediction problem by users' traveling sequence has provoked many researchers' attention recently. It is a perfect benchmark for a graph neural network or graph embedding algorithm, which have achieved state of the art for many kinds of tasks involving graph information. In this paper, we explore this problem by recurrent neural network and we have achieved 0.5741 top-4 accuracy.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>
        In this paper, we will introduce our model and method employed
in the WebTour 2021 Challenge [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] holding by Booking.com. The
source code for training and prediction can be accessed here:
https://github.com/zhouyuanzhe/booking_challenge-.
      </p>
    </sec>
    <sec id="sec-2">
      <title>DETAILS OF MODEL</title>
      <p>
        As the preprocessing, We pad/crop users’ destination sequences to
the same length 20 in order to use recurrent neural network. User
sequences with length less than 2 are removed since they will not
appear in our testing data. We use the data from both training data
and test data for Word2Vec[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ][
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] pretraining. We choose window
size 1 and embedding size ranging from 64 to 256 under mode sg
(skip-gram).
      </p>
      <p>
        The structure [Figure:1] of our model is shown blow. The input
of our model are destination sequences and manual features. We use
LSTM [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] (Long Short-Term Memory) and GRU [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] ( Gated recurrent
unit) to extract features from destination sequences. We use one
layer of bi-directional GRU after one layer of bi-directional LSTM.
The last output state of GRU is used as the feature of the destination
sequence. Then we introduce the gate structure proposed in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] to
model the relationship between the last destination and the next
destination. It is conducted in the following way,
output =  · + (1 −  ) ·  ( [1, 2, ...,  ])
      </p>
      <p>=  ( [,   ( [1, 2, ...,  ])])
where  are embedding vector of diferent cities.</p>
      <p>We have 2 outputs, next destination and next country. The extra
country information introduced here help us to decrease the loss
by a lot. We apply softmax activation function to the output and
use cross-entropy to optimize our model.
2.1</p>
    </sec>
    <sec id="sec-3">
      <title>Manual features</title>
      <p>Since Booking.com allows us to use part of the information about
the next destination, we made some manual features concerning
the check-out date of the last destination, check-in date of the
next destination and the duration the traveler will stay. The extra
features improve our top-4 accuracy by 1.5%.</p>
      <p>Our features include the features concerning time,
• Duration of last trip.
• Day of the month for check in.
• Day of the week for check in.
• Day of the month for check out.</p>
      <p>• Day of the week for check out.</p>
      <p>The sinus and cosinus value of the time are used. For example,
day of the week sin = sin(day of the week/7)
day of the week cos = cos(day of the week/7)
Other features like afiliate_id, device_class and booker_country
are also included. The source is processed by a trainable embedding
layer. The additional information improved the final result by 1.5%.</p>
      <p>We use a 2 layers MLP to process the input of features. It is then
concatenated to the output from RNN. We make the final prediction
by a densely connected layer, with the activation function softmax.
All the cities are treated as the promising destination (this part can
be improved by carefully select positive and negative samples).</p>
    </sec>
    <sec id="sec-4">
      <title>TRAINING STRATEGY</title>
      <p>Our training strategy is 20 k-fold cross-validation with learning
rate decay strategy, ’reduce lr on plateau’. We trained our model
with Adam optimizer with learning rate 0.001 and batch size 8096.
What contributes most to our final result is the two phase training
strategy.
3.1</p>
    </sec>
    <sec id="sec-5">
      <title>Pretraining for sequential recommendation</title>
      <p>Pretraining has been proved to be eficient and efective for many
tasks. Although RNN is not as capable as transformer, we can still
improve its performance by using</p>
      <p>We pretrain our RNN model by using the sub-sequences from
the complete sequence. Assume that the complete sequence is,
(0, 1, 2, ...,  )
(0), (0, 1), (0, 1, 2), ..., (0, 1, 2, ..., −1)</p>
      <sec id="sec-5-1">
        <title>The sub-sequences are,</title>
        <p>where  denotes the destinations.
3.2</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Fine-tune</title>
      <p>Pretraining can also be problematic because some intermediate
destinations are not directly connected with user’s origin. Thus
some sub-sequences are noisy and the data distribution of
subsequences is diferent from that of the original data. To handle this
diference of data distribution, we only need to fine-tune our model
with the original training data.</p>
      <p>The following [Table 1] is the comparison of top-4 accuracy for
local validation data between diferent settings.</p>
      <sec id="sec-6-1">
        <title>LSTM</title>
      </sec>
      <sec id="sec-6-2">
        <title>LSTM+features</title>
      </sec>
      <sec id="sec-6-3">
        <title>LSTM+features+pretrain</title>
      </sec>
      <sec id="sec-6-4">
        <title>LSTM+features+pretrain+finetune</title>
        <p>LSTM+features+pretrain+finetune+test data
top-4 accuracy
52.51%
54.02%
54.95%
55.53%
57.49%</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>CONCLUSION</title>
      <p>In this paper, we start from a very simple RNN model for next
destination prediction. The main improvements are made through
understanding the data and making the most of the data through
data exploration. We have shown that pretraining for sequential
recommendation system is beneficial and fine-tuning can improve
the performance further. Our final result is competitive to SOTA.</p>
      <p>Yuanzhe Zhou, Shikang Wu, and Chenyang Zheng</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Kyunghyun</given-names>
            <surname>Cho</surname>
          </string-name>
          , Bart van Merrienboer,
          <string-name>
            <surname>Çaglar Gülçehre</surname>
            , 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>CoRR abs/1406</source>
          .1078 (
          <year>2014</year>
          ). arXiv:
          <volume>1406</volume>
          .1078 http://arxiv.org/abs/1406.1078
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Dmitri</given-names>
            <surname>Goldenberg</surname>
          </string-name>
          , Kostia Kofman, Pavel Levin, Sarai Mizrachi, Maayan Kafry, and
          <string-name>
            <given-names>Guy</given-names>
            <surname>Nadav</surname>
          </string-name>
          .
          <year>2021</year>
          .
          <article-title>Booking.com WSDM WebTour 2021 Challenge</article-title>
          . https: //www.bookingchallenge.com/,. In ACM WSDM Workshop on Web Tourism (WSDM WebTour'
          <volume>21</volume>
          ).
        </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>Jürgen</given-names>
            <surname>Schmidhuber</surname>
          </string-name>
          .
          <year>1997</year>
          .
          <article-title>Long short-term memory</article-title>
          .
          <source>Neural computation 9</source>
          ,
          <issue>8</issue>
          (
          <year>1997</year>
          ),
          <fpage>1735</fpage>
          -
          <lpage>1780</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Qiao</given-names>
            <surname>Liu</surname>
          </string-name>
          , Yifu Zeng, Refuoe Mokhosi,
          <string-name>
            <given-names>and Haibin</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <year>2018</year>
          .
          <article-title>STAMP: Short-Term Attention/Memory Priority Model for Session-Based Recommendation</article-title>
          .
          <source>In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery Data Mining (London, United Kingdom) (KDD '18)</source>
          .
          <article-title>Association for Computing Machinery</article-title>
          , New York, NY, USA,
          <fpage>1831</fpage>
          -
          <lpage>1839</lpage>
          . https://doi.org/10.1145/3219819.3219950
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Tomas</given-names>
            <surname>Mikolov</surname>
          </string-name>
          , Ilya Sutskever, Kai Chen, Greg S Corrado, and
          <string-name>
            <given-names>Jef</given-names>
            <surname>Dean</surname>
          </string-name>
          .
          <year>2013</year>
          .
          <article-title>Distributed representations of words and phrases and their compositionality</article-title>
          .
          <source>In Advances in Neural Information Processing Systems</source>
          .
          <volume>3111</volume>
          -
          <fpage>3119</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Radim</given-names>
            <surname>Řehůřek</surname>
          </string-name>
          and
          <string-name>
            <given-names>Petr</given-names>
            <surname>Sojka</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>Software Framework for Topic Modelling with Large Corpora</article-title>
          .
          <source>In Proceedings of the LREC 2010 Workshop on New Challenges for NLP Frameworks. ELRA</source>
          , Valletta, Malta,
          <fpage>45</fpage>
          -
          <lpage>50</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>