<!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>Refreshing Models to Provide Timely Query Recommendations</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Daniele Broccolo</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Franco Maria Nardini</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Raffaele Perego</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fabrizio Silvestri</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>ISTI - CNR Pisa</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Italy</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>name.surname}@isti.cnr.it</string-name>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2010</year>
      </pub-date>
      <fpage>27</fpage>
      <lpage>28</lpage>
      <abstract>
        <p>In this work we propose a comparative study of the e ects of a continuous model update on the e ectiveness of wellknown query recommendation algorithms. In their original formulation, these algorithms use static (i.e. pre-computed) models to generate recommendations. We extend these algorithms to generate suggestions using: a static model (no updates), a model updated periodically, and a model continuously updating (i.e. each time a query is submitted). We assess the results by previously proposed evaluation metrics and we show that the use of periodical and continuous updates of the model used for recommending queries provides better recommendations.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>The ocean of data on the web is continuously growing in
size. Due to this reason web search engines are one of
today's most used online applications to nd what users need.
According to Nielsen Online in October 2008 Google and
Yahoo! answered more than 6 billions user searches in the
US. In the latest years, web search engines have started to
provide users with query recommendations to help them in
re ning queries and to quickly satisfy their needs. Query
recommendation techniques are based on the knowledge about
the behavior of past users of the search engine recorded in
query logs. Basically, the behavior of many individuals is
smarter than the behavior of few intelligent people.</p>
      <p>We propose a new class of query recommender algorithms
that we name \incremental " query recommender systems.
These kind of systems update the model on which
recommendations are drawn without the need for rebuilding it
from scratch. That is, at regular intervals the recommender
system updates the model on which suggestions are
computed. In particular, we study a class of incremental
recommenders where the model is updated for each received query.
We study the e ect on the performance (in terms of quality)
of query recommender systems when varying the update
interval. To do so, we propose an automatic evaluation
mechanism to assess the e ectiveness of query recommendation
algorithms.</p>
      <p>In this paper we aim at showing a novel class of query
recommendation algorithms whose models are periodically
updated as queries are submitted by users, and a
comparison of four di erent query recommenders using new metrics.
Due to space constraints we present a shortened version of
our ongoing work.
2.</p>
    </sec>
    <sec id="sec-2">
      <title>STATIC MODELS</title>
      <p>
        To validate our hypothesis about the e ects of continuous
model updates on query recommender systems, we consider
two well-known query recommendation algorithms and we
de ne two new algorithms in order to continuously update
the model on which recommendations are computed. The
rst one uses association rules for generating
recommendations [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] (henceforth AssociationRules) while the second one
uses click-though data [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] (henceforth CoverGraph).
Hereinafter, we will refer to the original formulation of the two
algorithms as \static", as opposed to the incremental version
which will be called \incremental ".
      </p>
      <p>
        AssociationRules. Fonseca et al. uses association rules
as a basis for generating recommendations [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The
algorithm is based on two main phases. The rst one uses query
log analysis for session extraction, and the second one
basically extracts association rules and identi es related queries.
Each session is identi ed by all queries sent by an user in a
speci c time interval (t = 10 minutes). The problem of
mining associations is to generate all the rules having a support
greater than a speci ed minimum threshold (minsup). The
rationale is that if distinct queries occurs simultaneously in
many user sessions then those queries are considered to be
related. Suggestions for a query q are simply computed by
accessing the list of rules and by suggesting the q0's
corresponding to rules with the higher support values.
      </p>
      <p>
        CoverGraph. Baeza-Yates et al. use click-through data
as a way to provide recommendations [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The method is
based on the concept of cover graph. A cover graph is a
bipartite graph of queries and URLs, where a query and an
URL are connected if a user clicked in a URL that was an
answer for a query. To catch the relations between queries,
a graph is built out of a vectorial representation for queries.
Each component of the vector is weighted according to the
number of times the corresponding URL has been clicked
on when returned for that query. Queries are then arranged
as a graph with two queries being connected by an edge if
and only if the two queries share a non-zero entry, that is
if for two di erent queries the same URL received at least
one click. Furthermore, edges are weighted according to the
cosine similarity of the queries they connect. Suggestions for
a query q are simply obtained by accessing the corresponding
node in the cover graph and extracting the queries at the end
of the top scoring edges.
3.
      </p>
    </sec>
    <sec id="sec-3">
      <title>PERIODICALLY UPDATING MODELS</title>
      <p>
        We argue that the use of \incremental" algorithms for
query recommendation can provide better results from two
main points of view: i) models age slowly (or do not age at
all), and ii) they provide better recommendations for bursty
topics [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. However the trade o s are: the frequency of
update (i.e. update frequency has to be tuned in order to
maintain an high e ectiveness of recommendations), and
the computational cost for updating the model (the more
frequently are the updates, the less responsive the
recommender system). For these reasons to design a good
incremental recommender algorithm is challenging.
      </p>
      <p>We design two new recommender algorithms in order to
allow the update of the models at regular time intervals.
The two algorithms di er from the static versions by the way
they manage and use data to build the model. To achieve
the main challenges both the two algorithms implement LRU
structures and use HashMaps to retrieve queries and links
during the update phase. Doing so, a exible, small and
easy to maintain model is obtained.</p>
    </sec>
    <sec id="sec-4">
      <title>EXPERIMENT</title>
      <p>Assessing the e ectiveness of recommender systems is a
though problem. The evaluation can be made through
userstudies and through automatic mechanisms.</p>
      <p>We validate our proposals by means of an automatic
evaluation methodology consisting in using previously proposed
metrics. Due to space constraints, we show in the following
experiments results with the QueryOverlap metric.</p>
      <p>Let S = fq1; : : : ; qng be a user session of length n. Let
S1 = fq1; : : : ; qb n2 cg be the set of queries in the rst half of
the session. For each qj 2 S1, let S2 = fqj+1; : : : ; qng be the
n j most recently submitted queries in the session, and
let Rj = fr1; : : : ; rmg be the set of query recommendations
returned for the query. We de ne QueryOverlap as:
QueryOverlap(qj ) =</p>
      <p>K ri2Rj</p>
      <p>sk2S2
1 X [ri = sk]f (k)
where [ri = sk] is 1 i the i-th element of R is equal to the
k-th element of S2, and 0 otherwise. f (k) is a weighting
function allowing us to di erentiate the importance of each
recommendation depending on the position it occupies in the
second part of the session and K is a normalization factor.</p>
      <p>The most important experiments we have conducted is
to measure the bene ts of continuously updating models in
query recommender systems. This test is conducted
generating recommendations and assessing the e ectiveness of
query suggestions on di erent time slots. Here, we brie y
discuss only results for the AssociationRules algorithm.</p>
      <p>From the plots in Figure 1 it is evident that the e
ectiveness of the recommendations provided by both o ine
and online models becomes constant from a certain period
of time. However the incremental versions (both quantized
and continuously updating) produce sensitively better
recommendations. This is due to the inclusion in the model
of new and \fresher" data. Furthermore, except for an
initial phase where the model is warming up, the number of
useful suggestions of the continuously updating versions of
time
2
3
4
7
8
9
10
the algorithms is greater than the others throughout the
entire observed period. The static and incrementally
updating versions, indeed, produces more signi cant
recommendations only in the very rst intervals of the timeline. This
is, obviously, due to both the \freshness" of the static models
in the starting phases and to the cold-start problem in the
continuously updating algorithms.</p>
      <p>
        As a consequence of that, we prove that the aging e ect
on the models [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] a ects the quality of the
recommendations. \Incremental " algorithms provides a solution to this
phenomenon.
5.
      </p>
    </sec>
    <sec id="sec-5">
      <title>CONCLUSIONS</title>
      <p>In this work we propose a new class of query recommender
algorithms that we name \incremental " query recommender
systems. These kind of systems update the model on which
recommendations are drawn, incrementally. In addition, we
propose an automatic evaluation mechanism to assess the
e ectiveness of query recommendation algorithms.</p>
      <p>Results show that continuously updating versions of the
algorithms generate an higher number of useful suggestions
with respect to the others throughout the entire observed
period. This is a consequence of the aging e ect on the models
responsible for a ecting the quality of the recommendations
provided.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>R.</given-names>
            <surname>Baeza-Yates</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Tiberi</surname>
          </string-name>
          .
          <article-title>Extracting semantic relations from query logs</article-title>
          .
          <source>In In Proc. KDD'07</source>
          , pages
          <fpage>76</fpage>
          {
          <fpage>85</fpage>
          , New York, NY, USA,
          <year>2007</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>R.</given-names>
            <surname>Baraglia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Castillo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Donato</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Nardini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Perego</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Silvestri</surname>
          </string-name>
          .
          <article-title>Aging e ects on query ow graphs for query suggestion</article-title>
          .
          <source>In In Proc. CIKM</source>
          '
          <volume>09</volume>
          ., pages
          <year>1947</year>
          {
          <year>1950</year>
          , New York, NY, USA,
          <year>2009</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>B. M.</given-names>
            <surname>Fonseca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. B.</given-names>
            <surname>Golgher</surname>
          </string-name>
          , E. S. de Moura, and
          <string-name>
            <given-names>N.</given-names>
            <surname>Ziviani</surname>
          </string-name>
          .
          <article-title>Using association rules to discover search engines related queries</article-title>
          .
          <source>In In Proc. LA-WEB '03, page 66</source>
          , Washington, DC, USA,
          <year>2003</year>
          . IEEE Computer Society.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Kleinberg</surname>
          </string-name>
          .
          <article-title>Bursty and hierarchical structure in streams</article-title>
          .
          <source>In In Proc. KDD'02</source>
          , pages
          <fpage>91</fpage>
          {
          <fpage>101</fpage>
          , New York, NY, USA,
          <year>2002</year>
          . ACM.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>