Chapitre IX          Vers une plate-forme de construction, déploiement et évaluation de systèmes de TA: JianDan-eval

Cette partie présente la construction en cours de la plate-forme JianDan-eval. Elle contient pour l’instant le cahier des charges et l’architecture logicielle. Ce système est partiellement implémenté, et a déjà servi à un étudiant de M2R pour construire et évaluer des systèmes Moses, mais les spécifications externes de certaines fonctionnalités restent à compléter, tandis que d’autres aspects sont déjà opérationnels (par exemple, la saisie des paramètres d’entraînement et d’évaluation). Nous les présenterons en annexe ou les incluerons dans la version finale de ce mémoire.

IX.1      Cahier des charges, architecture, et spécification externes

IX.1.1      Cahier des charges

IX.1      Buts du système JianDan-eval

JianDan-eval est une plate-forme (en construction) d’évaluation, de création et d'utilisation de systèmes de traduction automatique (TA). JianDan-eval permettra la construction de TA en ligne, l’évaluation de la qualité de systèmes de TA (support de campagnes ponctuelles ou permanentes), et la création d’une infrastructure pour l ‘évaluation humaine (objective par PE, et subjective).

La conception de JianDan-eval a été inspirée par KantanMT[1], et, comme dans KantanMT, la partie « construction de TA » est limitée aux systèmes Moses. Par contre, la partie « évaluation » est ouverte à tous les types de systèmes de TA, du moment qu’on peut les appeler par Tradoh (il s’agit donc de versions en ligne et gratuites). 

JianDan-eval a deux groupes de fonctionnalités principales. D'abord, la création ou l'intégration de TA dans le nuage ; ce point contient les fonctions suivantes: 

·      création de systèmes de TA sur le nuage

·      intégration de l’appel à des systèmes de TA créés par des utilisateurs

·      création de scripts pour l'entraînement de systèmes de TA

·      service de traduction (serveurs de TA)

·      surveillance de l'entraînement

Le second groupe de fonctionnalités concerne l'évaluation de différents systèmes de TA (comme Moses, Joshua, Niutrans, Apertium, GT, Systran, Bing, Reverso, etc.) et la génération de sites Web pour l'évaluation. JianDian-eval doit supporter des campagnes d’évaluation ponctuelles (comme IWSLT) ou permanentes:

·      paramétrabilité des TA et des données

·      paramétrabilité des méthodes « objectives » : BLEU, NIST, TER, mTER, temps de PE…

·      paramétrabilité des méthodes « subjectives » : fluidité, parallélisme/adéquation, valeur d’usage, fiabilité, exactitude terminologique, et phraséologique …

·      création d'une infrastructure pour l'évaluation humaine (objective par PE, et subjective).

JDE intégrera partout l'aspect contributif et historique.

IX.2      Architecture logicielle

L’architecture de JianDan-eval, présenté ci-dessus, est composée de 3 parties.

Tout d’abord, il y a un serveur d’applications,

·      qui assure le rôle de passerelle vers la base des données de tous les utilisateurs,

·      qui contient une base de données,

·      qui fournit l’interface utilisateur (client léger) pour accéder aux pages Web,

·      qui gère les appels à la TA.

Ensuite, il y a un serveur de TA (ou plusieurs), qui contient les décodeurs et les modèles de traduction, et qui fournit le service de traduction. Ce serveur n’est pas visible par l’utilisateur, mais l’interface de service de traduction est accessible par l’API de Tradoh.

Enfin, il y a un serveur d’entraînement, qui est utilisé pour la création de systèmes de TA de type Moses.  

Serveur d’applications

Le serveur d’applications assure un double rôle dans l’architecture de JianDan-eval.

D’abord, il hébergera l’application Web d’édition des disponibilités (client léger). Afin d’éviter un nombre important de problèmes de sécurité, les communications entre le serveur et l’utilisateur pourront être chiffrées.

Le serveur d’applications permettra également de fournir les services permettant aux utilisateurs d’accéder aux informations de la base de données. L’avantage est qu’ainsi les interactions (consultation, modification ou suppression) ne se feront que depuis un seul et unique point d’accès, ce qui facilitera grandement la maintenance. De cette manière, nous ne dépendrons pas du choix de la base de données. De plus, cela permettra d’assurer un contrôle d’accès plus strict aux informations applicatives, et simplifiera notamment les mises à jour du schéma de la base.

Serveur de TA

Le serveur de TA permettra de fournir les services de traduction par TA au serveur d’applications. Il contiendra donc des décodeurs de TA, comme le décodeur de Moses ou le décodeur de Joshua. Les modèles de traduction seront déployés dans ce serveur.

Serveur d’entraînement

Le serveur d’entraînement permettra de créer les tables d’un système de TA. Tout d’abord, il recevra les données d’entraînement à partir du serveur d’applications. Ensuite, il préparera les données, et démarrera une procédure d’entraînement. Enfin, le serveur d’entraînement enverra le nouveau modèle au serveur de TA.

Interconnexion avec les systèmes extérieurs

·      Authentification avec Facebook/Google+/Twitter

Pour l’authentification des utilisateurs, il sera intéressant de proposer des alternatives de connexion rapide via les réseaux sociaux : Facebook, Google plus ou Twitter.

L’authentification sociale permet de gérer à la fois l'authentification sur les réseaux, et aussi de récupérer facilement des données depuis ces derniers.  

·      Envoi de courriels avec SMTP

Les envois de courriels se feront par l’intermédiaire du serveur SMTP de chaque machine.

Description : Mavericks:Users:lingxiaowang:Desktop:1.pic.jpg

Figure 53 : Architecture initiale de gestion de travaux

·      Files d’attente & tâches

Après une brève études de l’existant, nous nous proposons d'utiliser l’intergiciel ActiveMQ pour gérer les requêtes. Cette méthode permet non seulement de contrôler l’ordre des requêtes en ordre, mais aussi de mettre en place une gestion de priorité en donnant une importance particulière à certaines tâches, ou à certains clients. De la même manière, en qualifiant correctement les traitements, il sera facile de mettre en place des serveurs dédiés à certains processus.

Acteurs du système

Les acteurs sont les différentes entités interagissant avec le système. Nous avons identifié différentes catégories d’acteurs : utilisateur, administrateur, et évaluateur.

·      Utilisateur. L’acteur « utilisateur » représente tout utilisateur physique souhaitant se servir de JianDan-eval. Il devra s’identifier dans le système, afin d’avoir par la suite les droits et privilèges correspondant à son profil.

·      Administrateur. L’acteur « administrateur » gère les utilisateurs, et surveille les privilèges des utilisateurs.

·      Évaluateur. L’acteur « évaluateur » évalue la qualité de TA, et les post-éditions par les utilisateurs. Il y a 2 types d’évaluateur, « évaluateur permanent » et « évaluateur temporaire ». Le rôle d’évaluateur permanent, avec ses privilèges, peut être attribué par l’administrateur de JianDan-eval. Le rôle d’évaluateur temporaire peut être attribué par l’administrateur, et aussi par l’organisateur d’un projet, dans un ou plusieurs projets.

 


 


 



[1] KantanMT : http://www.kantanmt.com