<!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>Monolingual and Cross-language QA using a QA-oriented Passage Retrieval System</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Joes´ Manuel Go´mez Soriano</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Empar Bisbal Asensi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Davide Buscaldi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Paolo Rosso</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Emilio Sanchis Arnal</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dpto. de Sistemas Informa ́ticos y Computacoi ́n</institution>
          ,
          <addr-line>DSIC</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Universidad Polietc ́nica de Valencia</institution>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This report describes the work done by the RFIA group at the Departamento de Sistemas Informa´ticos y Computacoi´n of the Universidad Polietc´nica of Valencia for the 2005 edition of the CLEF Question Answering task. We participated in three monolingual tasks: Spanish, Italian and French, and in two cross-language tasks: spanish to english and english to spanish. Since this was our first participation, we focused our work on the passage-based search engine while using simple pattern matching rules for the Answer Extraction phase. As regards the cross-language tasks, we had resort to the most common web translation tools.</p>
      </abstract>
      <kwd-group>
        <kwd>Question Answering</kwd>
        <kwd>Passage Retrieval</kwd>
        <kwd>Query Classification</kwd>
        <kwd>Answer Extraction</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>The most relevant part of our work is made up by the Passage Retrieval system, specicfially
oriented to the QA task, whereas most QA systems use classical PR methods [1, 2, 3, 4]. Our
PR method is also language independent, because the question and passage processing phases
do not use any knowledge about the lexicon and the syntax of the corresponding language. A
SVM approach combined with pattern rules has been used for the QC module. Due to the fact
that this was our first participation to the CLEF QA task, the AE module was developed using
simple pattern-matching rules, and therefore resulted to be somehow coarse, due both to the small
number of question categories and to the lack of time to define all the needed patterns.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Description of QA System</title>
      <sec id="sec-2-1">
        <title>The architecture of our QA system is shown in Fig.1.</title>
        <p>Given a user question, this will be handed over to the Question Analysis (in our case it does not
only classify the questions, but extracts also some constraints to be used in the Answer Extraction
phase) and Passage Retrieval modules. Next, the Answer Extraction obtains the answer from
the expected type, constraints and passages returned by Question Analysis and Passage Retrieval
modules.
2.1</p>
        <sec id="sec-2-1-1">
          <title>Question Analysis</title>
          <p>The main objective of this module is to obtain the expected answer type from the question. This
is a crucial step of the processing since the Answer Extraction module uses a different strategy
depending on the expected answer type, and errors in this phase account for the 36.4% of the total
number of errors in Question Answering as reported by Moldovan et al. [5]. The different answer
types that can be treated by our system are shown in Table 1.</p>
          <p>A SVM classiefir trained over a corpus of 1 , 393 questions in English and Spanish from the past
TREC1 QA test sets has been coupled with a simple pattern-based classifier. The answer of both
classiefirs are evaluated by a sub-module that selects the most specific category between the ones
returned by the classifiers. For instance, the answer extraction module applies a specialized
strategy if the expected type of the answer is “COUNTRY”, that is a sub-category of “LOCATION”.
The patterns are organized in a 3-levels hierarchy, where each category is defined by one or more
L0
NAME</p>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>DEFINITION DATE</title>
      </sec>
      <sec id="sec-2-3">
        <title>QUANTITY</title>
        <p>L1
ACRONYM
PERSON
TITLE
LOCATION
DAY
MONTH
YEAR
WEEKDAY
MONEY
DIMENSION
AGE
L2</p>
      </sec>
      <sec id="sec-2-4">
        <title>COUNTRY CITY GEOGRAPHICAL</title>
        <p>patterns written as regular expressions. For instance, the Italian patterns for the category “city ”
are: .*(che|quale) .*citt\’a .+ and (qual|quale) .*la capitale .+. The questions that
do not match any denfied pattern are labeled with OTHER. The QC system based on patterns
was used stand-alone for both Italian and French, because of the unavailability of corpora for these
languages.</p>
        <p>Together with the usual Query Classification task, the module analyzes the query with the
purpose of identifying the constraints to be used in the Answer Extraction (AE) phase. These
constraints are made by sequences of words extracted from the POS-tagged query by means of
POS patterns and rules. For instance, any sequence of nouns (such as “ozone hole”) is considered
as a relevant pattern. The POS-taggers used were the SVMtool2 for English and Spanish, and the
TreeTagger3 for Italian and French.</p>
        <p>We distinguish two classes of constraints: a target constraint, which can be considered the
object of the question, and zero or more contextual constraints, keeping the information that has
to be included in the retrieved passage in order to have a chance of success in extracting the
correct answer. For example, in the following question: “How many inhabitants were there in
Sweden in 1989?” inhabitants is the target constraint, while Sweden and 1989 are the contextual
constraints. There is always only one target constraint for each question, but the number of
contextual constraint is not fixed. For instance, in “Who is Jorge Amado?” the target constraint
is Jorge Amado but there are no contextual constraints.</p>
        <p>1http://trec.nist.gov
2http://www.lsi.upc.edu/ nlp/SVMTool/
3http://www.ims.uni-stuttgart.de/projekte/ corplex/TreeTagger/DecisionTreeTagger.html</p>
        <p>In the case of the Cross-language task, the module works over an optimal translation of the
input query. Four translations are obtained through the following web tools: Google4, Systran5,
Babelfish 6 and Freetrans7. For each translation a trigram chain is obtained in the following way:
let w = (w1, . . . , wn) be the sequence of the words in the translation, then a trigram chain is a
set of trigrams T = {(w1, w2, w3), (w2, w3, w4), . . . (wn− 2, wn− 1, wn)}. Then each of the trigrams
t ∈ T is submitted to a web search engine (we opted for MSN Search8) as a string: “wi wi+1 wi+2”,
obtaining the web count c(t) of that trigram. The weight of each trigram chain (and therefore of
the corresponding translation) is obtained by means of Formula 1.</p>
        <p>W (T ) =</p>
        <p>Y cˆ(t) where cˆ(t) =
t∈T
log c(t) c(t) &gt; 1
0.1 c(t) ≤ 1
The optimal translation is the one with the highest trigram chain weight.
2.2</p>
        <sec id="sec-2-4-1">
          <title>Passage Retrieval</title>
          <p>The user question is handed over also to the Search Engine and N-grams Extraction modules.
Passages with the relevant terms (i.e., without stopwords) are found by the Search Engine using
the classical IR system. Sets of unigrams, bigrams, ..., n-grams are extracted from the extended
passages and from the user question. In both cases, n will be the number of question terms.</p>
          <p>With the n-gram sets of the passages and the user question we will make a comparison in
order to obtain the weight of each passage. The weight of a passage will be heavier if the passage
contains greater n-gram structures of the question.</p>
          <p>
            For instance, if we ask ”Who is the President of Mexico? ” the system could retrieve two
passages: one with the expression ”...Vicente Fox is the President of Mexico...”, and the other
one with the expression ”...Carlo Azeglio Ciampi is the President of Italy...”. Of course, the
first passage must have more importance because it contains the 5-gram ” is the President of
Mexico”, whereas the second passage only contains the 4-gram ”is the President of ”, since the ”is
the President of Italy ” 5-gram is not in the original question. To calculate the weight of n-grams
of every passage, rfist the greatest relevance of n-gram in the passage is identify and we assign to
this a weight equal to the sum of all term weights. Next, other n-grams less relevant are searched.
These n-grams are not composed by terms of found n-brams. The weight of these n-grams will be
the sum of all their weight terms divided by two. The weight of every term comes xfied by (
            <xref ref-type="bibr" rid="ref2">2</xref>
            ):
wk = 1 −
          </p>
          <p>log(nk)
1 + log(N )
.</p>
          <p>Where nk is the number of passages in which the associated term to the weight wk appears
and N is the number of system passages. We make the assumption that stopwords occur in every
passage (i.e., nk takes the value of N ). For instance, if the term appears once in the passage
collection, its weight will be equal to 1 (the greatest weight). Whereas if it is a stopword its
weight will be the lowest.</p>
          <p>
            Depending on the style used to submit a question, sometimes a term unrelated to the question
can obtain a greater weight than those assigned to the Name Entities (NE)9. Therefore, the (
            <xref ref-type="bibr" rid="ref2">2</xref>
            ) is
changed to give more weight to the NE than the rest of question terms and so to force its presence
in the rfist passages of the ranking. In order to identify the NE a natural language processing is
not used. We showed that in the most questions the NE start with either an uppercase letter or
a number. Once the terms are weighted, these are normalized for the sum of all terms are equal
to 1.
          </p>
          <p>
            4http://translate.google.com
5http://www.systranbox.com
6http://babelfish.altavista.com
7http://ets.freetranslation.com
8http://search.msn.com
9The NE are names of persons, organizations, places, dates, etc. The NE are the most important terms of the
question and it does not make sense return passages which do not contain these words.
(
            <xref ref-type="bibr" rid="ref1">1</xref>
            )
(
            <xref ref-type="bibr" rid="ref2">2</xref>
            )
          </p>
          <p>To calculate the weight of n-grams of every passage, first the greatest relevance of n-gram in
the passage is identify and we assign to this a weight equal to the sum of all term weights. Next
other n-grams less relevant are searched. These n-grams are not composed by terms of found
n-grams. The weight of these n-grams will be the sum of all their weight terms. A n-gram weight
is divided by two in order to avoid that its weight will be the same of the complete n-gram.</p>
          <p>The passage retrieval engine, JIRS, can be obtained at the following URL:
http://leto.dsic.upv.es:8080/jirs.
2.3</p>
        </sec>
        <sec id="sec-2-4-2">
          <title>Answer Extraction</title>
          <p>The input of this module is constituted by the n passages returned by the PR module and the
constraints (including the expected type of the answer) obtained through the Question Analysis
module. A TextCrawler is instantiated for each of the n passages with a set of patterns for the
expected type of the answer and a pre-processed version of the passage text. Some patterns can
be used for all languages; for instance, when looking for proper names, the pattern is the same
for all languages. The pre-processing of passage text consists in separating all the punctuation
characters from the words and in stripping off the annotations of the passage. It is important to
keep the punctuation symbols because we observed that they usually offer important clues for the
individuation of the answer: for instance, it is more frequent to observe a passage containing “The
president of Italy, Carlo Azeglio Ciampi” than one containing “The president of Italy IS Carlo
Azeglio Ciampi’ ; moreover, movie and book titles are often put between apices.</p>
          <p>
            The positions of the passages in which occur the constraints are marked before passing them to
the TextCrawlers. Some spell-checking function has been added in this phase by using Levenshtein
distance to compare strings. The TextCrawler begins its work by searching all the passage’s
substrings matching the expected answer pattern. Then a weight is assigned to each found substring
s, depending on the positions of the constraints, if s does not include any of the constraint words.
Let us denfie wt(s) and wc(s) as the weights assigned to a substring s as a function, respectively,
of its distance from the target constraints (
            <xref ref-type="bibr" rid="ref3">3</xref>
            ) and the context constraints (
            <xref ref-type="bibr" rid="ref4">4</xref>
            ) in the passage.
wt(s) =
          </p>
          <p>max
0&lt;k≤| p(t)|</p>
          <p>close(s, pk(t))
wc(s) =
1 |c|</p>
          <p>X</p>
          <p>max
|c| i=0 0&lt;j≤| p(ci)|
near(s, pj (ci))</p>
          <p>Where c is the vector of contextual constraints, p(ci) is the vector of positions of the constraint
ci in the passage, t is the target constraint and p(t) is the vector of positions of the target constraint
t in the passage. Close and near are two proximity function denfied as:</p>
          <p>Where p is a position in the passage and d(s, p) is computed as:
near(s, p) = exp −
close(s, p) = exp −
d(s, p) − 1</p>
          <p>5
d(s, p) − 1
2
2!
2!
d(s, p) =</p>
          <p>min
i=0,i=|s|</p>
          <p>p(si − p)2</p>
          <p>
            Where si indicates the position of the i-th word of the substring s. The proximity functions
can roughly be seen as fuzzy membership functions, where close(s,p) means that the substring s
is adjacent to the word at the position p, and near(s,p) means that the substring s is not far from
the word at position p. The 2 and 5 values roughly indicate the range within the position p where
the words are considered really “close” and “near”, and have been selected after some experiments
(
            <xref ref-type="bibr" rid="ref3">3</xref>
            )
(
            <xref ref-type="bibr" rid="ref4">4</xref>
            )
(
            <xref ref-type="bibr" rid="ref5">5</xref>
            )
(6)
(7)
with the CLEF2003 QA Spanish test set. Finally, the weight is assigned to the substring s in the
following way:
w(s) =
 wt(s) · wc(s) if |p(t)| &gt; 0 ∧ |c| &gt; 0

 wc(s) if |p(t)| = 0 ∧ |c| &gt; 0
 0wt(s) iefls|ce|w=he0re∧. |p(t)| &gt; 0
(8)
          </p>
          <p>This means that if in the passage have been found both the target constraint and the contextual
constraints, the product of the weights obtained for every constraint will be used; otherwise, only
the weight obtained for the constraints found in the passage will be used.</p>
          <p>Usually, the type of expected answer directly affects the weighting formula. For instance,
the “DEFINITION” questions (such as “Who is Jorge Amado?”) usually contain only the target
constraint, while “QUANTITY” questions (such as “How many inhabitants are there in Sweden?”)
contain both target and contextual constraints. For the other question types the target constraint
is rarely found in the passage, and weight computation relies only on the contextual constraints
(e.g. “From what port did the ferry Estonia leave for its last trip?”, port is the target constraint
but it is not mandatory in order to found the answer, since it is most common to say “The Estonia
left from Tallinn”, from which the reader can deduce that Tallinn is -or at least has- a port, than
“Estonia left from the port of Tallinn”).</p>
          <p>The lfiter module takes advantage of some knowledge resources, such as a mini knowledge
base or the web, in order to discard the candidate answers which do not match with an allowed
pattern or that do match with a forbidden pattern. For instance, a list of country names in the
four languages has been included in the knowledge base in order to filter country names when
looking for countries. When the lfiter rejects a candidate, the TextCrawler provide it with the
next best-weighted candidate, if there is one.</p>
          <p>Finally, when all TextCrawlers end their analysis of the text, the Answer Selection module
selects the answer to be returned by the system. The following strategies have been developed:
• Simple voting (SV): The returned answer corresponds to the candidate that occurs most
frequently as passage candidate.
•
•
•
•</p>
          <p>Weighted voting (WV): Each vote is multiplied for the weight assigned to the candidate by
the TextCrawler and for the passage weight as returned by the PR module.</p>
          <p>Maximum weight (MW): The candidate with the highest weight and occurring in the best
ranked passage is returned.</p>
          <p>Double voting (DV): As simple voting, but taking into account the second best candidates
of each passage.</p>
          <p>Top (TOP): The candidate elected by the best weighted passage is returned.</p>
          <p>
            SV is used for every “NAME” type question, while WV is used for all other types. For “NAME”
questions, when two candidates obtain the same number of votes, the Answer Selection module
looks at the DV answer. If there is still an ambiguity, then the WV strategy is used. For other
types of question, the module use directly the MW. TOP is used only to assign the confidence
score to the answer, obtained by dividing the number of strategies giving the same answer by the
total number of strategies (
            <xref ref-type="bibr" rid="ref5">5</xref>
            ), multiplied for other measures depending on the number of passages
returned (np/N , where N is the maximum number of passages that can be returned by the PR
module and np is the number of passages actually returned) and the averaged passage weight. The
weighting of NIL answers is slightly different, since is obtained as 1 − np/N if np &gt; 0, 0 elsewhere.
          </p>
          <p>In our system, candidates are compared by means of a partial string match, therefore Boris
Eltsin and Eltsin are considered as two votes for the same candidate. Later, the Answer Selection
module returns the answer in the form occuring most frequently.</p>
          <p>For this participation we developed an additional web-corrected weighting strategy, based on
web counts of the question constraints. With this strategy, the MSN Search engine is initially
queried with the target and contextual constraints, returning a pc number of pages containing
them. Then, for each of the candidate answers, another search is done by putting the candidate
answer itself together with the constraints, obtaining pa pages. Therefore, the final weight assigned
to the candidate answer is multiplied by pa/pc.
3</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Experiments and Results</title>
      <p>We submitted two runs for each of the following monolingual task: Spanish, Italian and French,
while only one run was submitted for the Spanish-English and English-Spanish cross-language
tasks. The second runs (labelled upv 052 ) of the monolingual tasks use the web-corrected
weighting strategy, while the first runs use the clean system, without the recourse to the web. In Table
2 we show the overall accuracy obtained in all the runs.</p>
      <p>task
es-es
it-it
fr-fr
en-es
es-en
run
upv 051
upv 052
upv 051
upv 052
upv 051
upv 052
upv 051
upv 051</p>
      <p>It can be observed that the web weighting produced worse results, even if the 0.00% obtained
for the upv 052eses run for definition questions can be due to an undetected problem. Denfiition
questions obtained better results than other kinds of questions, and we suppose this is due to
the ease in identifying the target constraint in these cases. Moreover, the results for the Spanish
monolingual tasks are better than the other ones, and we believe this is due mostly to the fact that
the question classicfiation was performed combining the results of the SVM and pattern classifiers,
whereas for French and Italian the expected type of the answer was obtained only via the
patternbased classiefir. Another reason can be that the majority of the preliminary experiments were
done over the CLEF2003 Spanish corpus, therefore resulting in the denfiition of more accurate
patterns for the Spanish Answer Extractor.</p>
      <p>In order to evaluate the impact of the answer types, we grouped the results obtained for the
best run by the defined categories , as shown in Table 3. As it can be seen, the best results
have been obtained for the “LOCATION.COUNTRY” category, as expected, due to the use of a
customized knowledge source. The worst results have been obtained for the questions “OTHER”,
for which there is not a defined strategy.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions and Further Work</title>
      <p>The obtained results are comparable to those we obtained over the past year corpus, and therefore
are as expected. The main drawback of the system is constituted by the cost of denfiing patterns
for the Answer Extraction module: many experiments are needed in order to obtain a satisfactory
pattern, and this has to be done for each expected answer type in each category. Moreover, apart
from some well-denfied categories for which a pattern can be denfied, in other cases is almost
impossible to identify a pattern that can match with all the answers of such questions. Therefore,
we plan to use in the future both machine learning approaches in order to master this problem,
together with more knowledge bases, since the small country database allowed to obtain good
results for the COUNTRY questions. In the cross-language task, the Passage Retrieval module
worked well despite the generally acknowledged low quality of web translations, allowing to obtain
results slightly worse than those obtained in the monolingual task.</p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgments</title>
      <p>We would like to thank CONACyT for partially supporting this work under the grant 43990A-1
as well as R2D2 CICYT (TIC2003-07158-C04-03) and ICT EU-India (ALA/95/23/2003/077-054)
research projects. A special acknowledgement to Manuel Monets´ y Go´mez for support during his
stance at the Universidad Polietc´nica de Valencia.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Magnini</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Negri</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Prevete</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tanev</surname>
          </string-name>
          , H.:
          <article-title>Multilingual question/answering: the DIOGENE system</article-title>
          .
          <source>In: The 10th Text REtrieval Conference</source>
          . (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Aunimo</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuuskoski</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Makkonen</surname>
          </string-name>
          , J.:
          <article-title>Cross-language question answering at the university of helsinki</article-title>
          . In:
          <article-title>Workshop of the Cross-Lingual Evaluation Forum (CLEF</article-title>
          <year>2004</year>
          ), Bath, UK (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Vicedo</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Izquierdo</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Llopis</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Muoz</surname>
          </string-name>
          , R.:
          <article-title>Question answering in spanish</article-title>
          .
          <source>In: Workshop of the Cross-Lingual Evaluation Forum (CLEF</source>
          <year>2003</year>
          ), Trondheim, Norway (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Neumann</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sacaleanu</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Experiments on robust nl question interpretation and multilayered document annotation for a cross-language question/answering system</article-title>
          .
          <source>In: Workshop of the Cross-Lingual Evaluation Forum (CLEF</source>
          <year>2004</year>
          ), Bath, UK (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Moldovan</surname>
            ,
            <given-names>D.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pasca</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Harabagiu</surname>
            ,
            <given-names>S.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Surdeanu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Performance issues and error analysis in an open-domain question answering system</article-title>
          .
          <source>ACM Trans. Inf. Syst</source>
          .
          <volume>21</volume>
          (
          <year>2003</year>
          )
          <fpage>133</fpage>
          -
          <lpage>154</lpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>