Stage de Louis Demange - IUT Charlemagne - [27/04/20 au 3/07/20]
Important : cette page est réservée au suivi du stage, merci de ne pas la modifier
Informations générales pour les stagiaires
Pour toute information concernant ce stage : contacter Sébastien et Gilles
Sujet
Stage (Avril - Juillet 2020)
Avril
27/04 :
- Arrivée (télétravail, sur le workspace Rocket.Chat)
- Lecture de la doc UCD1+ de IVOA
- Découverte des outils des documentalistes pour les UCDs
- Première visioconférence avec Sébastien et Gilles
- Découverte de ElasticSearch
- Découverte de TWiki
- Création de mon compte GitLab (@LouisDemange)
Notes :
J'ai découvert beaucoup de nouveaux outils à prendre en main. La visioconférence m'a permis de bien comprendre les besoins des documentalistes mais je n'ai pas encore bien compris toute leurs méthodes de travail.
28/04 :
- Présentation et démonstration de VizieR par Gilles Landais ( pdf)
- Intervention de Laurent Michel sur le projet franco-chinois SVOM (pdf)
- Visioconférence avec Sébastien et Gilles pour étudier VizieR plus en profondeur
-
Apprentissage des bases du language PERL pour étudier les outils existant (
Cheat Sheet)
29/04 :
- Présentation et démonstration de l’observatoire virtuel par André Schaaff (pdf)
- Étude des vieux outils existant en PERL
- Présentation de Simbad par Anaïs Oberto (pdf)
30/04 :
- Étude des vieux outils existant en PERL
- Étude de structure de donnée pour les règles de recherche d’UCD
Mai
01/05 : férié
04/05 :
- Visioconférence avec Emmanuelle Perret pour voir en détail comment travail les documentalistes (pdf)
- Recherche de technique d’extraction de mots-clés (RAKE: Rapid Automatic Keyword Extraction)
- Visioconférence avec Gilles pour parler du fichier de description des UCD1+ et librairie python nltk
Notes :
Emmanuelle n'a pas une connexion suffisante pour le partage d'écran
05/05 :
- Étude du format YAML pour les descriptions d’UCD
- Début de l’écriture du script, gestion des arguments
- Implémentation de l’extraction de mots-clés
06/05 :
- Présentation d’Aladin par Thomas Boch (pdf)
- Implémentation de la lemmatisation avec WordNet
- Parser pour le fichier yaml
07/05 :
- Présentation de l'infrastructure informatique de l'Observatoire (Datacenter) par Christophe Saillard (pdf)
- Fonction de recherche dans la liste d’UCD avec les mots-clés et de calcul du score
08/05 : férié
11/05 :
- Test sur l’ancien code pour mieux le comprendre
- Parser pour l’ancien fichier
12/05 :
- Présentation du métier de documentaliste par Evelyne Son (pdf)
- Travail sur le fichier de description des UCDs et la recherche par mots-clés
13/05 :
- Ajout de la recherche par expression régulière
- Ajout de la recherche par intervalle (nombres entiers et décimaux)
- Reprise à zéro du fichier de description des UCDs sur la base de la dernière norme de l’IVOA
14/05 :
- Option pour prendre en compte les majuscules dans les comparaisons (ignoré par défaut)
- Recherche de solutions pour accélérer la lemmatisation
- Écriture de la doc des fonctions
15/05 :
- Démo de la première version à Gilles et Sébastien
- Présentation du métier d’astronome par Sébastien Derriere (pdf)
- Recherche de solutions techniques pour les UCDs photométrique avec leur longueur d’onde
18/05 :
- Création du dépôt GitLab
- Amélioration de l’extraction de mots-clés (meilleurs traitements des majuscules)
- Option pour ignorer complètement les majuscules
19/05 :
- Utilisation de la classe logging pour les logs
- Refactorisation (class et main) pour pouvoir être utilisé comme un module
20/05 :
- Amélioration de la lemmatisation
- Changement de la gestion des mots-clés groupés
21/05 : férié
22/05 : férié (pont)
25/05 :
- Rédaction du README
- Refactorisation avec les classes Parser et Finder
- Écriture de tests pour l’extraction de mots clés
- Méthode de recherche de quantités (couple valeur/unité)
- Écriture de tests pour la recherche de quantités
26/05 :
- Ajout de la gestion des intervalles dans la recherche de quantités
- Écriture de tests pour les intervalles
- Écriture de tests pour les noms de filtres
27/05 :
- Définition des UCDs du spectre électromagnétique (em.*) dans le fichier de définition
- Écriture d’un tableur de conversion entre fréquences, longueur d’ondes, et énergies
28/05 :
- Méthode de conversion entre unités
- Écriture de tests pour la conversion d’unités
- Modification du chargement des définitions pour prendre en charge les intervalles des UCDs em.*
29/05 :
- Implémentation de la recherche avec intervall et entre unités
- Tests et correction de bugs
- Présentation et démonstration d’Elasticsearch par Gilles Landais (pdf)
Juin
01/06 : férié
02/06 :
- Refactorisation des classes dans des fichiers séparé pour la lisibilité
- Correction de définition d’UCD incohérente
- Modification du traitement des intervalles pour la recherche dans le spectre
03/06 :
- Ajout de l’UCD builder
- Polissage de certaine partie du code
- Modification de certaines définitions
- Première version fonctionnelle
04/06 :
- Refactorisation pour faciliter l'import et l’utilisation du module
- Écriture d’un script de test général
- Tests et correction de bugs
05/06 :
- Script de test pour comparer avec l’ancien programme
- Séminaire sur la restauration et digitalisation du globe de Coronelli et pré-soutenance de Odile Mallet
- Amélioration de plusieurs définitions
- Modification de la prise en compte des majuscules pour les comparaisons de mots-clés
- Modification de la logique d’assemblage des UCDs
08/06 :
- Méthode pour analyser les indices de couleur
- Amélioration de plusieurs définitions
- Refactorisation et correction de bugs
09/06 :
- Modification de la méthode de recherche d’UCDs par mots-clés pour préserver l’ordre de la description
- Modification de la structure des définitions
- Tests et amélioration des définitions
10/06 :
- Ajout de la possibilité de faire une définition avec un groupe de mots-clés
- Implémentation de la recherche par groupe
- Mise à jour de la documentation
- Révision des définitions des UCDs arith, em, instr, meta et obs
11/06 :
- Amélioration de l’UCD builder avec le score des UCDs
- Correction d’une erreur sur le calcul des points dans le parser
- Révision des définitions des UCDs phot, phys et autres
12/06 :
- Amélioration de l’UCD builder
- Ajouts de multi word expression
- Révision des définitions des UCDs pos, spect et src
15/06 :
- Révision des définitions des UCDs stat et time
- Amélioration de l’UCD builder
- Correction d’une erreur sur le calcul du score sur le match AND
- Visioconférence avec Sébastien, Gilles et Emmanuelle
16/06 :
- Création d’un serveur avec HTTPServer pour utiliser le programme comme une API REST
- Ajout d’une méthode de recherche d’UCD sans prendre en compte les mots-clés requis (liste exhaustive)
17/06 :
- Modification des paramètre par défaut et des routes de l’API
- Implémentation d’une recherche de filtre plus avancé avec VizieR et la table METAfilter
18/06 :
- Amélioration de la recherche avec METAfilter
- Implémentation d’une recherche d’UCD avec l’API ES de VizieR
- Tests et correction de bugs
19/06 :
- Optimisation de la recherche avec METAfilter
- Amélioration de la recherche avec l’API ES de VizieR
- Visioconférence avec Sébastien et Gilles
du 22/06 au 26/06:
- Rédaction du rapport de stage
Notes :
Les logos du CDS sont disponible
ici et X-Match a un
magnifique logo presque inconnu
29/06 :
Notes :Proposition de CDD
30/06 :
- Multithread du server
- Ajout de plus de nom d’unité dans le convertisseur
Juillet
01/07 :
- Découverte de Docker avec Gilles
- Création d’une image pour le service UCD Finder
Notes :URL de test de l’API (bêta)
02/07 :
- Présentation de mon travail au CDS
- Amélioration de la réponse pour la recherche dans VizieR
- Papier pour le CDD
03/07 :
- Expérimentation avec Elasticsearch
- Ajout de la config Docker
Fin du stage, je continuerai en CDD à partir du 20 juillet
Liens
Versions testables
http://cds.u-strasbg.fr/ucd-finder/beta/
http://cds.u-strasbg.fr/ucd-finder/beta/assign?d=Proper+motion
http://cds.u-strasbg.fr/ucd-finder/beta/assign?d=Length%20of%20exposure%20(in%20seconds)&part=keywords,suggested,UCDs
Documentation
cf.
README sur
GitLab
Liste des améliorations à envisager
- Interface Web
- Interface pour terminal
- Parser pour fichier ReadMe de VizieR
Bugs connus
- Validation des UCDs de VizieR
- Parsing de certain nom de filtre avec des caractères spéciaux comme "H2(1-0)c"