<!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>Ontology-based information extraction in agents' hands</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Brigitte Endres-Niggemeyer</string-name>
          <email>Brigitte.Endres-Niggemeyer@fh-hannover.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Applied Sciences and Arts Faculty III - Media</institution>
          ,
          <addr-line>Information and Design Expo Plaza 12, 30539 Hannover</addr-line>
          ,
          <country>Germany phone</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This paper briefly reports on an agent team doing ontology-based information extraction (OBIE, IE) for summarization in clinical Bone Marrow Transplantation (BMT). The SummIt-BMT agents contribute to OBIE through their flexible use of ontological knowledge. They assess input text passages from web retrieval with respect to a user query. They use an ontology that supports IE in particular with concepts, propositions, unifiers and paraphrases. Sentences with IE hits are annotated with the IDs of ontology propositions that recognize an instance of their content in the sentence. The agents are beginners, but they perform. Distributing ontology-based IE to agents has some promise: it enables parallel processing, it eases tracking of decisions and their explanation to users.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>The agents are Java classes that extend the jade.core.Agent1. They run in a JADE
container and use standard ACL (Agent Communication Language)2 means of
interaction. All agents share a set of simple calls. Most calls consist of the name of the
addressed agent and a simple German codeword: los (go), mehr (more), fertig (done).
Only the tidy-up agent Paula is also assigned a more sophisticated command when
she has to reorganize results for presentation: sumup (sum up). When broadcasting the
close-down message to all agents, Kurt says schluss (finish) to make the agents delete.</p>
      <p>The system blackboards serve data communication. The ScenarioBoard stores
the query specification and the findings of the agents. While they interpret a sentence,
the agents exchange data via the TextBlackBoard. External input comes from the text
passage retrieval result. At the end of a session, the retrieval result (organized in
documents, paragraphs and sentences) is augmented with the agents’ relevance
judgements. They mark the relevant text clips, which are presented to the user.</p>
    </sec>
    <sec id="sec-2">
      <title>2. The Ontology</title>
      <p>The agents and the system users share an ontology of the application domain Bone
Marrow Transplantation (BMT). The ontology was developed by human experts from
a corpus of US BMT papers and user queries of physicians at Hanover Medical
School. It is stored in a MySQL3 database. In the ontology the agents find the types of
knowledge they need for IE (see Table 1): concepts, propositions, proposition syntax
records, unifiers, paraphrases, scenarios, and some technical help tables.</p>
      <p>We use a Prolog style first order predicate logic representation. Inside the
MySQL database, all knowledge items are split into separate tables. Propositions</p>
      <sec id="sec-2-1">
        <title>1 See JADE at http://jade.tilab.com/ 2 http://www.fipa.org/repository/aclspecs.html 3 http://www.mysql.de/</title>
        <p>
          comprise a head and a set of arguments allocated to the propositionhead and
propositionargument tables, respectively. Their proposition ID keeps them together.
Every proposition obeys a syntax record that states its argument roles. Syntax tables
are built like proposition tables. Unifiers are lists of concepts provided by domain
experts. They unify ontology propositions and text-based candidate propositions: a
concept of the accredited unifier adapts the ontology proposition so that it matches a
candidate proposition from input. This expands the coverage of the ontology
propositions. Paraphrases map ontology propositions to possible surface formulations.
They are macropropositions
          <xref ref-type="bibr" rid="ref6">(Kintsch and van Dijk 1983)</xref>
          : parsed surface phrases with
argument roles as variables, so that one paraphrase can serve a class of proposition
occurrences in text. The scenario representation stores the whole presentation on the
JSP4-based user interface.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. The agents’ jobs</title>
      <p>The agents specialize in different IE subtasks. They produce a summarization effect
by extracting only propositions that match the query and by throwing away doubles.
All agents activate each other as often as needed.</p>
      <p>Scenario interpretation. Peter accepts a user query scenario and the user’s start
signal. Into the scenario form, the user has entered what is known about the current
situation and what knowledge is missing. The agent parses this organized query,
deposits the resulting propositions on the ScenarioBoard and activates Kurt.
Input. Kurt fetches the query and obtains results from outside web retrieval and text
passage retrieval. He submits good input sentences one by one to the parser (the</p>
      <sec id="sec-3-1">
        <title>4 Java Server Pages - http://java.sun.com/products/jsp/</title>
        <p>Connexor5 FDG parser) and feeds wording and parser output into the agents’
production line by putting it onto the TextBlackBoard. He calls Frieda.</p>
        <p>Let us assume for the sake of a demo that Kurt comes up with the sentence
“All patients at cmv risk were administered high-dose ganciclovir.“
It will be hit by 9 ontology propositions (see table 2). We follow proposition 17685.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Candidate propositions in a parsed sentence. Frieda picks up the new input.</title>
      <p>She finds candidate propositions in a parsed sentence and annotates them (see table 3,
columns 8 – 13). She distinguishes verbal, prepositional and attributive candidate
propositions. As soon as her annotation is done, Frieda activates the agent Heini.</p>
    </sec>
    <sec id="sec-5">
      <title>Sending propositions to interpretation. Heini is the proposition dispatcher. He</title>
      <p>selects the propositions one by one from the current sentence and initiates their
verification. As long as he has input, he submits it to Hugo. When all propositions of
the current sentence are done, he calls Paula, the tidy-up agent.</p>
      <p>Finding ontology propositions. Hugo checks whether the current proposition shares
at least two ontology concepts with any of the ontology propositions. As soon as he is
done with a concept pair and has some results, Hugo passes the text-based proposition
with the IDs of selected ontology propositions - and possibly some add-ons due to
unifiers - to the TextBlackbord. He activates Rudi. If Hugo cannot find matching
ontology propositions, he returns to Heini and asks for new supplies.</p>
      <p>When Hugo begins to treat a new proposition, he puts the IDs of occurring ontology</p>
      <sec id="sec-5-1">
        <title>5 http://www.connexor.com/</title>
        <p>concept IDs into its record. Using them he may find several concept pairs that call
ontology propositions. Eventually he selects proposition 17685 (see figure 2):
administer (, patient, methotrexate).</p>
        <p>His pick takes the direct and the unifier pathway. According to the unifier in the
proposition, any drug of the ontology may be put in. As ganciclovir is needed, Hugo
adds an ersatz argument that contains ganciclovir. He puts his results into the package
for Rudi.</p>
        <p>Concept subsumption. Rudi tries to subsume text-based propositions under
ontology propositions with at least two concepts in agreement. If the subsumption
works, the proposition from text may be a legitimate instance of the subsuming
ontology proposition, as far as ontology concepts are concerned. If so, Rudi passes it
to Herta. She will inspect the verbal relation.</p>
        <p>When Rudi fetches proposition 17685 that Hugo proposed, he looks for ersatz
arguments, finds one and puts it in. Now his version of proposition 17685 says:
administer (, patient, ganciclovir).</p>
        <p>As figure 2 shows, the proposition has some open slots. Rudi tries to fill them,
subsuming concepts from the text-based proposition. He succeeds once: he subsumes
high dose under concept 43174 (quantity qualifier) in position 5. Now his proposition
reads:</p>
        <p>administer (, patient, ganciclovir, , high dose).</p>
        <p>As all obligatory arguments are satisfied, Rudi passes his result (see table 4) to Herta.
Verification of the verbal relation. Herta’s task is to check the verbal tie that keeps
the ontology concepts together. She verifies the relation information against sets of
paraphrases. If a paraphrase provides a relation wording that is compatible with the
ontology proposition chosen by Rudi and the relation wording of the text surface,
Herta has found the last missing link. She states the recognition success for that
proposition by assigning the ID of the subsuming ontology proposition to the text
sentence. She asks Rudi for fresh input.</p>
        <p>In the test case, Herta receives Rudi’s reworked ontology proposition 17685. She
writes the ontology concept’s IDs into the parse of proposition 1 (cf. table 3).</p>
        <p>Herta procures her paraphrase set of proposition 17685. She will find the test
paraphrase 14068437 (see table 5) that will fit. Herta seizes the concepts found in the
text-based proposition via their hypercids and attaches them to the hypercids /
argument roles of the paraphrase. Then she checks in three passes:
From satisfied roles she goes towards the root of the dependency tree and checks all
items on her way to ok.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>4. Evaluation</title>
      <p>Bcr-abl1
Bcr-abl2
Bcr-abl3
Childhood ALL1
Childhood ALL2
Childhood ALL3
CMVganciclovir1
CMVganciclovir2</p>
      <p>CMVganciclovir3
She compares the verbal chain of the proposition and paraphrase. There should be a
reasonable fit, depending on word classes. If so, Herta places her controls.
At the end, Herta starts from the ontology proposition arguments without fillers.</p>
      <p>Again she goes up the dependency hierarchy and sets all words on her way to
optional.</p>
      <p>If Herta obtains all ticks as needed, she has verified the verbal relation. In the present
case, she has found</p>
      <p>“patient is administered ganciclovir”.</p>
      <p>She writes the hit ID to the TextBB. Paula will reorganize all results.
depend
relation
subj:
v-ch:
main:
obj:
hypercid
38811
0
0
39375
deptarget
3
4
1
4
Cleaning up. Paula is the organizer. When processing of a sentence is finished and
has brought some results, Paula stores the sentence with the recognition results to the
ScenarioBoard. She tells Kurt to provide new input. When all input is done, Paula
reorganizes the ScenarioBoard. She sorts the recognition IDs of individual sentences
so that she obtains orderly recognition profiles. Based on the profiles and the wording
of the sentences, Paula weeds out doubles. Surviving hits are added to their text clips
in the retrieval result. Paula asks Kurt to close down the agent community.
A biochemist and the author evaluated the agents’ performance in a testbed with a
small sample of Medline abstracts. Methods were adapted from qualitative field
research. The agents ran twice. Between their two runs, the judges improved the
ontology, and results became much better. Ontology quality matters. Often the agents
stumble over simple human errors, sloppy categorizations or into ontology gaps. In
overcrowded areas, they are obstructed by too many chances to derive the same
recognition result.</p>
      <p>In their second run, the agents achieved fair scores. They are still beginners, but
they come up with results. Table 6 shows their marks on a familiar 5-score scale.</p>
    </sec>
    <sec id="sec-7">
      <title>5. Sources and related approaches</title>
      <p>
        SummIt-BMT integrates knowledge from many sources. Ontology and agents are
based on empirical observation of human summarizers
        <xref ref-type="bibr" rid="ref4">(Endres-Niggemeyer 1998)</xref>
        ,
following human task organization as much as possible. Humans summarize content.
A domain terminology / an ontology is a natural start for their IE activities. For IE
        <xref ref-type="bibr" rid="ref1">(Appelt and Israel 1999)</xref>
        and summarization an extended ontology is required, so
propositions, unifiers, paraphrases and scenarios were integrated. The agents’ IE is
adaptive
        <xref ref-type="bibr" rid="ref7">(Turmo et al. 2006)</xref>
        , given a domain ontology. It seemed consistent to
distribute the human-like strategies to an agent community (JADE - Bellemine et al.
2007) and to give the agents task-specific blackboards for data interchange and
storage
        <xref ref-type="bibr" rid="ref4">(already in the SimSum system – Endres-Niggemeyer 1998)</xref>
        . Implementing
this at the state of the art led to OBIE, to agents using blackboards, to unifier use, to
paraphrases incorporating parsed macropropositions. As mainstream evaluation does
not work for the agents-and-ontology approach, a small-scale evaluation procedure
was drawn from qualitative field research methods
        <xref ref-type="bibr" rid="ref5">(Glaser and Strauss 1980)</xref>
        .
      </p>
    </sec>
    <sec id="sec-8">
      <title>6. Conclusion</title>
      <p>Ontology-based IE (for summarization) can be distributed to an agent team. This has
advantages: Agents’ decisions can be tracked more easily. The agents may explain
them. New agents are easily integrated, so that the community “learns”. If running in
parallel, agent teams may be fast and scale up well.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Appelt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Israel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Introduction to Information Extraction Technology.
          <source>Tutorial at the International Joint Conference on Artificial Intelligence (IJCAI-99)</source>
          , Stockholm (
          <year>1999</year>
          ), http://www.dfki.de/~neumann/esslli04/reader/overview/IJCAI99.pdf
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Bellifemine</surname>
            ,
            <given-names>F. L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Caire</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greenwood</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Developing Multi-Agent Systems with JADE</article-title>
          . Wiley (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Endres-Niggemeyer</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Jauris-Heipke</surname>
            ,
            <given-names>S</given-names>
          </string-name>
          ; Pinsky,
          <string-name>
            <given-names>M.</given-names>
            ;
            <surname>Ulbricht</surname>
          </string-name>
          ,
          <string-name>
            <surname>U.</surname>
          </string-name>
          :
          <article-title>Wissen gewinnen durch Wissen: Ontologiebasierte Informationsextraktion</article-title>
          . Information - Wissenschaft &amp; Praxis,
          <fpage>301</fpage>
          -
          <lpage>308</lpage>
          (
          <year>2006</year>
          ), http://endres-niggemeyer.fh-hannover.de/OntologiebasierteIE.pdf
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Endres-Niggemeyer</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Summarizing information</article-title>
          . Springer, Berlin (
          <year>1998</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Glaser</surname>
            ,
            <given-names>B.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Strauss</surname>
            ,
            <given-names>A.L.</given-names>
          </string-name>
          :
          <article-title>The discovery of grounded theory: Strategies for qualitative research</article-title>
          . 11th ed.
          <source>Aldine Atherton</source>
          , New York (
          <year>1980</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Kintsch</surname>
            , W., van Dijk,
            <given-names>T. A.</given-names>
          </string-name>
          :
          <article-title>Strategies of discourse comprehension</article-title>
          . Academic Press, New York (
          <year>1983</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Turmo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ageno</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Català</surname>
          </string-name>
          , N.:
          <article-title>Adaptive information extraction</article-title>
          .
          <source>ACM Computing Surveys 38, 2, Article</source>
          <volume>4</volume>
          (
          <year>2006</year>
          ), http://www.lsi.upc.es/~ncatala/home-angles.html
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>