Code Monkey home page Code Monkey logo

ncbo_annotator's People

Contributors

alexskr avatar dazza-codes avatar jlamarque34 avatar jvendetti avatar mdorf avatar msalvadores avatar ncbo-deployer avatar ontoportal-bot-lirmm avatar palexander avatar syphax-bouazzouni avatar vemonet avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ncbo_annotator's Issues

Probleme avec les caracteres apostrophes

SIFR Annotator Mgrep dictionnary enhancement

Cette tache consiste a traiter le dictionnaire Mgrep pour ajouter des termes qui ont plus de chance de matcher dans l'Annotator.

Pour une ligne comme celle-la:
5083756382759859076 ÉVéNEMENTS EMBOLIQUES ET THROMBOTIQUES (SMQ)
L'idéal, pour vraiment augmenter le recall de l'Annotator serait d'avoir comme résultats:
5083756382759859076 ÉVÉNEMENT EMBOLIQUE ET THROMBOTIQUE SMQ
5083756382759859076 ÉVÉNEMENT EMBOLIQUE
5083756382759859076 ÉVÉNEMENT THROMBOTIQUE
5083756382759859076 SMQ
Qu'en pensez vous ?
(j'ai oublié si MGREP accepte plusieurs entrée avec le même termid d'ailleurs ?)

Autre example:
INCISION ET DRAINAGE D'HéMATOME DU BASSIN
=>
INCISION ET DRAINAGE D HÉMATOME DU BASSIN
INCISION D HÉMATOME DU BASSIN
DRAINAGE D HÉMATOME DU BASSIN

Erreur NegEx/Context

"aucun signe d'autoagressivité"
ne marche pas
aucun signe de autoagressivité
marche

Normalize the annotator input and dictionnary with TreeTager

This task consists in using TreeTager to normalize the text being sent to the Annotator and therefore also use it to normalize the content of the dictionary.
This task is divided into 3 specific issues:

This is followed by @amineabdaoui

Sematinc type property not used by the Annotaor

I have explicitly added to an ontology in OWL some cui, tui and haSTY properties to see if the Annotator will then after consider them… and it does not work.

For instance:
http://stageportal.lirmm.fr/ontologies/MEDLINEPLUS/?p=classes&conceptid=http%3A%2F%2Fchu-rouen.fr%2Fcismef%2FMedlinePlus%239&jump_to_nav=true
has been enriched with
<umls:cui xml:datatype="string">C0150933</umls:cui>
<umls:tui xml:datatype="string">T023</umls:tui>
<umls:hasSTY rdf:resource="http://purl.lirmm.fr/ontology/STY/T023"/>

In the OWL file. This (modulo the syntax) exactly how the UMLS2RDF tool represent the semantic type information.

And we can see that the information is parsed:
http://data.stageportal.lirmm.fr/ontologies/MEDLINEPLUS/classes/http%3A%2F%2Fchu-rouen.fr%2Fcismef%2FMedlinePlus%239?display=all

But the Annotator does not got it:
http://services.stageportal.lirmm.fr/annotator?text=yeux et vision&ontologies=MEDLINEPLUS&longest_only=false&exclude_numbers=false&whole_word_only=true&exclude_synonyms=false&expand_mappings=false&semantic_types=T023

Where is the bug ?

Activate the use of inter-portal mappings when using the Annotator

We have reconciled multilingual mappings between the french ontologies on the SIFR BioPortal and their english counterparts on the NCBO BioPortal;
http://www.lirmm.fr/~jonquet/publications/documents/Article_WIMS2016_Reconciliation_Annane.pdf
and
https://github.com/sifrproject/multilingual_mappings

This ticket concerns the implementation of the feature that will enable to use those interportal mappings to annotate the original french text with ontology concepts from the NCBO BioPortal ontologies.

This means a new parameter expand_interportal_mappings={true|false} (and a small change in the UI to use it)

Erreur dans le score old de l'Annotator

Annoter :
"adefovir, acétate de somatostatine hydraté"
avec ancestors=1
Le concept "Pharmaceutical Ingredient" obtenu en parent devrait avoir le score 18 et pas 9.
Il y a pas de somme des scores des annotations avec le même concept.

Include instances in the Annotator dictionnary

Trailing space handling issues

In FRNORM:
"anisum stellatum " is defined

"anisum stellatum ," matches in the Annotator
but "anisum stellatum " doesn't because the trailing space is stripped before the text is sent to mgrep.

The Annotator semantic expansion with is-a hierarchy does not work with SKOS vocabularies.

Expansion sémantique avec les mappings multilingues

Cela consiste a utiliser les mappings "interportal", voir:
http://www.lirmm.fr/~jonquet/publications/documents/Article_WIMS2016_Reconciliation_Annane.pdf
et
https://github.com/agroportal/documentation/wiki/Mappings

Pour faire l'expansion d'annotations directes avec l'Annotator.
L'idée est donc que l'on puisse annoter du texte en francais avec des ontologies dans le NCBO BioPortal:

  1. soit les traductions des ontologies du SIFR BioPortal (1er niveau d'expansion)
  2. soit des ontologies alignées aux ontologies qui sont la traduction

Le cas 1 ne devrait pas être trop difficile car cela consiste juste a s'assurer que les mappings interportal sont utilisés lors de l'expansion sémantique avec des mappings (&expand_mappings=true) et a run time faire une jointure avec le NCBO BioPortal pour obtenir les informations (JSON) sur le concept mappé.

Le case 2 est un peu plus difficile, car cela consiste a faire 2 expansions consécutives. Celle du cas 1, puis pour chaque URI (concept) mappé dans le NCBO BioPortal, il faut récuperer tous ces mappings dans le NCBO BioPortal et générer alors de nouvelles annotations avec les nouvelles URI obtenues.

Pour obtenir les mappings pour une URI donné, il faut alors utilise le web service
http://data.bioontology.org/documentation#Mapping

Par exemple:

Le texte "mélanome" est donné a l'Annotator avec comme ontologies cibles SIFR:
&ontologies=MSHFRE,MDRFRE

http://services.bioportal.lirmm.fr/annotator?text=mélanome&ontologies=MDRFRE,MSHFRE&longest_only=false&exclude_numbers=false&whole_word_only=true&exclude_synonyms=false&expand_mappings=true

Il s'agit de rajouter un parametre (puis une UI):
&ncbo_ontologies=NCIT,DOID
alors, les annotations obtenues dans MSHFRE et MDRFRE e.g.,
http://purl.lirmm.fr/ontology/MSHFRE/D008545
serait expansé avec les interportal mappings vers
http://purl.bioontology.org/ontology/MESH/D008545
qui serait expansé avec les mappings vers par exemple
http://purl.obolibrary.org/obo/DOID_1909

Pour optimiser, il s'agira de ne traiter que les mappings dans les NCBO ontologies cibles... (e.g. le terme melanoma das mesh a 57 mappings!)

Pour obtenir les mappings de http://purl.bioontology.org/ontology/MESH/D008545 il faut appeller:
http://data.bioontology.org/ontologies/MESH/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FMESH%2FD008545/mappings

Problem when generating Mgrep dictionary file from redis

It seems we have a problem (see #17) with some missing terms in the Mgrep dictionary.
e.g. KETUM
http://2016/4/FRNORM#BrandNameb6e3330cf2f7f5a14ee84771c328714f440fd6d4

After investigation with @twktheainur on the redis cache it seems the corresponding key is in redis.
Both in direct and in the hash c1:dict

redis-cli -p 6379 --raw hgetall "c1:term:-1332201858416265303"
redis-cli -p 6379 --raw hget "c1:dict" "c1:term:-1332201858416265303"

But for some reason it is not in the mgrep dictionnary file.

Match manquant dans FRNORM

Annoter
KERLONE, KETUM, et acétate de potassium, anisum stellatum , sulésomab pirétanide et anisum stellatum
avec FRNORM

Aucun match tandis que les 3 termes sont des sous classe de Pharmaceutical ingredient.

D'autres termes matchent e.g., ACéTATE DE SOMATOSTATINE HYDRATé

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.