File Information

File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/02/c02-2017_metho.xml

Size: 17,272 bytes

Last Modified: 2025-10-06 14:07:50

<?xml version="1.0" standalone="yes"?>
<Paper uid="C02-2017">
  <Title>Robust Interpretation of User Requests for Text Retrieval in a Multimodal Environment</Title>
  <Section position="4" start_page="0" end_page="2" type="metho">
    <SectionTitle>
3 NL Text or Speech Input: Language
</SectionTitle>
    <Paragraph position="0"/>
    <Section position="1" start_page="0" end_page="1" type="sub_section">
      <SectionTitle>
Analysis
</SectionTitle>
      <Paragraph position="0"> Users can access articles with spoken or typed utterances. Web queries may relate to the way some particular piece of infomation is presented and what this information refers to. They may also express browser commands or a combination of browser and query commands while referring either to structure (Search for Noll in the previous newspaper)orto content (Search for Noll in the sports' section).</Paragraph>
      <Paragraph position="1">  Within our application web queries may relate to the way some particular piece of information is presented (e.g. the browser's history about the accessed pages), and what this information refers to (e.g. the section a search string belongs to). To successfully interpret such an utterance, one needs to analyze its structure to find out which of these command modes the utterance can be assigned to. This is done in a two-step process. First, each word is looked up in a lexicon and assigned a semantic category. Second, certain rules are applied to strings of these semantic categories. As a result, commands and search restrictions are recognized and the rest of the utterance is passed to search expression interpretation.</Paragraph>
    </Section>
    <Section position="2" start_page="1" end_page="2" type="sub_section">
      <SectionTitle>
3.1 Keyword Spotting and Semantic
Classification
</SectionTitle>
      <Paragraph position="0"> We will now describe in more detail how the user's input is parsed within the Natural Language Interface, and structured into either search patterns - consisting of search strings, sections, dates and timeranges, that are understood by the search engine of the newspaper - or commands for the Java browser. Structure is analyzed by a flexible bottom-up parser using a rule-based mechanism with simple syntactic patterns.</Paragraph>
      <Paragraph position="1"> In the user's query input, each word of the utterance is looked up in a lexicon and - if found - assigned a corresponding semantic category. This lexicon contains a small list of semantic categories, that we consider important for the interpretation of an utterance in the domain of searching articles and browsing.</Paragraph>
      <Paragraph position="2"> The lexicon assigns semantic classes for closed categories that are: AF nouns denoting search, newspaper, section, links like &amp;quot;Suche&amp;quot; (search) or &amp;quot;Artikel&amp;quot; (article). AF nouns expressing a specific section like &amp;quot;Wirtschaft&amp;quot; (economy).</Paragraph>
      <Paragraph position="3"> AF nouns expressing a specific page like &amp;quot;Homepage&amp;quot;. AF temporal expressions and temporal prepositions like &amp;quot;Monat&amp;quot; (month) and &amp;quot;vor&amp;quot; (ago).  We will use the italic font for language expressions and the typewriter font for meta-language expressions.</Paragraph>
      <Paragraph position="4"> AF expressions indicating something new like in a &amp;quot;neue&amp;quot; (new) search.</Paragraph>
      <Paragraph position="5"> AF adjectives and adverbs indicating direction in time or space, like in &amp;quot;letzte&amp;quot; (previous) search or in &amp;quot;letzte&amp;quot; (last) week.</Paragraph>
      <Paragraph position="6"> AF cardinal and ordinal numbers used in conjunction with temporal expressions and link expressions, like in &amp;quot;zwei&amp;quot; (two) years ago or when opening the &amp;quot;ersten&amp;quot; (first) link.</Paragraph>
      <Paragraph position="7"> AF adverbs and connectives indicating constraints on search mode, like &amp;quot;nur&amp;quot; (only) and &amp;quot;nicht&amp;quot; (not). AF prepositions indicating whether the request was to browse or to search, cf &amp;quot;zum Sport&amp;quot; (to the sports' section) versus &amp;quot;im Sport&amp;quot; (within the sports' section). null AF stop words.</Paragraph>
      <Paragraph position="8"> All words found within the lexicon are replaced by their corresponding semantic classes, search expressions are marked as such, and stop words are deleted.</Paragraph>
      <Paragraph position="9"> We distinguish between semantic atoms and semantic classes: atoms by itself do not have a meaning that can be used for searching or browsing commands. They have to be joined following a given set of rules to form a semantic class. To yield such a class, rules are applied in - mostly - one to three steps. However, rules are not always necessary, a word may also be mapped onto a semantic class right away. Our lexicon has about 30 semantic atoms, from which about 40 semantic classes can be formed. Certain patterns of semantic classes which we obtain through lexical look-up can be assigned new meanings via rules. So, by composing the individual meanings, another more abstract meaning is defined. This compositional approach to interpretation is supported by the layered approach. The result of this process is a list of chunks  , where stress is laid on the content words. The advantage of concentrating on chunks is - especially within German, a language with a relatively free word order - that the order in which chunks occur is much more flexible than the order of words within chunks. This approach might be too shallow for a deeper semantic analysis, but is sufficient for our needs. So, e.g.  According to Abney (1991) a chunk is defined in terms of major heads where a major head is any content word that does not appear between a function word f and the content word f selects, OR a pronoun selected by a preposition. [...] The typical chunk consists of a single content word surrounded by a constellation of function words, matching a fixed template. &amp;quot;letzte&amp;quot; (last) plus a time expression would together yield the new meaning date -1w. To overcome ambiguities and avoid potential rule conflicts, rules spanning larger chunks have a higher priority and are thus preferred, such that &amp;quot;zur&amp;quot;uck zum Sport&amp;quot; (back to sports) would win over &amp;quot;zur&amp;quot;uck&amp;quot; (back). If no rules can be applied to a semantic class, it will be ignored in the final interpretation.</Paragraph>
      <Paragraph position="10"> Summing up the process of the structure analysis, the partial analyses are stored, a sequence of partial analyses from the set of rules is chosen, and then combined to yield larger structures.</Paragraph>
    </Section>
    <Section position="3" start_page="2" end_page="2" type="sub_section">
      <SectionTitle>
3.2 Search String Filter: Extraction of
Adjective-Noun Pairs
</SectionTitle>
      <Paragraph position="0"> In the next step, the content of the query must be analyzed in more detail. In this chapter we will explain how content analysis is done in our application.</Paragraph>
      <Paragraph position="1"> From a corpus of Austrian newspaper texts, adjective-noun- and adjective-proper-name pairs were extracted and counted. These pairs were stored and consulted in query interpretation. Since the texts are tagged manually, the lists of adjectives and nouns/proper names contain a considerable number of errors. Therefore it is necessary to use large amounts of text; it may even be useful to eventually introduce a threshold so that only adjectivenoun/proper-name pairs which appear more than once or a certain number of times are considered.</Paragraph>
      <Paragraph position="2"> This of course can not prevent systematic tagging errors.</Paragraph>
      <Paragraph position="3"> A robust stemming algorithm maps all adjectivenoun/proper-name pairs to an approximate 'stem', thus eliminating flectional forms which result in morphological variation which is typical for the German language. For the purpose of creating a repository of co-occurrence pairs, we do not care about proper stemming. Rather, it is our aim to map various inflectional forms onto one base form.</Paragraph>
      <Paragraph position="4"> Spelling variations, numbers etc. are smoothed as far as it is possible in automatic processing. For example, ordinal numbers which are labelled as adjectives are reduced to a placeholder for numbers.</Paragraph>
      <Paragraph position="5"> Whenever a word is encountered in processing which can be considered an adjective, it is kept.</Paragraph>
      <Paragraph position="6"> Whenever the following word may be a noun or a proper name, it is checked whether the adjectivenoun/proper-name combination is contained in the repository of adjective-noun/proper-name combinations which has previously been extracted from a corpus. If the adjective-noun/proper-name combination is found, it is passed on to the search engine as a query. Whenever the combination has not occurred in the corpus, only the noun or proper name is considered a key word.</Paragraph>
      <Paragraph position="7"> Again, inflectional variations as well as different spellings etc. are mapped onto base forms as far as possible. The same stemming algorithm is used which was employed in creating the repository of adjective-noun/proper name pairs. The robust (and rough) stemming and categorization algorithms produce a certain amount of mistakes in the lists of pairs as well as in the mapping process, but taking into account larger text corpora evens out these problems as more text is processed.</Paragraph>
      <Paragraph position="8"> Our approach distinguishes noun phrases which have a record of co-occurrence from noun phrases which may be spontaneous expressions or modifications or even errors created by users. For example, the phrase &amp;quot;europ&amp;quot;aische Staaten&amp;quot; (European countries) would be retained while &amp;quot;beteiligte Staaten&amp;quot; (participating countries) would be reduced to the noun. Some adjectives used in search expressions serve to qualify the global search expression rather than the noun or proper name in quesion. For example, a search for yesterday's speech would only yield articles from the day after a speech, not about the speech in general.</Paragraph>
    </Section>
  </Section>
  <Section position="5" start_page="2" end_page="2" type="metho">
    <SectionTitle>
4 Action History: Integration of the
</SectionTitle>
    <Paragraph position="0"> knowledge sources Multimodal dialogue requires a unified interpretation of the involved knowledge sources, all input modes have to be considered. The information transmitted needs to be interpreted within discourse context including previous user actions, possibly with data coming from other input modes.</Paragraph>
    <Paragraph position="1"> After the analysis of the user utterance has been performed in the pattern-matching and the searchword-extraction modules, the computed meaning of the utterance has to been interpreted in the context of the discourse sitiuation. This concerns mostly the history of previous queries. Here, it is important to consult previous queries in all possible input modes (spoken, typed, mouse clicks). Therefore, a record of the action history is kept and consulted.</Paragraph>
    <Paragraph position="2"> All typed, written and spoken actions are assigned an entry in the action history where the main parameters and their values are collected.</Paragraph>
    <Paragraph position="3"> With this contextual information, the meaning of the user's utterance as the sum of the results of the component analyses is computed in the global discourse context. Underspecified queries can be interpreted in the discourse contexts, and parameters are filled. Thus, the results are combined into one unambiguous command line.</Paragraph>
    <Paragraph position="4"> A powerful interaction control is necessary in order to recognize the user's intent by comparing it to what the system knows about the addressed entities and their relation to each other as well as to the data which are accessible at the specific moment in the interaction. The interface language between the language analysis module and the controller consists of a fixed set of parameters, which are assigned appropriate values:</Paragraph>
  </Section>
  <Section position="6" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF DIRECTION
</SectionTitle>
    <Paragraph position="0"> the direction for browsing (forward, backward)</Paragraph>
  </Section>
  <Section position="7" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF SECTION
</SectionTitle>
    <Paragraph position="0"> the section in the newspaper (politics, sports, ...)</Paragraph>
  </Section>
  <Section position="8" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF SEARCHSTRING
</SectionTitle>
    <Paragraph position="0"> the string which has to be searched by the newspaper search engine</Paragraph>
  </Section>
  <Section position="9" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF DATE
</SectionTitle>
    <Paragraph position="0"> the date when the article to be searched has appeared (also intervals)</Paragraph>
  </Section>
  <Section position="10" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF ZEITUNG (NEWSPAPER)
</SectionTitle>
    <Paragraph position="0"> the newspaper which is supposed to be searched</Paragraph>
  </Section>
  <Section position="11" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF OPENLINK
</SectionTitle>
    <Paragraph position="0"> the link in a document which should be followed in the browser</Paragraph>
  </Section>
  <Section position="12" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF OPENURL
</SectionTitle>
    <Paragraph position="0"> the URL which is supposed to be opened by the browser The outcome - or left-hand side - of a rule-based simplification can be divided into three command types: AF Simple Search Command, New Search Command: E.g. &amp;quot;Suche nach Camilleri im Kulturressort&amp;quot; (Search for Camilleri in the cultural section) or &amp;quot;Neue Suche beginnen mit Krimis&amp;quot; (Start a new search on thrillers).</Paragraph>
  </Section>
  <Section position="13" start_page="2" end_page="2" type="metho">
    <SectionTitle>
AF Complex Search Command: Search using the Ac-
</SectionTitle>
    <Paragraph position="0"> tion history. E.g. &amp;quot;Suche nach Christie im letzten Ressort&amp;quot; (Search for Christie in the previous section). null AF Simple History Browsing Commands: Normal Browsing using the Accessed Page History. E.g.</Paragraph>
    <Paragraph position="1"> &amp;quot;Zur n&amp;quot;achsten Seite gehen&amp;quot; (Go to the next page). AF Complex History Browsing Commands: Browse using the Action history. E.g. &amp;quot;Geh zum letzten Ressort&amp;quot; (Go to the last ressort) or &amp;quot;Zur&amp;quot;uck zur Suche mit Montalbano gehen&amp;quot; (Go back to the search containing Montalbano).</Paragraph>
    <Paragraph position="2"> AF WWW Browsing: E.g. &amp;quot;Geh zum heutigen Sportbereich&amp;quot; (Go to today's sport section), &amp;quot;den Standard lesen&amp;quot; (read the Standard) or &amp;quot;Geh zur Homepage&amp;quot; (Go home).</Paragraph>
    <Paragraph position="3"> AF Opening Link Command: E.g.&amp;quot;den ersten Artikel &amp;quot;offnen&amp;quot; (Open the first article) The action history browsing command refers to the timeline and the point of reference of a browsing but also of a search command. For instance, take an utterance, where someone wants to search for a topic but within a context that was defined in the previous search. For our application, we would first have to locate the user's point of reference and then execute her search command. If there is no given reference, we assume by default that a new time point is created in our time line.</Paragraph>
    <Paragraph position="4"> One such command could look like this: the utterance &amp;quot;Ich suche etwas &amp;quot;uber Highsmith im letzten Ressort&amp;quot; (I am looking for something about Highsmith within the previous section) would be mapped to: DIRECTION 0, SECTION x (where x is the section of the action with index -1), SEARCHSTRING Highsmith, TIME nil, ZEITUNG nil. We are not moving in the timeline, instead we are adding a new search action, thus the direction is zero. Anyway, the controller has to look up the action history to fill the value of the section. The values of all empty parameters will be filled with the values of the last actions, so in our example, these parameters have not been explicitly filled and remain empty (nil).</Paragraph>
  </Section>
  <Section position="14" start_page="2" end_page="2" type="metho">
    <SectionTitle>
5 Result: Translating into Http Request or
</SectionTitle>
    <Paragraph position="0"/>
    <Section position="1" start_page="2" end_page="2" type="sub_section">
      <SectionTitle>
Browser Command
</SectionTitle>
      <Paragraph position="0"> After the command has been processed by the control module, it is either executed by the Java browser or translated into a GET method through an Http request to the newspaper's archive database. The resulting articles are displayed in the Java browser, another search can be started by the user.</Paragraph>
    </Section>
  </Section>
class="xml-element"></Paper>
Download Original XML