Using Semantics to personalize medical research
Upcoming SlideShare
Loading in...5
×
 

Using Semantics to personalize medical research

on

  • 1,610 views

My presentation to BIoIT World Congress 2010, Boston MA, April, 2010. The slideshow describes the SADI Semantic Web Service framework, and how we are using SADI to begin personalizing the data ...

My presentation to BIoIT World Congress 2010, Boston MA, April, 2010. The slideshow describes the SADI Semantic Web Service framework, and how we are using SADI to begin personalizing the data exploration and analysis experience for biomedical and clinical researchers

Statistics

Views

Total Views
1,610
Views on SlideShare
1,601
Embed Views
9

Actions

Likes
4
Downloads
27
Comments
0

3 Embeds 9

http://www.slideshare.net 7
http://localhost 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Using Semantics to personalize medical research Using Semantics to personalize medical research Presentation Transcript

    • Personalizing medical research using Semantics
      Mark Wilkinson, PI Bioinformatics, Heart + Lung Institute @ St. Paul’s Hospital
      Vancouver, BC, Canada
    • Web Servicesvs.Semantic Web
    • Web Servicesare not “connected” to the Semantic WebWhy?
    • Web ServicesXML + XML SchemaSemantic WebRDF + OWL
    • Web ServicesPOST of SOAP-XMLSemantic WebGET of RDF-XML
    • Web ServicesNo (rigorous) semanticsSemantic WebRich, flexible semantics
    • Web Services&Semantic WebFundamentally and deeply different Web technologies!
    • >1000 X more data in the “Deep Web” than in Web pagesPrimarily databases and analytical algorithms
    • Accessing these databases and analytical algorithms “transparently”, based on individual researcher’s
      ideas, beliefs, preferenceswill help us personalize medical research
    • Mark Butler (2003) Is the semantic web hype? Hewlett Packard laboratories presentation at MMU, 2003-03-12
    • Semantic Web?(my definition)
      An information system where machines can receive information from one source, re-interpret it, and correctly use it for a purpose that the source had not anticipated.
    • Re-interpretation
      Correct re-use
      Both are critical to the personalization of research
    • Building a personalized Semantic Web…
      Step-by-step…
    • Semantic Automated Discovery and Integrationhttp://sadiframework.org
      Founding partner
    • SADI“best-practices” for Semantic Web Service provision
    • standards-compliant
    • Lightweight(only 2 “rules”)
    • Rules come from observations:
    • SADI Observation #1:
      Web Services in Bioinformatics create implicitbiologicalrelationships between their input and output
    • SADI Observation #1:
    • SADI Best Practice #1
      Make the implicit explicit…
      A Web Service should create triples linking the input data to the output data, thus explicitly describing the semantic relationship between them
    • SADI Best Practice #1
      This is what bioinformatics Web Services implicitly do anyway! Easy to implement this as a best-practice
    • SADI Observation #2:GET and POST
      GET guarantees the response relates to the request URI in a very precise and predictable way
      POST does not…
    • SADI Observation #2:GET and POST
      That’s why Web Services have a fundamentally different behaviour than the Semantic Web
    • SADI Observation #2:GET and POST
      We can fix that!
      (without breaking any existing rules or standards!)
    • SADI Best Practice #2
      SUBJECT URI of the output graph (triples)
      is the sameas the SUBJECT URI of the input graph (triples)
      (the output is “about” the input... Now explicitly!)
    • Consequence
      The “Semantics” of our interaction with the Web Service are now explicitandidentical to the “Semantics” of GET
    • SADI Web Service Interfaces
      Service Interfaces defined by two OWL classes:
    • SADI Web Service Interfaces
      OWL Class #1: My Input Class
    • SADI Web Service Interfaces
      OWL Class #2: My Output Class
    • SADI Web Service Interfaces
      My Service consumes OWL Individuals of Class #1 and returns OWL Individuals of Class #2
      …but the URI of those two individuals is the same!(see best practice #2)
    • How do we discover services?
      Since input and output are about the same “thing”, we can automatically determine what a service doesby comparing the Input and Output OWL classes
    • How do we find services?
      Automatically index services in a registry based on what properties (predicates) Services add to their respective input data-types
    • EXAMPLE
      Input Data: BRCA1 rdf:type Gene ID
      Output Data: BRCA1 hasDNASequence AGCTTAGCCA…
      Registry Index: Service provides “hasDNASequence” property to Gene IDs
    • Now we can answer questions like
      “what is the DNA sequence of BRCA1?”
       Discover a service that creates the DNA Sequence property of gene identifiers
    • Okay, enough tech gobbledygookWhat will this do for ME?
    • Demo #1
    • Imagine there is a “virtual database” containing all of the data from all of the databases,together with the output ofevery conceivable analysis
    • How do we query that database?
    • “SHARE”Semantic Health And Research EnvironmentSADI client application
    • What pathways does UniProt protein P47989 belong to?
      PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#>
      PREFIX ont: <http://ontology.dumontierlab.com/>
      PREFIX uniprot: <http://lsrn.org/UniProt:>
      SELECT ?gene ?pathway
      WHERE {
      uniprot:P47989 pred:isEncodedBy ?gene .
      ?gene ont:isParticipantIn ?pathway .
      }
    • Recapwhat we just saw
      A standard SPARQL query was entered into SHARE, a SADI-aware query engine
    • Recapwhat we just saw
      The query was interpreted to extract the properties being queried and these were passed to SADI for Web Service discovery
    • Recapwhat we just saw
      SADIsearched-for, found, and accessed all databases and/or analytical tools capable of generating those properties
    • Recapwhat we just saw
      We posed, and answered a complex database query
      WITHOUT A DATABASE
      (in fact, the data didn’t even have to exist...)
    • Cool!
    • …but I’m supposed to be personalizing research…
      Let’s make this a little more personal by bringing in Ontologies
    • My Definition of Ontology (for this talk)
      Ontologies explicitly define the things that exist in “the world” based on what propertieseach kind of thing must have
    • Ontology Spectrum
      Frames
      (Properties)
      Thesauri
      “narrower
      term”
      relation
      Selected
      Logical
      Constraints
      (disjointness,
      inverse, …)
      Catalog/
      ID
      Formal
      is-a
      Informal
      is-a
      Formal
      instance
      General
      Logical
      constraints
      Terms/
      glossary
      Value Restrs.
    • Demo #2
      Discover instances of OWL classes
      from data that doesn’t exist…
    • Show me patients whose creatinine level is increasing over time, along with their latest BUN and creatinine levels.
      PREFIX regress: <http://sadiframework.org/examples/regression.owl#>
      PREFIX patients: <http://sadiframework.org/ontologies/patients.owl#>
      PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#>
      SELECT ?patient ?bun ?creat
      FROM <http://sadiframework.org/ontologies/patients.rdf>
      WHERE {
      ?patient patients:creatinineLevels ?collection .
      ?collection regress:hasRegressionModel ?model .
      ?model regress:slope ?slope
      FILTER (?slope > 0) .
      ?patient pred:latestBUN ?bun .
      ?patient pred:latestCreatinine ?creat .
      }
    • Show me patients with elevated creatinine along with their latest BUN and creatinine levels
      PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
      PREFIX patients: <http://sadiframework.org/ontologies/patients.owl#>
      PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#>
      SELECT ?patient ?bun ?creat
      FROM <http://sadiframework.org/ontologies/patients.rdf>
      WHERE {
      ?patient rdf:typepatients:ElevatedCreatininePatient .
      ?patient pred:latestBUN ?bun .
      ?patient pred:latestCreatinine ?creat .
      }
    • Start burrowing through the OWL class  find that we need aregression model OWL class
    • Regression models have features like slopes and intercepts… and so onThe class is completely decomposed until a set of required Services are discoveredcapable of creating all these necessary properties
    • Successful decomposition of the OWL class to discover
      the need for a LinearRegression Web Service, and so on
    • VOILA!
    • OWL Class restrictions converted into workflows
      SPARQL queries converted into workflows
      Reasoning happening in parallel with query executionData fulfilling OWL models is discovered, or generated through running analytical tools
      SADI and CardioSHARE
    • This SADI/SHARE behaviour is completely novel
    • I still don’t seewhy this is“Personal”??
    • Show me patients whose creatinine level is increasing over time, along with their latest BUN and creatinine
      SELECT ?patient ?bun ?creat
      FROM <http://sadiframework.org/ontologies/patients.rdf>
      WHERE {
      ?patient rdf:typepatients:ElevatedCreatininePatient .
      ?patient pred:latestBUN ?bun .
      ?patient pred:latestCreatinine ?creat .
      }
    • I created a small ontologydescribing my definition ofan Elevated Creatinine Patient
    • … it was MY ontology!
    • I can re-use it
    • I can modify it as I change my world-view
    • I can publish it for others to use
    • Others can modify it to fit THEIR world-view
    • My personal world-view is being dynamically resolved againstglobal data and knowledge
    • …but it’s bigger than that…
    • “Elevated Creatinine Patient”
    • I made that up! It came out of my head!
    • What’s a fancy word for a world-view that you make-up?
      Hypothesis
    • Current Research We believe that ontologies and hypothesesare, in some ways, the same “thing”……simply assertions about individuals that may or may not existIf an instance of a class exists, then the hypothesis is “validated”
    • Recap
      SADI Semantic Web Services generate triples; the predicates of those triples are indexed... Period.
      For a given query, determine which properties are available, and which need to be discovered/generated
      Find services that generate the properties we need
    • Semantic Web
      An information system where machines can receive information from one source, re-interpret it, and correctly use it for a purpose that the source had not anticipated.
      My Purpose!!
    • What SADI + SHARE supports
      Re-interpretation
      We constantly compare the collection of properties, gathered from third-parties worldwide, to whatever world-model (query/ontology) we wish to view it through.
      MY world model
    • What SADI + SHARE supports
      Novel re-use
      There is no way for the provider to dictate how their data should be used, or how it should be interpreted. They simply add their properties into the “cloud” and those properties are used in whatever way is appropriate for me.
    • Important “wins”
      Data remains distributed – no warehouse!
      Data is not “exposed” as a SPARQL endpoint  greater provider-control over computational resources
      Yet data appears to be a SPARQL endpoint… no modification of SPARQL or reasoner required.
    • And all this because SADI simply requires
      that the input URI
      is the same as the output URI
    • Join us!
      We have recently received funding from CANARIEto assist and train service providersin deploying their own SADI Semantic Web Services
      Come join us – we’re having a lot of fun!!
      http://sadiframework.org
    • Credits
      Benjamin VanderValk (SADI & CardioSHARE)
      Luke McCarthy (SADI & CardioSHARE)
      SoroushSamadian (CardioSHARE)
      Microsoft Research
      Fin
      This presentation available on SlideShare: keywords ‘wilkinson’ ‘BioIT-2010’
    • Credits
      Benjamin VanderValk(SADI & CardioSHARE)
      Luke McCarthy (SADI & CardioSHARE)
      SoroushSamadian(CardioSHARE)
    • Microsoft Research