« MinerRegExBot » : différence entre les versions

De Wikipast
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
 
(5 versions intermédiaires par 3 utilisateurs non affichées)
Ligne 2 : Ligne 2 :


Le MinerRegExBot utilise un texte afin d'y trouver des informations concernant un genre d'évènement qui s'est produit, d'en extraire l'essentiel, par exemple la date ou le lieu et de le publier sous une forme prédéfinie sur le wiki. Pour ce faire, le MinerRegExBot procède en deux étapes. Premièrement, il prend un texte déjà téléchargé et le passe en revue afin d'identifier chaque suite de mots correspondant à l'expression régulière du type d'évènement souhaité. Ensuite, il prend chaque résultat de l'étape précédente et procède à un tri. Il enlève certains mots pouvant être mal interprétés par le bot lorsqu'il tentera de choisir les informations essentielles. Par exemple, M. ou encore Mme qui pourraient être analysés comme des noms. Finalement, le MinerRegExBot utilise ce qu'il reste afin d'extraire les éléments qui vont pouvoir former la publication sous une forme prédéfinie sur Wikipast.
Le MinerRegExBot utilise un texte afin d'y trouver des informations concernant un genre d'évènement qui s'est produit, d'en extraire l'essentiel, par exemple la date ou le lieu et de le publier sous une forme prédéfinie sur le wiki. Pour ce faire, le MinerRegExBot procède en deux étapes. Premièrement, il prend un texte déjà téléchargé et le passe en revue afin d'identifier chaque suite de mots correspondant à l'expression régulière du type d'évènement souhaité. Ensuite, il prend chaque résultat de l'étape précédente et procède à un tri. Il enlève certains mots pouvant être mal interprétés par le bot lorsqu'il tentera de choisir les informations essentielles. Par exemple, M. ou encore Mme qui pourraient être analysés comme des noms. Finalement, le MinerRegExBot utilise ce qu'il reste afin d'extraire les éléments qui vont pouvoir former la publication sous une forme prédéfinie sur Wikipast.
Code: [https://gist.github.com/Gorzen/4964f365087b0b33af81aafbfb2c2d40]


== Exemples ==
== Exemples ==
Ligne 58 : Ligne 60 :
* [[1887]] / -. Naissance de [[François Bouvier]].
* [[1887]] / -. Naissance de [[François Bouvier]].
* [[1884.12.19]] / [[Zaxolany]]. Naissance de [[Antonin Zapotocky]].
* [[1884.12.19]] / [[Zaxolany]]. Naissance de [[Antonin Zapotocky]].
Par ailleurs, en lisant notre output, nous avons aperçu une entrée aussi intéressante qu'amusante:
* [[1913.11.7]] / [[Mondovi]]. Naissance de [[Albert Camus]].
Nous y voyons le célèbre Albert Camus et, de surcroît, avons extrait des informations correctes. [https://fr.wikipedia.org/wiki/Albert_Camus]


=== Critiques et améliorations possibles ===
=== Critiques et améliorations possibles ===
Ligne 64 : Ligne 72 :
* Dans les articles il y a une quantité non négligeable de coquilles. En effet, que ce soit au moment de l'écriture ou de la numérisation des données, un certain nombre de coquilles sont présentes dans les données. Nous pourrions améliorer les expressions régulières de manière à ce qu'elle soit un peu plus tolérantes vis-à-vis de ces dernières. Cependant, ceci demanderait à l'étape de ''sanitization'' d'être un peu plus conséquent et se veiller à ne pas publier de fausses données.
* Dans les articles il y a une quantité non négligeable de coquilles. En effet, que ce soit au moment de l'écriture ou de la numérisation des données, un certain nombre de coquilles sont présentes dans les données. Nous pourrions améliorer les expressions régulières de manière à ce qu'elle soit un peu plus tolérantes vis-à-vis de ces dernières. Cependant, ceci demanderait à l'étape de ''sanitization'' d'être un peu plus conséquent et se veiller à ne pas publier de fausses données.
* Nous pourrions également améliorer les queries existantes de manière à ce qu'elles supportent plus de formulations françaises différentes, mais ceci impliquerait aussi d'avoir une étape de sanitazation plus conséquente.
* Nous pourrions également améliorer les queries existantes de manière à ce qu'elles supportent plus de formulations françaises différentes, mais ceci impliquerait aussi d'avoir une étape de sanitazation plus conséquente.
* Le MinerRegExBot est utilise les majuscules afin de trouver les informations nécessaires. Par conséquent, ce dernier peut parfois se tromper et, par exemple, prendre un déterminant à la place du nom d'un lieu. Ainsi, il faudrait améliorer la partie où il ''sanitize'' l'output avec un pool de déterminants afin de pouvoir éliminer ces cas.
* Le MinerRegExBot utilise les majuscules afin de trouver les informations nécessaires. Par conséquent, ce dernier peut parfois se tromper et, par exemple, prendre un déterminant à la place du nom d'un lieu. Ainsi, il faudrait améliorer la partie où il ''sanitize'' l'output avec un pool de déterminants afin de pouvoir éliminer ces cas.

Dernière version du 7 mai 2019 à 10:57

Description

Le MinerRegExBot utilise un texte afin d'y trouver des informations concernant un genre d'évènement qui s'est produit, d'en extraire l'essentiel, par exemple la date ou le lieu et de le publier sous une forme prédéfinie sur le wiki. Pour ce faire, le MinerRegExBot procède en deux étapes. Premièrement, il prend un texte déjà téléchargé et le passe en revue afin d'identifier chaque suite de mots correspondant à l'expression régulière du type d'évènement souhaité. Ensuite, il prend chaque résultat de l'étape précédente et procède à un tri. Il enlève certains mots pouvant être mal interprétés par le bot lorsqu'il tentera de choisir les informations essentielles. Par exemple, M. ou encore Mme qui pourraient être analysés comme des noms. Finalement, le MinerRegExBot utilise ce qu'il reste afin d'extraire les éléments qui vont pouvoir former la publication sous une forme prédéfinie sur Wikipast.

Code: [1]

Exemples

Voici un exemple de la pipeline de notre bot, en premier il lit les articles (nous en montrons 2 ci-dessous pour illustrer) pour vérifier si l'expression régulière apparaît dans cet article. Si c'est le cas il retourne les mots qui correspondent à l'expression. Nous lisons l'expression retournée, qui par conséquent suit une forme bien précise, pour en ressortir le nom, la date de naissance et le lieu (si disponible). Ensuite nous écrivons les résultats dans Wikipast: MinerRegExBot_output.

Articles Brut

Évidemment, le texte n'est pas rouge dans les articles; mais nous les avons coloré pour des soucis de lisibilité

Voici ce avec quoi nous commençons, c'est-à-dire des articles de journaux. Nous en avons choisi 2 pour illustrer le fonctionnement du bot. Un cas où il y a peu d'informations et un autre où il y a plus d'informations disponibles par rapport à la date et le lieu de naissance.

1.

François Bouvier Cest- aveo un vif regret que l'on a appris, vendredi soir, la mort de M. François Bouvier, administrateur de la Société anonyme Samuel Châtenay. Certes, depuis quelque temps, on savait M. Bouvier gravement malade, mais ses nombreux amis conservaient toujours l'espoir — à la suite d'une dernière intervention chirurgicale — qu'il pourrait guérir. Aussi la nouvelle de sa mort les a-t-eile douloureusement frappés. François Bouvier est né en 1887. Après avoir fréquenté le Collège latin et le Gymnase scientifique, où il porta les couleurs néocomiennee, il se rendit à l'étranger, à Hambourg d'abord, en Angleterre ensuite. De retour à Neuchâtel, il entra dans la maison de son père et de ses oncles, entreprise à laquelle il resta attaché jusqu'à la fin de sa vie. Le défunt s'intéressa beaucoup a la chose publique et pendant _plusieurs législatures, il représenta le parti libéral au Conseil générai ! de Neuchâtel et au Grand Conseil. Il faisait partie, en outre, de comités de diverses sociétés d'utilité publique auxquelles il apportait un dévouement jamais en défaut). Il était notamment caissier du Comptoir de Neuichâteil, de l'A. D. E. N. et de la Fédération' du Pied du Jura, membre du comité de la Compagnie des propriétaires-_encaveurs neuchâtelois et. administrateur du pavillon neuchâtelBis diu Comptoir de. Lausanne et de la Foire suisse de Bâle. Il fut aussi président du. Cercle libéral. Homme généreux et compréhensif, d'un abord agréable, François Bouvier laissera à tous ceux qui ont eu le privilège de le connaître w souvenir inoubliable et sa mort plonge dans l'affliction toutes les personnes qui étaient honorées de son amitié.

2.

M. Zapotocky est élu président de la République tchécoslovaque « AMI FIDÈLE » DE L'U. R. S. S. M. Siroky, jusqu'ici vice-président du conseil, est nommé premier ministre VIENNE, 22 (A. F. P.). — M. tocky a été élu à l'unanimité président de la République par l'Assemblée nationale tchécoslovaque. Ce choix avait été proposé par M. Siroky, vice-président du Conseil, au nom du comité central du parti communiste. C'est à mains levées que les 270 députés présents ont élu M. Zapotocky à la présidence de la République. Auparavant M. Siroky avait dit qu'il fallait élire « un ami fidèle de l'Û. R. S. S ., un défenseur acharné du socialisme et de la politique de paix et de collaboration internationale telle que la préconisait Staline ». _•¦ A 12 h. 20, Radio-Prague a diffusé l'hymne national, joué dans la cour du i château de la capitale deux heures plus. tôt, aussitôt que le résultat de l'électioneut été connu, tandis que résonnaient j des salves de canon et que le drapeau présidentiel était hissé sur l'édifice, résidence du président de la République. « Pour la seconde fois, a déclaré le speaker de Radio-Prague, un ouvrier est élu à la présidence de la République, un révolutionnaire sans peur, qui jouit de notre confiance à tous. » La radio a ensuite retransmis la seconde partie de la séance solennelle de l'Assemblée nationale : la prestation de serment du nouveau président. M. Siroky est allé cher cher M. Zapotocky, qui n'assistait pas à la première partie de la séance. Le nouveau président est entré dans la salle au son des fanfares et accueilli par des applaudissements et des acclamations qui se sont prolongées pendant cinq minutes. Devant l'assemblée debout, il a prêté serment, la main posée sur la Constitution. L'hymne national a ensuite retenti, suivi de l'hymne tique, puis M. Zapotocky a signé la formule du serment et gagné les appartements présidentiels, où il a reçu les félicitations de ses collaborateurs et des députés. Le nouveau président du gouvernement PARIS, 22 (A. F. P.). — Radio-Prague ; annonce que M. Zapotocky, président de la République tchécoslovaque, a nommé M. Viliam Siroky à la présidence dru conseil des ministres. M. Siroky a aussitôt prêté serment. Etaient présents lors de la prestation de serment de M. Siroky, à Prague, tous les membres du comité central du parti communiste tchécoslovaque, du comité central du front national, du conseil national slovaque et du conseil des commissaires slovaques. La carrière de M. Zapotocky M. Antonin Zapotocky est né le 19 décembre 1884, à Zaxolany, près cle Kladno, centre minier et métallurgique de la région de Prague. Son père, qui travaillait chez un tailleur ,- était un syndicaliste militant. tonin a fait un apprentissage chez un .. maçon. Dès cette époque, il prend part \" _& un mouvement de-jeunesse âritiautrichien, ce qui lui vaut un premier séjour en prison, en 1905. Dès sa libération, il adhère à l'organisation des jeunesses social-démocrates tchèques. Il en devient secrétaire général, pour la région de Kladno, entre 1907 et 1914. Mobilisé dans l'année autrichienne comme simple soldat, il se bat sur les divers fronts pendant la première guerre mondiale. ia conuitil ues un au, reprend son activité politique. En décembre 1920, il est arrêté et condamné à deux ans et demi de prison pour avoir organisé ct dirigé une grève de mineurs et de métallurgistes dans la région de Kladno. Libéré à la suite d'une amnistie, il adhère au parti communiste tchèque, fondé, par Gottwald et, peu après, est élu secrétaire du parti à Prague. En mars 1923, il est nommé secrétaire général du parti communiste. Elu au parlement en 1925, M. Zapotocky conserve son mandat jusqu'en 1938. Après l'annexion de la Tchécoslovaquie par les Allemands, le comité central du parti décide de l'envoyer à l'étranger, mais il est arrêté à la frontière par la Gestapo, puis déporté au camp d'Oranienbourg. L'armée viétique ayant libéré le camp cn mai 1945, M. Zapotocky rentre à Prague, où il reprend la réorganisation du mouvement syndical. Le 8 juin de la même année, il est élu président de la C. G. T. tchécoslovaque. En 1946, il devient membre de l'Assemblée nationale provisoire et candidat du parti communiste à la présidence du parlement.

Résultats de grep

Pour les expressions régulières nous nous servons de grep[2]. Grâce à une expression régulière qui, pour être bref, cherche un pattern de la sorte:

[Mots commençant avec une majuscule] est né [des mots]? [en xxx | le xxx mois xxx] [à """"]?

Si vous voulez voir l'expression exacte regardez dans le code!

1. François Bouvier est né en 1887

2. Antonin Zapotocky est né le 19 décembre 1884, à Zaxolany,

Traduction en variable Python

1.

Nom: François Bouvier
Date: 1887
Lieu: None

2.

Nom: Antonin Zapotocky
Date: 1884.12.19
Lieu: Zaxolany

Traduction pour Wikipast

* [[1887]] / -. Naissance de [[François Bouvier]].
* [[1884.12.19]] / [[Zaxolany]]. Naissance de [[Antonin Zapotocky]].

Ce qui donne:

Par ailleurs, en lisant notre output, nous avons aperçu une entrée aussi intéressante qu'amusante:

Nous y voyons le célèbre Albert Camus et, de surcroît, avons extrait des informations correctes. [3]

Critiques et améliorations possibles

  • Le MinerRegExBot prend en compte un seul type d'événement dans les textes, c'est-à-dire les naissances, en y extirpant la date, le lieu, ainsi que le nom et prénom de la personne en question. Toutefois, afin d'y ajouter des nouvelles expressions régulières, il suffit d'ajouter une nouvelle forme d'expression régulière ainsi que les éléments à y extirper (la partie de sanitization sera probablement assez similaire à ce qui est déjà existant). On pourrait imaginer rechercher par exemple les dates de mort ou alors d'autres expressions régulières qui servent également à trouver des dates de naissance.
  • Dans les articles il y a une quantité non négligeable de coquilles. En effet, que ce soit au moment de l'écriture ou de la numérisation des données, un certain nombre de coquilles sont présentes dans les données. Nous pourrions améliorer les expressions régulières de manière à ce qu'elle soit un peu plus tolérantes vis-à-vis de ces dernières. Cependant, ceci demanderait à l'étape de sanitization d'être un peu plus conséquent et se veiller à ne pas publier de fausses données.
  • Nous pourrions également améliorer les queries existantes de manière à ce qu'elles supportent plus de formulations françaises différentes, mais ceci impliquerait aussi d'avoir une étape de sanitazation plus conséquente.
  • Le MinerRegExBot utilise les majuscules afin de trouver les informations nécessaires. Par conséquent, ce dernier peut parfois se tromper et, par exemple, prendre un déterminant à la place du nom d'un lieu. Ainsi, il faudrait améliorer la partie où il sanitize l'output avec un pool de déterminants afin de pouvoir éliminer ces cas.