monarch-initiative / pheval

A framework for empirical evaluation of phenotype matching and prioritisation
https://monarch-initiative.github.io/pheval/
Apache License 2.0
12 stars 1 forks source link

Disease prioritization results benchmarking from different disease ontologies #349

Open AO33 opened 1 month ago

AO33 commented 1 month ago

Attached in the screenshot are the top hits for a single sample run through exomiser's phenotype only mode + pheval runner post processing.

matentzn commented 1 month ago

Awesome thank you @AO33 for digging and writing this up. This is very important! @yaseminbridges, this ticket is perhaps a bit.. involved (I think the solution may be a bit more than just injecting the mapping into the analysis code, but actually rewiring the diagnosis in the phenopacket), but it is of critical importance. In the same way we normalise genes, we should normalise diagnoses to Mondo. Of course, this will elicit some push back from Jules I imagine, so we need to debate it (dont start this without talking to him), but I feel, from a Monarch-wide standpoint, that this is the right move!

yaseminbridges commented 1 month ago

Agreed - this is important. I think the best place for this is outside the analysis code - perhaps as a utility function as we have for converting the genes we should have the same for the disease identifiers.

cmungall commented 1 month ago

We discussed this at the berkeley hackathon, we also need to account for the case where the orpha is a superclass of the omim

matentzn commented 1 month ago

@yaseminbridges

We discussed this at the Berkeley hackathon, we also need to account for the case where the orpha is a superclass of the omim

Makes this a bit harder. If you like, I can create two tables for you:

  1. the SSSOM Mondo mappings so you know which OMIM->Orpha pairs are identical
  2. a subsumption table so you know which MONDO disease is a subclass of another

However, before we go there:

@cmungall are you sure your

orpha is a superclass of the omim

is not a bit too general? If someone predicts an Orpha that is much higher in the hierarchy, then the diagnosis IMO is not "as specific as it could be". So I would not say the higher "orpha" diagnosis should be treated as if it was correct; it is not "wrong", but too unspecific. You could predic MONDO:disease and would be always right!

AO33 commented 3 weeks ago

Here is the before and after disease_id "mondo mapping" benchmark results for exomiser. There were 71/385 exomiser results where pheval was under reporting the rank for the patients disease.

image

This isn't just a pheval issue (although pheval is the best place to solve this problem) because exomiser is reporting different results for the same disease.

The real number of times that this "could" be a problem is currently dictated by how any given disease prioritization tool handles its results (i.e. how many times is the tool reporting the same disease, but in different ontology name spaces)