Upload
hilary-atkins
View
218
Download
4
Tags:
Embed Size (px)
Citation preview
AQUA: AQUAINT QuestionAQUA: AQUAINT QuestionAnswering SystemAnswering System
SAIC, San DiegoSAIC, San Diego
KSL, StanfordKSL, Stanford
AgendaAgenda
System ArchitectureSystem Architecture SAIC – Current Status and goalsSAIC – Current Status and goals KSL – Current Status and goalsKSL – Current Status and goals Future plansFuture plans
SAIC-KSL-NMSU Collaborative SAIC-KSL-NMSU Collaborative System – Long term goalSystem – Long term goal
QUESTION
NL QueryInterlingua Query
KIF Q
uery
KIF Answer
Interlingua Answer
NL Answer
ANSWER
NMSU Query Processor
SAIC Interlingua KIF Translator
KSL Java Theorem Prover
SAIC KIF Interlingua Translator
NMSU NL Generator
SAIC TASKSSAIC TASKS
Aligning Ontologies:Aligning Ontologies:the AQUA OntologyMapper Toolthe AQUA OntologyMapper Tool Dynamic semantic alignment tool developed to Dynamic semantic alignment tool developed to
assist the user in performing this processassist the user in performing this process Automate mapping of Ontosem (source) ontology Automate mapping of Ontosem (source) ontology
to Ontolingua (target) ontologyto Ontolingua (target) ontology– Map classes and instancesMap classes and instances
– Semantic alignment algorithmSemantic alignment algorithm» Single-word entriesSingle-word entries
» Multi-word entriesMulti-word entries
Proved to be more difficult than expected.Proved to be more difficult than expected.
Single word matching algorithmSingle word matching algorithm Exact MatchesExact Matches Same StemSame Stem SynonymsSynonyms
– Exact MatchesExact Matches
– Stem MatchesStem Matches
1-Generation Child Match1-Generation Child Match No MatchNo Match
– Display Ontolingua Ontology TreeDisplay Ontolingua Ontology Tree» Parent Match Parent Match Child Match Child Match
» Parent Match Parent Match 3 levels if no Child Match 3 levels if no Child Match
Multiple MatchesMultiple Matches– Display and Allow User To SelectDisplay and Allow User To Select
Multi-word matching algorithmMulti-word matching algorithm Exact Stem Match (A-B-C)Exact Stem Match (A-B-C) Exact Permutation (B-C-A, B-A-C, …)Exact Permutation (B-C-A, B-A-C, …) Ontolingua Term Contains Subset of Ontosem WordsOntolingua Term Contains Subset of Ontosem Words
– Constrained to Parent Match SubtreeConstrained to Parent Match Subtree
Ontosem Term Contains Subset of Ontolingua Term Ontosem Term Contains Subset of Ontolingua Term – Constrained to Parent Match SubtreeConstrained to Parent Match Subtree
1-Generation Child Match1-Generation Child Match No MatchNo Match
– Display Ontolingua Ontology TreeDisplay Ontolingua Ontology Tree» Parent Match Parent Match Child Match Child Match» Parent Match Parent Match 3 levels if no Child Match 3 levels if no Child Match
Multiple MatchesMultiple Matches– Display and Allow User To SelectDisplay and Allow User To Select
Initial Screen
AQUA OntologyMapperAQUA OntologyMapper
No Match – Parent Subtree Displayed
AQUA OntologyMapperAQUA OntologyMapper
Multiple Matches Found
AQUA OntologyMapperAQUA OntologyMapper
AQUA OntologyMapperAQUA OntologyMapper
Current Approach toCurrent Approach toSemantic AlignmentSemantic Alignment
Two levels of analysis in SAIC semantic Two levels of analysis in SAIC semantic alignment software:alignment software:– Linguistic analysisLinguistic analysis: software matches terms by : software matches terms by
finding common word roots and combinations finding common word roots and combinations of words; also searches for synonymsof words; also searches for synonyms
– Structural analysisStructural analysis: software matches terms by : software matches terms by finding common organization hierarchy in finding common organization hierarchy in meaning representationsmeaning representations
Potential Performance-Boosting Potential Performance-Boosting TechniquesTechniques
Additional sources of linguistic analysis:Additional sources of linguistic analysis:– Documentation of concepts (often contains linguistic clues)Documentation of concepts (often contains linguistic clues)
– Ontolingua: “Conveyance -- vehicle for Ontolingua: “Conveyance -- vehicle for transporting peopletransporting people””– Ontosem: “Vehicle -- artifacts used for Ontosem: “Vehicle -- artifacts used for transporting peopletransporting people and cargo” and cargo”
Additional sources of structural informationAdditional sources of structural information– Slots/constraintsSlots/constraints
Additional structure mapping techniquesAdditional structure mapping techniques– Such as Similarity Flooding*Such as Similarity Flooding*
Federation of MatchersFederation of Matchers– Each individual alignment technique returns 15-50% of the terms Each individual alignment technique returns 15-50% of the terms
matched, with little overlapmatched, with little overlap
– Individual techniques will be combined to find combined matchesIndividual techniques will be combined to find combined matches
* * Similarity Flooding – A versatile Graph Matching algorithm and its application Similarity Flooding – A versatile Graph Matching algorithm and its application to Schema Matching ” Sergei Melnick, Hector Garcia-Molina, Edgar Rahmto Schema Matching ” Sergei Melnick, Hector Garcia-Molina, Edgar Rahm
Translation from TMR to KIF:Translation from TMR to KIF:the AQUA Ontolingua Translatorthe AQUA Ontolingua Translator
Once alignment has been performed the Once alignment has been performed the translation of all TMR output is performed.translation of all TMR output is performed.
Some initial work has been done on this task Some initial work has been done on this task and several articles have been extracted from and several articles have been extracted from text to TMR and TMR to KIF. text to TMR and TMR to KIF.
Functioning demonstration illustrating Functioning demonstration illustrating extracted TMR, KIF translation and question extracted TMR, KIF translation and question answering using JTP over extracted informationanswering using JTP over extracted information
Document and TMRDocument and TMR
Generated KIFGenerated KIF
QueriesQueries
Query results 1Query results 1
Query Results 2Query Results 2
Future plansFuture plans Translation:Translation:
– Focus on improving the translation of TMR to KIFFocus on improving the translation of TMR to KIF
Extraction:Extraction:– Focus on extraction of temporal relationsFocus on extraction of temporal relations
» Maximum utilization of KSL temporal reasoner developmentMaximum utilization of KSL temporal reasoner development
– Work with Onyx to acquire as many extracted TMR articles as Work with Onyx to acquire as many extracted TMR articles as possible in order to focus on TMR->KIF translationpossible in order to focus on TMR->KIF translation
– Work with AQUAINT specified data sets for extracted articles.Work with AQUAINT specified data sets for extracted articles.
Leverage Genoa II workLeverage Genoa II work– Leverage ontologies/kbs developed for GENOA IILeverage ontologies/kbs developed for GENOA II
Leverage Stanford KSL and IBM in the NIMD contractLeverage Stanford KSL and IBM in the NIMD contract– allow a comparison between 2 extraction techniques in the same allow a comparison between 2 extraction techniques in the same
question answering environment.question answering environment.
KSL TasksKSL Tasks
BackupsBackups
KSL/IBM NIMD contract awardKSL/IBM NIMD contract award
Stanford university has been awarded a NIMD Stanford university has been awarded a NIMD contract where text extraction into the Ontolingua contract where text extraction into the Ontolingua systemsystem
This is a natural fit with the current AQUA This is a natural fit with the current AQUA system.system.
The design for the AQUA OntologyMapper is not The design for the AQUA OntologyMapper is not ontology specific and is extensible to multiple ontology specific and is extensible to multiple ontologiesontologies
Leverage this design characteristic to incorporate Leverage this design characteristic to incorporate an additional extraction systeman additional extraction system
FacultyFacultyRichard Fikes Edward Richard Fikes Edward FeigenbaumFeigenbaum (Director) (Director) (Emeritus)(Emeritus)
Knowledge Systems LaboratoryKnowledge Systems LaboratoryStanford UniversityStanford University
““In the knowledge is the power.”In the knowledge is the power.”
Senior ScientistsSenior Scientists Deborah McGuinness Sheila Deborah McGuinness Sheila
McIlraithMcIlraith (Associate Director)(Associate Director)
Technology for effectively representing and using Technology for effectively representing and using knowledge in computer systemsknowledge in computer systems
12/4/0212/4/02
Research Staff and StudentsResearch Staff and StudentsJessica Jenkins, Rob McCool, Paulo Pinheiro da Silva, Gleb Jessica Jenkins, Rob McCool, Paulo Pinheiro da Silva, Gleb
Frank, …Frank, …
Recent DevelopmentsRecent Developments
JTPJTP – A hybrid reasoner for query answering– A hybrid reasoner for query answering– Developed reasoners for time-dependent knowledgeDeveloped reasoners for time-dependent knowledge
– Expanded functionality of DAML+OIL reasoner Expanded functionality of DAML+OIL reasoner
DQLDQL – Agent language and protocol for deductive query answering– Agent language and protocol for deductive query answering
Inference WebInference Web – Providing understandable explanations for – Providing understandable explanations for derived query answersderived query answers
Recent DevelopmentsRecent Developments
JTPJTP – A hybrid reasoner for query answering – A hybrid reasoner for query answering Developed reasoners for time-dependent knowledgeDeveloped reasoners for time-dependent knowledge
– Expanded functionality of DAML+OIL reasoner Expanded functionality of DAML+OIL reasoner
DQLDQL – Agent language and protocol for deductive query answering – Agent language and protocol for deductive query answering
Inference WebInference Web – Providing understandable explanations for – Providing understandable explanations for derived query answersderived query answers
JTPJTP – A Hybrid Reasoner for Query – A Hybrid Reasoner for Query AnsweringAnswering
An architecture for hybrid reasoningAn architecture for hybrid reasoning
– First-order logic model elimination theorem proverFirst-order logic model elimination theorem prover
– Suite of special purpose reasonersSuite of special purpose reasoners
– Dispatchers and APIs for reasonersDispatchers and APIs for reasoners
Developing special purpose query-answering reasonersDeveloping special purpose query-answering reasoners
– Using time-dependent knowledgeUsing time-dependent knowledge
– Using Semantic Web knowledge expressed in DAML+OILUsing Semantic Web knowledge expressed in DAML+OIL
Available from the Web as a JAVA programAvailable from the Web as a JAVA program
www.ksl.stanford.edu/software/JTPwww.ksl.stanford.edu/software/JTP
Representing Time-Dependent Representing Time-Dependent KnowledgeKnowledge
A time ontology provides representation vocabularyA time ontology provides representation vocabulary
– ObjectsObjects» Primitive objects: time line, points, intervals, durations, …Primitive objects: time line, points, intervals, durations, …
» Time units: second, minute, hour, …Time units: second, minute, hour, …
» Calendar objects: Monday, January, 2001, …Calendar objects: Monday, January, 2001, …
– RelationsRelations» For points: location-of, before, after, equal-point, the-point, … For points: location-of, before, after, equal-point, the-point, …
» For intervals: precedes, meets, overlaps, co-starts, during, … For intervals: precedes, meets, overlaps, co-starts, during, …
– Abstractly specified time point locationsAbstractly specified time point locationsE.g., “He was born in 1916” “She arrived in January 2002.”E.g., “He was born in 1916” “She arrived in January 2002.”
Allen Relations on Time Allen Relations on Time IntervalsIntervals– Precedes: Precedes: |—————| |—————| End-1 < Start-2End-1 < Start-2
|——————||——————|
– Meets: Meets: |—————| |—————| End-1 = Start-2End-1 = Start-2|——————||——————|
– Overlaps:Overlaps: |———— |————––|| Start-1 < Start-2 < End-1Start-1 < Start-2 < End-1|——————||——————|
– Costarts:Costarts: |————||————| Start-1 = Start-2Start-1 = Start-2|——————||——————|
– During:During: |————| |————| Start-2 < Start-1Start-2 < Start-1|——————||——————| End-1 < End-2End-1 < End-2
– Cofinishes:Cofinishes: |————||————| End-1 = End-2End-1 = End-2|——————||——————|
– Equal:Equal: |——————||——————| Start-1 = Start-2Start-1 = Start-2|——————||——————| End-1 = End-2End-1 = End-2
Reasoning With Time-Dependent Reasoning With Time-Dependent Knowledge Knowledge
The reasoner maintains a directed graph of time pointsThe reasoner maintains a directed graph of time points– Based on the relations “before”, “after”, and “equal-point”Based on the relations “before”, “after”, and “equal-point”
– Includes intervals using their starting and ending pointsIncludes intervals using their starting and ending points
The reasoner operationalizes definitions of relationsThe reasoner operationalizes definitions of relations– Evaluates instancesEvaluates instances
E.g., E.g., (Before A-Point-In-1942 A-Point-In-January-1968)(Before A-Point-In-1942 A-Point-In-January-1968)
– Infers instances of goalsInfers instances of goals
E.g., find intervals ?int such that (During ?int 1942)E.g., find intervals ?int such that (During ?int 1942)
– Responds to assertions with additional inferred assertionsResponds to assertions with additional inferred assertions
E.g., E.g., (=> (and (starting-point ?s1 ?i1) (=> (and (starting-point ?s1 ?i1) (starting-point ?s2 ?i2) (starting-point ?s2 ?i2) (during ?i1 ?i2)) (during ?i1 ?i2)) (before ?s2 ?s1))(before ?s2 ?s1))
Representing When Events Representing When Events OccurOccur On 8 August 1998 a Taliban military offensive in northern On 8 August 1998 a Taliban military offensive in northern
Afghanistan concludes with the occupation of Mazar-e-Sharif.Afghanistan concludes with the occupation of Mazar-e-Sharif.– (equal-point(equal-point (starting-point August-8-1998) (starting-point August-8-1998) (the-point (year 1998) (month 7) (day 8) (hour 0)(the-point (year 1998) (month 7) (day 8) (hour 0) (minute 0) (second 0)))(minute 0) (second 0)))
– (equal-point (equal-point (ending-point August-8-1998) (ending-point August-8-1998) (the-point (year 1998) (month 7) (day 8) (hour 24) (the-point (year 1998) (month 7) (day 8) (hour 24) (minute 60) (second 60)))(minute 60) (second 60)))
– (overlaps (overlaps Taliban-military-offensive-in-northern-Afghanistan Taliban-military-offensive-in-northern-Afghanistan August-8-1998)August-8-1998)
– (meets (meets Taliban-military-offensive-in-northern-Afghanistan Taliban-military-offensive-in-northern-Afghanistan Occupation-of-Mazar-e-Sharif)Occupation-of-Mazar-e-Sharif)
---offensive---|---occupation--- ---offensive---|---occupation--- |---8/8/98---|---8/8/98---
Begin Time QueriesBegin Time Queries On 9 August Iran accuses the Taliban of taking 9 diplomats and 35 On 9 August Iran accuses the Taliban of taking 9 diplomats and 35
truck drivers hostage in Mazar-e-Sharif. The crisis began with that truck drivers hostage in Mazar-e-Sharif. The crisis began with that accusation. accusation. – (during Iran-accuses-Taliban-of-taking-hostages (during Iran-accuses-Taliban-of-taking-hostages August-9-1998)August-9-1998)– (costarts Iran-accuses-Taliban-of-taking-hostages (costarts Iran-accuses-Taliban-of-taking-hostages Iranian-Taliban-Crisis)Iranian-Taliban-Crisis)
|--------8/9/98--------||--------8/9/98--------| |---accusation---||---accusation---| |---crisis---|---crisis---
““When did the Iranian-Taliban crisis begin?” “August 9, 1998.”When did the Iranian-Taliban crisis begin?” “August 9, 1998.”– Query: Query: (location-of (starting-point Iranian-Taliban-crisis) (location-of (starting-point Iranian-Taliban-crisis) ?lower-bound ?upper-bound)?lower-bound ?upper-bound)– Answer: Answer: ?lower-bound = Starting-Point-Of-August-9-1998 ?lower-bound = Starting-Point-Of-August-9-1998 ?upper-bound = Ending-Point-Of-August-9-1998 ?upper-bound = Ending-Point-Of-August-9-1998
Duration QueriesDuration Queries On 2 November Iran concludes the Zolfaghar-2 military exercise On 2 November Iran concludes the Zolfaghar-2 military exercise
peacefully, ending the crisis between the two sides.peacefully, ending the crisis between the two sides.– (ends-during Zolfaghar-2 November-2-1998)(ends-during Zolfaghar-2 November-2-1998)– (cofinishes Zolfaghar-2 Iranian-Taliban-Crisis)(cofinishes Zolfaghar-2 Iranian-Taliban-Crisis)
---Zolfaghar---|---Zolfaghar---| |---11/2/98---||---11/2/98---| ---crisis---|---crisis---|
““How many days did the Iranian-Taliban crisis last?” “84 to 86.”How many days did the Iranian-Taliban crisis last?” “84 to 86.”– Query: Query: (duration-in-units Iranian-Taliban-crisis day (duration-in-units Iranian-Taliban-crisis day ?lower-bound ?upper-bound)?lower-bound ?upper-bound)– Answer: Answer: ?lower-bound = 84 ?upper-bound = 86?lower-bound = 84 ?upper-bound = 86
““How many weeks did the Iranian-Taliban crisis last?” “12.”How many weeks did the Iranian-Taliban crisis last?” “12.”– Query: Query: (duration-in-units Iranian-Taliban-crisis week (duration-in-units Iranian-Taliban-crisis week ?lower-bound ?upper-bound)?lower-bound ?upper-bound)– Answer: Answer: ?lower-bound = 12 ?upper-bound = 12.29 ?lower-bound = 12 ?upper-bound = 12.29
During QueriesDuring Queries On 5 September Iran states that it has the right under international law On 5 September Iran states that it has the right under international law
to strike the Taliban after Iranian media sources report that the to strike the Taliban after Iranian media sources report that the Taliban have killed 5 Iranian diplomats.Taliban have killed 5 Iranian diplomats.– (during Iran-declares-right-to-strike-Taliban (during Iran-declares-right-to-strike-Taliban September-5-1998)September-5-1998)
– (precedes Iranian-media-reports-diplomats-killed-by-Taliban (precedes Iranian-media-reports-diplomats-killed-by-Taliban Iran-declares-right-to-strike-Taliban)Iran-declares-right-to-strike-Taliban)
-------9/5/98---------------9/5/98-----------report---| |---declaration---|---report---| |---declaration---|
““During what events did Iran declare the right to strike the Taliban During what events did Iran declare the right to strike the Taliban under international law?” “The Iranian-Taliban crisis.”under international law?” “The Iranian-Taliban crisis.”
– Query: Query: ((during Iran-declares-right-to-strike-Taliban ?evt)during Iran-declares-right-to-strike-Taliban ?evt) (type ?evt Event)(type ?evt Event)
– Answer: Answer: ?evt = iranian-taliban-crisis?evt = iranian-taliban-crisis
Recent DevelopmentsRecent Developments
JTPJTP – A hybrid reasoner for query answering– A hybrid reasoner for query answering– Developed reasoners for time-dependent knowledgeDeveloped reasoners for time-dependent knowledge
– Expanded functionality of DAML+OIL reasoner Expanded functionality of DAML+OIL reasoner
DQLDQL – Agent language and protocol for deductive query answering – Agent language and protocol for deductive query answering
Inference WebInference Web – Providing understandable explanations for – Providing understandable explanations for derived query answersderived query answers
DQL (DAML Query DQL (DAML Query Language)Language) Language and protocol for agent-to-agent query-answeringLanguage and protocol for agent-to-agent query-answering
– From knowledge represented in DAML+OIL (or OWL)From knowledge represented in DAML+OIL (or OWL)
– Supports a query-answering dialogue between a client and a serverSupports a query-answering dialogue between a client and a server
– Supports derivation of answers using automated reasoningSupports derivation of answers using automated reasoning
– Knowledge may be in multiple distributed knowledge basesKnowledge may be in multiple distributed knowledge bases
– Knowledge bases need not be specified by the clientKnowledge bases need not be specified by the client
Design IssuesDesign Issues– The formal properties of queries and answersThe formal properties of queries and answers
» How are queries, answers, and knowledge bases related?How are queries, answers, and knowledge bases related?
– Inferring answers may be expensiveInferring answers may be expensive» Impractical to always try to compute all answersImpractical to always try to compute all answers
– Answers may only be known to existAnswers may only be known to exist
– There may be an infinite number of answersThere may be an infinite number of answers
– What are justifications and when should they be computed?What are justifications and when should they be computed?
DQL Query-Answering DialogueDQL Query-Answering Dialogue
ClientClient
QueryQuery
Answer BundleAnswer Bundle(including a process handle)(including a process handle)
Server ContinuationServer Continuation
……
ServerServer
Answer BundleAnswer Bundle(including termination token(s))(including termination token(s))
Server TerminationServer Termination
oror
Answer BundleAnswer Bundle(including a process handle)(including a process handle)
DQL Implementations by KSLDQL Implementations by KSL
XML syntax for DQL query-answering dialoguesXML syntax for DQL query-answering dialogues
Server for answering queries powered by JTPServer for answering queries powered by JTP
Client for asking queries from a Web browserClient for asking queries from a Web browser
– Enables humans to query a DQL serverEnables humans to query a DQL server
Recent DevelopmentsRecent Developments
JTPJTP – A hybrid reasoner for query answering– A hybrid reasoner for query answering– Developed reasoners for time-dependent knowledgeDeveloped reasoners for time-dependent knowledge
– Expanded functionality of DAML+OIL reasoner Expanded functionality of DAML+OIL reasoner
DQLDQL – Agent language and protocol for deductive query answering– Agent language and protocol for deductive query answering
Inference WebInference Web – Providing understandable explanations for derived – Providing understandable explanations for derived query answersquery answers
Trusting Query AnswersTrusting Query Answers Trusting an agent’s answers means that we trust: Trusting an agent’s answers means that we trust:
– The input (and their sources) to the agentThe input (and their sources) to the agent
– The recency of the inputThe recency of the input
– The inference rules in the agent’s reasoner(s)The inference rules in the agent’s reasoner(s)
Automated reasoners provide little support for explaining Automated reasoners provide little support for explaining query answersquery answers– Justifications are typically:Justifications are typically:
» UnsharableUnsharable »» Difficult to visualizeDifficult to visualize» MonolithicMonolithic »» In inappropriate notationsIn inappropriate notations» Difficult to combineDifficult to combine »» Difficult to refineDifficult to refine» Reasoner-specificReasoner-specific
Inference WebInference Web Framework for explaining reasoning resultsFramework for explaining reasoning results
– ObjectiveObjective: Enable proofs and proof fragments provided by reasoners to be : Enable proofs and proof fragments provided by reasoners to be stored, exchanged, combined, annotated, filtered, segmented, compared, and stored, exchanged, combined, annotated, filtered, segmented, compared, and renderedrendered
The Inference Web is currently composed of: The Inference Web is currently composed of:
– Proof interlinguaProof interlingua DAML+OIL/OWL specification of proofs that provides DAML+OIL/OWL specification of proofs that provides
– Proof browserProof browser for displaying Inference Web proofs for displaying Inference Web proofs» Possibly from multiple reasonersPossibly from multiple reasoners
– Proof parserProof parser to support segmentation and follow-up question support to support segmentation and follow-up question support
– RegisterRegister for reasoners and inference rules for reasoners and inference rules
– Prototype implementation using the JTP ReasonerPrototype implementation using the JTP Reasoner
Recent DevelopmentsRecent Developments
JTPJTP – A hybrid reasoner for query answering– A hybrid reasoner for query answering– Developed reasoners for time-dependent knowledgeDeveloped reasoners for time-dependent knowledge
– Expanded functionality of DAML+OIL reasoner Expanded functionality of DAML+OIL reasoner
DQLDQL – Agent language and protocol for deductive query answering– Agent language and protocol for deductive query answering
Inference WebInference Web – Providing understandable explanations for – Providing understandable explanations for derived query answersderived query answers