<!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>Reasoning with Textual Queries: A Case of Medical Text</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Damir Juric</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giorgos Stoilos</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Szymon Wartak</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mohammad Khodadadi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Babylon Health</institution>
          ,
          <addr-line>London, SW3 3DD</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Text understanding and reasoning is a very di cult but highly important problem with many practical applications like chatbots. Babylon Health is building an AI-based symptom checking service o ered through a chatbot. Depending on what medical terms appear in the text, nodes in a Probabilistic Graph Model (PGM) need to be activated in order to start the symptom checking process. We developed a Semantic Technologies-based solution where OWL concepts are build from user text (in an attempt to capture its meaning) and then compared with respect to subsumption against the conditions in PGM which are encoded using concepts form a medical KB. We developed a knowledge extraction method as well as a hybrid reasoning algorithm that compares concepts using both logical axioms from the medical KB as well as potentially additional information hidden in their labels. We implemented all our algorithms and conducted an experimental evaluation comparing to a baseline text annotation and an ML-based approach obtaining encouraging results.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Text understanding and reasoning is at the heart of modern chatbots. Users
input text which needs to be interpreted in order to activate the respective
background services and accomplish the requested task. Babylon Health o ers a
chatbot which users can use to check their symptoms. Users input text such as
\I am feeling my head is going to explode since this morning " and subsequently
nodes in a Probabilistic Graph Model (PGM) need to be activated in order to ask
the user about more speci c questions. The nodes in PGM are annotated with
classes from a medical KB constructed in Babylon which integrates well-known
medical ontologies like SNOMED, NCI, and more [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. To accomplish the above
task medical terms in user text need to be identi ed and compared against
medical concepts in the PGM. A naive approach would be to annotate user text using
some text annotator and then check these concepts in the PGM. However, this
approach does not capture potential relations between the medical terms in the
user text, e.g., the relations between \sever" with \pain"and \morning" in our
running example. To understand meaning in text we designed a knowledge
extraction method which given small medical phrases extracts concept de nitions,
e.g., given \recent head injury" it would ideally extract the concept expression
RecentInjury u 9locatedIn:Head.
      </p>
      <p>Subsequently, we implemented a custom reasoner to compare such concept
expressions with concepts in PGM. The need to implement a custom reasoner
instead of an o the shelf one is motivated by the fact that although many
of the ontologies we use are well-engineered, in many cases they contain
\illde ned" concepts whose meaning is still implicitly encoded in free text. For
example, SNOMED does not de ne the concept RecentInjury in terms of Injury
and Recent. Hence, the following subsumption cannot be identi ed by an OWL
reasoner:</p>
      <p>RecentInjury u 9locatedIn:Head v Injury u 9occurred:Recently
(1)</p>
      <p>Surprisingly, SNOMED contains a large number of such \ill-de ned"
concepts other examples of which are ThermalInjury, which is not de ned in terms
of Thermal and Injury, SevereDepression which is not de ned in terms of Severe
and Depression, CardiacMuscleThickness, and more. Our hybrid reasoner is using
the previous knowledge extraction method coupled with logic-based techniques
to compare concepts w.r.t. subsumption. Another challenge for our reasoner was
the scale of our KB which is at the order of half a billion triples and it is loaded
to GraphDB. The issue is that like every other tripe-store, GraphDB is
inherently incomplete for performing reasoning over constructors like those used in
the above DL concepts, i.e., ObjectSomeValuesFrom. Hence, some extended DL
inference functionality had to be simulated on top of GraphDB using SPARQL.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Extracting Concept De nitions From Text</title>
      <p>
        To understand the meaning in text we built a method (buildConcept) that
extracts concept de nitions from small medical phrases. Examples of such phrases
are \acute duodenal ulcer", \granuloma surgical wound", \severe pain in left
leg", etc. First, these phrases are decomposed into tokens using dependency
parsing. Figure 1a depicts the dependency tree of the medical phrase \Recent pain
provoked by injury". Nodes correspond to words in text and edges to linguistic
relations between the tokens of the phrase. Second, a pre-processing step on the
dependency tree is applied to obtain the graph depicted in Figure 1b. This graph
contains mostly nouns, adjectives, and verbs while pronouns or other function
words are suppressed. The nodes of the graph are then matched to classes from
the KB by matching lemmatized text of each node to class labels or synonyms.
Finally, the tree is traversed in a depth- rst manner and class expressions are
built. A non-trivial issue in our work is that the text rarely contains verbs which
can be used as relations between classes as usually assumed in the literature [
        <xref ref-type="bibr" rid="ref2 ref3 ref4">3,
4, 2</xref>
        ]. For instance, in our running example the relation between \Recent" and
\Pain" needs to be inferred. This is done based on the frequency that relations
associate pairs of categories in the KB. For example, diseases are associated
with temporal classes with the relation occurs. Hence, from the graph depicted
in Figure 1b our method can construct the following class expression:
      </p>
      <p>Pain u 9occurrs:Recently u 9provokedBy:Injury
amod
Recent</p>
      <p>Pain [root]
acl
provoked</p>
      <p>prep
pobj
Injury
amod</p>
      <p>acl
by</p>
      <p>Recent</p>
      <p>Pain [root]
Injury
provoked
pobj
(a) Dependency Tree
(b) Normalised Tree</p>
    </sec>
    <sec id="sec-3">
      <title>Reasoning Using Textual Knowledge</title>
      <p>As mentioned in the introduction, the \unde nedness" of concepts in the KB
motivated us to design a novel hybrid reasoning algorithm which given two
concepts it exploits both semantic as well as textual information encoded in
their labels to compare them w.r.t. subsumption. Given concepts C and D the
algorithm brie y works as follows:
1. If isSubsumed(C; D) then return true
2. C+ := buildConcept(C:label)
3. If isSubsumed(C+; D) then return true
4. D+ := buildConcept(D:label)
5. If isSubsumed(C+; D+) then return true
6. return false</p>
      <p>
        At step 1, the algorithm checks subsumption between two classes using
a custom approximate algorithm which is based on a combination of
structural subsumption [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and SPARQL queries which attempt to simulate some
of the consequence-based inference rules that are relevant to OWL
constructors not handled by triple-stores like ObjectSomeValues. If subsumption fails,
then it proceeds in trying to extract knowledge from the labels of the classes.
For example, step 1. for the subsumption RecentInjury v Injury will fail and
hence buildConcept(\RecentInjury") would be called, returning C+ = Injury u
9occured:Recent. Then at step 3 Injury u 9occured:Recent v Injury returns true.
The overall system (KAL) is depicted in Figure 2. User text is processed by
conceptBuilder and the output is compared against PGM nodes using the reasoner.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Evaluation</title>
      <p>To evaluate conceptBuilder alone, we randomly picked 200 classes from our KB
which have a label that contains at least two words and used it to construct
a concept de nition. Out of the 200 concepts conceptBuilder failed to build a
concept in 19 cases (9.5%) since it could not pick a concept from the KB. For
example, there is no concept for the word \Ionizing". For the remaining 181, we
asked an in-house doctor to evaluate their quality using one of the labels wrong,
correct, or partiallycorrect obtaining 21, 108 and 52, marked as such.</p>
      <p>In the second experiment, we asked doctors to create natural language queries
mimicking the text that users would type into the chatbot when they report their
problem as well as the list of expected nodes form PGM that should be
activated. For example, a user may type \I cut my nger ", \I feel really tired ",
or \my lower back hurts " and the expected nodes are HurtFinger, Fatigue, and
LowerBackPain, respectively; Table 1 presents Precision and Recall of our system
and compared against a baseline approach that simply annotates medical terms
using GATE annotator and then compares them to PGM as well as against
a sentence embedding approach (emb) which has been trained using word
embedding on medical blogs. As can be seen, using our system together with the
embedder as a backup plan provides the best results.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Description Logics</article-title>
          . In: van Harmelen,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Lifschitz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            ,
            <surname>Porter</surname>
          </string-name>
          ,
          <string-name>
            <surname>B</surname>
          </string-name>
          . (eds.)
          <source>Handbook of Knowledge Representation, chap. 3</source>
          , pp.
          <volume>135</volume>
          {
          <fpage>180</fpage>
          .
          <string-name>
            <surname>Elsevier</surname>
          </string-name>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Buitelaar</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cimiano</surname>
          </string-name>
          , P. (eds.):
          <article-title>Ontology Learning and Population: Bridging the Gap between Text and Knowledge. Frontiers in Arti cial Intelligence and Applications</article-title>
          , IOS Press (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Distel</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , Y.:
          <article-title>A hybrid approach for learning SNOMED CT de nitions from text</article-title>
          .
          <source>In: Proceedings of the 26th International Workshop on DLs</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Gyawali</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shimorina</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gardent</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cruz-Lara</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mahfoudh</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Mapping natural language to description logic</article-title>
          .
          <source>In: Proc. of 14th ESWC</source>
          . pp.
          <volume>273</volume>
          {
          <issue>288</issue>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Stoilos</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Geleta</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shamdasani</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Khodadadi</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A novel approach and practical algorithms for ontology integration</article-title>
          .
          <source>In: Proceedings of ISWC</source>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>