analyzing user interactions with biomedical ontologies: a visual perspective

64
Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective Tuesday Talk, 14 th November 2017 M AULIK K AMDAR , S IMON W ALK ,T ANIA T UDORACHE ,M ARK M USEN Stanford Center for Biomedical Informa:cs Research [email protected]

Upload: maulik-kamdar

Post on 23-Jan-2018

66 views

Category:

Science


1 download

TRANSCRIPT

Page 1: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

AnalyzingUserInteractionswithBiomedicalOntologies:AVisualPerspective

TuesdayTalk,14thNovember2017

MAU L I K K AMDA R , S IMON WA L K , T A N I A T U DO R A C H E , MA R K MU S E N

StanfordCenterforBiomedicalInforma:[email protected]

Page 2: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective
Page 3: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective
Page 4: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective
Page 5: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective
Page 6: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Uses: Knowledge management, decision support, semantic search, data annotation, data integration, reasoning …

Page 7: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Uses: Knowledge management, decision support, semantic search, data annotation, data integration, reasoning …

Page 8: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://bioportal.bioontology.org/

Page 9: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://bioportal.bioontology.org/

Page 10: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://bioportal.bioontology.org/

Page 11: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://bioportal.bioontology.org/

Page 12: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://bioportal.bioontology.org/

Page 13: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Whatthistalkisabout…

•  BiOnIC-CatalogofUserInteracRonswith

BiomedicalOntologies

•  VisIOnapplicaRonwithembeddedvisualizaRons.

AnalysisofBioPortalWebUI

exploraRonandAPI

queryingstrategies,and

correlaRonwithusage.

Page 14: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Whatthistalkisabout…

•  BiOnIC-CatalogofUserInteracRonswith

BiomedicalOntologies

•  VisIOnapplicaRonwithembeddedvisualizaRons.

AnalysisofBioPortalWebUI

exploraRonandAPI

queryingstrategies,and

correlaRonwithusage.

Page 15: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

BenefitsofanalyzinguserinteracRons

Ø  OntologyEngineers:v  IdenRfyexploraRonandqueryingpaGernsv  Understandontologyusageandreusev  PruneunwantedclassesandrelaRons

Ø  OntologyRepositoryMaintainers:v  Categorizeuserbehaviorsv  Developintelligentinterfacesv  ProvidetargetedrecommendaRons

Ø  BiomedicalResearchers:v  IdenRfytemporalresearchtrends

v  IdenRfyfrequentlyaccessedclasses

Page 16: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

BiOnIC:ACatalogofUserInteracRonswith

BiomedicalOntologies

hGp://onto-apps.stanford.edu/bionic/datasets

Page 17: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

BiOnICdatasetscreaRon

Page 18: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

NCBO API Usage

API R

eque

sts

per M

onth

2013−O

ct

2014−J

an

2014−A

pr

2014−J

ul

2014−O

ct

2015−J

an

2015−A

pr

2015−J

ul

2015−O

ct

2016−J

an

2016−A

pr

2016−J

ul

2016−O

ct

2M8M

32M

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

NCBO Website Traffic

Occ

urre

nces

per

Mon

th

2009−J

an

2010−J

an

2011−J

an

2012−J

an

2013−J

an

2014−J

an

2015−J

an

2016−J

an

010

0K20

0K

Page RequestsUnique IP Addresses

BiOnICdatasetscreaRon

•  Removingrobot/invalid

requests

•  Normalizingontology

idenRfiersandclassIRIs

Page 19: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

•  January2015version.

•  Ontologiesshouldhave

classesthatarereusedby

othersORreuseclasses

fromotherontologies.

•  Ontologiesshouldhave

minimumof10unique

usersviaWebUIandAPI

Page 20: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

ClassSta:s:csDatasets

Foreachclassineachontology:

•  AccessANributes:o  TotalIPRequests(WebUI/API)

o  UniqueIPRequests(WebUI/API)

•  ReuseANributes:o  Numberofontologiesreusingaclass

•  StructuralANributes:o  Numberofparent/child/siblingclasses

o  Depthfromontologyroot

Page 21: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 22: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 23: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 24: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 25: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 26: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 27: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 28: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 29: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 30: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

ClassDepth->

2a

1

3a 4a

4b

4c2b

3b

3c

1’

2a’

2b’

2c’

3a’

3b’

3c’

Page 31: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

2a’ 1’ 2b’ 3b’

2a 3a 4a 3a1

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

UserInterac:onSequencesDatasets

Ontology1

Ontology2

Page 32: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Filtering

AccessLogs

Filtering

Ontologies

CompuRng

ClassCounts

CompuRng

Sequences

Anonymizing

Data

BiOnICdatasetscreaRon

Anonymiza:onSteps

•  IPaddressesanonymizedusinguniqueSHA-224hash-encoded

useridenRfiersgeneratedfrom“user_<Random

String>_<Random_Integer>”.

•  e.g.39fd4e6d569a034973g61bb392a694d4eabe1ef98c43ee68ca2fc86

•  AbsoluteTime-stampsconvertedtorelaRveRme-stamps,with

respecttofirstinteracRonwithBioPortalrepository.

•  e.g.0,2757,2786,3586,3618,3803,3959,4047,5111(s),…

Page 33: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

BiOnICschematomodelstaRsRcsandsequencesdata

countStat

bionic:CountStat

bionic:ReuseCount-  reuseType

-  reusingOntologies

bionic:RequestCount-  accessType

-  year

-  totalUsers

-  uniqueUsers

prov:Agent bionic:Sequence-  accessType

-  totalTime

-  uniqueClasses

bionic:SeqEn:ty-  rela6veTimestamp

bionic:Ontology-  skos:prefLabel

-  totalClasses

-  maxDepth

owl:Class-skos:prefLabel

skos:Collec:on skos:Concept

begin

end

nextEn6ty

class

class

requests

skos:member

bionic:SeqDataset-  accessType

bionic:StatDatasetdcat:Dataset

sequence

classInfo

ontology

ontology

bionic:ClassInfo-  siblings

-  directParents

-  directChildren

-  classDepth

class

subClassOf

ontology

SKOS,PROVandDCATstandardsarereusedintheBiOnICschema.

Page 34: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://onto-apps.stanford.edu/bionic/datasets

BiOnICdatasets

Page 35: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://onto-apps.stanford.edu/bionic/datasets

BiOnICdatasets

hGp://www.rdjdt.org/

Page 36: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://onto-apps.stanford.edu/bionic/datasets

BiOnICdatasets

hGp://www.rdjdt.org/

SPARQLServer

Page 37: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://onto-apps.stanford.edu/bionic/datasets

BiOnICdatasets

hGp://www.rdjdt.org/

SPARQLServer

BioPortalSPARQLEndpoint

Page 38: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

hGp://onto-apps.stanford.edu/bionic/datasets

BiOnICdatasets

hGp://www.rdjdt.org/

SPARQLServer

BioPortalSPARQLEndpoint

1.  HowmanyagentsclickonthesubclassesaIerexploringthe

“ProteinTransmembraneAc6vity”classinGeneOntology?

2.  Whatistheaverage6mespentbyagentsonclassessimilarto

“CellGrowth”classinGeneOntology?

Page 39: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

VisIOn(VisualizingOntologyInteracRons)WebApplicaRon

hGp://onto-apps.stanford.edu/vision

Page 40: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

VisualizingOntologyStructurewithCountData

Force-directedNetwork IndentedTree

Page 41: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

VisualizingOntologyStructurewithCountData

Force-directedNetwork IndentedTree

Page 42: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

PolygOntovisualizaRonsofinteracRonsequences

Kamdar,etal.VisualizingRequestandReuseDataacrossBiomedicalOntologies.JournalofWebSeman:cs,(underreview)

Page 43: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

PolygOntovisualizaRonsofinteracRonsequences

Kamdar,etal.VisualizingRequestandReuseDataacrossBiomedicalOntologies.JournalofWebSeman:cs,(underreview)

Page 44: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

PolygOntovisualizaRonsofinteracRonsequences

Kamdar,etal.VisualizingRequestandReuseDataacrossBiomedicalOntologies.JournalofWebSeman:cs,(underreview)

Page 45: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

PolygOntovisualizaRonsofinteracRonsequences

Kamdar,etal.VisualizingRequestandReuseDataacrossBiomedicalOntologies.JournalofWebSeman:cs,(underreview)

OntologyStructure

Page 46: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

PolygOntovisualizaRonsofinteracRonsequences

Kamdar,etal.VisualizingRequestandReuseDataacrossBiomedicalOntologies.JournalofWebSeman:cs,(underreview)

UserSequence

OntologyStructure

Page 47: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

PolygOntovisualizaRonsofinteracRonsequences

Kamdar,etal.VisualizingRequestandReuseDataacrossBiomedicalOntologies.JournalofWebSeman:cs,(underreview)

UserSequence

SingleClick

OntologyStructure

Page 48: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Whatthistalkisabout…

•  BiOnIC-CatalogofUserInteracRonswith

BiomedicalOntologies

•  VisIOnapplicaRonwithembeddedvisualizaRons.

AnalysisofBioPortalWebUI

exploraRonandAPI

queryingstrategies,and

correlaRonwithusage.

Page 49: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

CharacterisRcsoftheBiOnICCatalog

•  WebUIAccess:5.4Mclassrequests,1Muniqueagents

•  APIAccess:67.2Mclassrequests,205Kuniqueagents

•  255biomedicalontologies

Page 50: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

•  DoBioPortalWebUIexploraRonandAPI

queryingstrategiescorrelatewitheachother?

•  DoBioPortalWebUIexploraRonandAPI

queryingstrategiesinformontologyusage?

– Ontologyusage,inthiscontext,meansreusein

otherontologies,andusageindataannotaRon.

Page 51: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective
Page 52: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective
Page 53: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

InterfaceinfluencesinbrowsingandqueryingNum

bero

fUniqu

eAP

IUsers(LogScale)

NumberofUniqueWebUIUsers(LogScale)

1000

10

100

10 100 1000

1

1

Certainclassesbrowsedorqueriedsignificantlymore.

Page 54: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

InterfaceinfluencesinbrowsingandqueryingNum

bero

fUniqu

eAP

IUsers(LogScale)

NumberofUniqueWebUIUsers(LogScale)

1000

10

100

10 100 1000

FemaleReproduc:ve

System

1

1

Certainclassesbrowsedorqueriedsignificantlymore.

Dermis

Page 55: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

InterfaceinfluencesinbrowsingandqueryingDysmorphicSyndrome

Nightblindness

Num

bero

fUniqu

eAP

IUsers(LogScale)

NumberofUniqueWebUIUsers(LogScale)

1000

10

100

10 100 1000

FemaleReproduc:ve

System

1

1

Certainclassesbrowsedorqueriedsignificantlymore.

Dermis

Page 56: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

ExploraRonandQueryingbehavioralpaGerns

•  Certainclassesinthelowerlevelsoftheontologicalhierarchyarerarelybrowsedandqueried–thismaybeanarRfactoftheindentedtreevisualizaRon.

•  Moretriangularpolygons(1parent->2childrenclasses,or2parents->1childclass)observedinWebUIAccesspolygonduetoindentedtreevisualizaRon.

Page 57: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

ExploraRonandQueryingbehavioralpaGerns

300,000+classes200,000+users

Page 58: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

DoBioPortalWebUIexploraRonandAPI

queryingstrategiescorrelatewitheachother?

•  SmallproporRonsofontologicalcontentexploredorqueriedfor

severalontologies,andminimalSpearmanCorrelaRonand

JaccardSimilarityobservedbetweenconsumpRonstrategies.

•  VaryingconsumpRonstrategies(triangularpolygons,blind

querying)acrosstheinterfaces–thesestrategiesaregenerallyuniformacrossontologies,withafewexcepRons(ChEBI).

•  ClassesinthelowerlayersoftheontologicalhierarchyarerarelybrowsedorqueriedusingtheWebUIorAPI.

Page 59: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Ontologyusage:Reuseinotherontologies

Dis:nctclasssetsreusedinotherontologies

Page 60: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Ontologyusage:GWASCatalogandPubChemannotaRons

Classesinthehigherlayersoftheontological

hierarchyareveryabstractandareneverusedfor

dataannotaRons.

Commonconsensusacross12differentdatasources

inLinkedOpenDatacloud,whereChEBIontologyis

usedfordataintegraRon.

Page 61: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Ontologyusage:GWASCatalogandPubChemannotaRons

Classesinthehigherlayersoftheontological

hierarchyareveryabstractandareneverusedfor

dataannotaRons.

Commonconsensusacross12differentdatasources

inLinkedOpenDatacloud,whereChEBIontologyis

usedfordataintegraRon.

Page 62: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

DoBioPortalWebUIexploraRonandAPI

queryingstrategiesinformontologyusage?

•  MinimalcorrelaRonandsimilariResbetweenexploraRonand

queryingstrategies,andusage(reuseanddataannotaRons)

•  Ontologyreuseoccursfromclasseslocatedinthehigherlayersof

theontologicalhierarchyforsemanRcinteroperabilitybetween

ontologies.

•  However,theseclassesareveryabstractandnotveryrelevantfordataannotaRonordataintegraRon,whereclassesinthe

lowerlayersofhierarchyarehighlyused.

–  Theseclassesarerarelyexploredorqueried,weneedbeGerinterfaces!

Page 63: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

NovelresearchdirecRonsmaybeenabled

throughtheBiOnICandVisIOnresources

•  CategorizeuserbrowsingbehaviorsbyincorporaRngthestructuralfeaturesoftheontologyclasses.

•  DeveloppersonalizeduserinterfacesforontologynavigaRon,withpredicRonsofthenextclassthatauserislikelyto

access,ortargetedrecommendaRonsbasedonusertype

(recurrentneuralnetworks,collaboraRvefiltering,…).

•  DevelopadvancedmethodsforontologysummarizaRonand

modularizaRon,usingBiOnICdatasetsasfeatures.

Page 64: Analyzing User Interactions with Biomedical Ontologies: A Visual Perspective

Acknowledgments

MusenLab,Stanford

BMIPhDProgram,Stanford

USNIHGrants

U54-HG004028

GM086587

[email protected]://onto-apps.stanford.edu/bionic

hGp://onto-apps.stanford.edu/vision