Le Musichall Picture est un projet artistique de génération automatique de musique à partir d'images. Dans sa version actuelle, le logiciel analyse les pixels d'une image et convertit les informations de couleur ou de luminosité en événement MIDI (le MIDI est le standard de communication pour les instruments de musique).
Travail demandé
Le projet consiste à étendre les primitives graphiques disponibles pour élargir les possibilités de génération musicale. Quelques pistes :
encadrant :
François Rioult, GREYC, CNRS UMR 6072 (frioult@info.unicaen.fr), public visé : RADI
Contexte
La mise à disposition d'images en temps réel apporte une forte
valeur ajoutée à la communication des collectivités locales (mairie,
conseil général, conseil régional, secteur associatif). Elle permet au
voyageur potentiel ou à l'expatrié d'obtenir des renseignements
dynamiques sur les paysages, le climat, la fréquentation de site
touristiques.
Travail demandé
L'étudiant réalisera une étude de faisabilité pour l'implémentation de quatre webcams. Cette étude concerne :
les aspects techniques relatifs à l'implémentation des capteurs et la diffusion du flux
les aspects juridiques (gestion du droit à l'image)
la mise à disposition des flux vidéo par un système CMS (ex. zope, spip)
La phase de validation nécessite la réalisation d'une maquette opérationnelle.
encadrant :
Thibault Roy, GREYC, CNRS UMR 6072 (troy@info.unicaen.fr), public visé : RADI
Mots-clés
cartographie de documents, recherche et veille d'information,
plate-formes logicielles de traitement automatique des langues
Projet
Avec le développement du Web et des nouveaux moyens de communication, le
nombre de documents électroniques textuels accessibles aux utilisateurs est
de plus en plus important. Certains de ces documents peuvent être d'une
taille particulièrement conséquente (comme certaines pages Web ou certains
fichiers PDF) et leur parcours peut alors être fastidieux pour les
utilisateurs.
Dans le cadre d'études en recherche d'information et en veille documentaire,
nous travaillons actuellement au sein du laboratoire GREYC au développement
des plate-formes logicielles Linguastream (http://www.linguastream.org/) et
ProxiDocs (http://users.info.unicaen.fr/~troy/proxidocs/) permettant de mener
des analyses sur le contenu de documents électroniques textuelles. Ces deux
plate-formes, développées en Java et exploitant la technologie XML,
permettent chacune de travailler à différents niveaux :
LinguaStream permet de combiner des ensembles de traitements sur le
document sous la forme de chaînes de traitement. Ces tâches sont le plus
souvent de natures très différentes, allant de l'analyse morphologique à
l'analyse sémantique. La plate-forme se base principalement sur Java et XML,
et offre une interface graphique permettant de manipuler visuellement tous
les éléments d'une chaîne de traitement.
ProxiDocs permet de réaliser des analyses au niveau de la collection de
documents, en dressant différentes cartes de la collection. Ces cartes
interactives sont basées sur des thématiques repérées dans les documents et
aident ainsi les utilisateurs à appréhender les principaux sujets abordés la
collection. L'application est également développée en Java et exploite XML et
SVG (http://www.w3.org/TR/SVG/) pour les différentes entrées / sorties.
L'objectif principal de ce projet est de créer un module de cartographie de
grands documents pour la plate-forme Linguastream. Ce module, réutilisant en
grande partie des éléments de la plate-forme ProxiDocs, sera particulièrement
utile dans l'analyse de longs documents (tel un atlas géographique) où une
vue cartographique globale et synthétique pourrait aider l'utilisateur à
appréhender leurs contenus.
Un bonne connaissance du Java et des technologies XML serait un plus.
encadrant :
Thibault Roy, GREYC, CNRS UMR 6072 (troy@info.unicaen.fr), public visé : IAD - RADI
Mots-clés
Analyse de forums de discussion, traitement automatique des
langues, cartographie documentaire
Projet
Dans le cadre de recherche en Informatique et plus particulièrement en
Traitement Automatique (TAL), nous cherchons à mettre automatiquement en
évidence les thèmes les plus fréquemment abordés dans les messages postés sur
des forums de discussion. Avec le développement intensif de l'usage de tels
forums, certains d'entre eux contiennent un très grand nombre de messages
répartis en nombreux fils de discussion. Afin de retrouver une information
particulière parmi ces messages, un long travail de recherche dans une liste
interminable de messages est souvent nécessaire à l'utilisateur. Afin d'aider
l'utilisateur dans cette phase de recherche, nous avons déjà à notre
disposition plusieurs outils permettant d'avoir une vision globale des sujets
abordés dans un forum de discussions :
La plate-forme de cartographie et de catégorisation de corpus ProxiDocs
développée ici permettant de dresser des cartes représentant l'ensemble des
messages échangés sur un forum de discussion
(http://www.info.unicaen.fr/~troy/proxidocs)
Ces deux outils prennent en considération des thèmes définies par
l'utilisateur selon son point de vue et sa tâche, les résultats ainsi
produits par les logiciels seront ainsi personnalisés et ne mettront en
évidence sur les vues globales que les thèmes pertinents au yeux de
l'utilisateur.
L'objectif de ce projet est de produire de nouvelles vues globales sur les
forums de discussion en faisant interagir les deux outils présentés
précédemment. En effet, l'outil Bobinette produit une vue assez locale sur
les fils de discussion d'un forum, si le nombre de fils et / ou le nombre de
messages sont très grands, les vues retournées sont assez difficilement
exploitables. Au contraire, la plate-forme ProxiDocs produit des vues
cartographiques très globales sur le forum de discussion, de telles vues
faisant perdre alors les notions de fils de discussion et d'enchaînement
temporel des messages.
Le développement de liens et d'interactions entre ces deux outils permettrait
par exemple de faire ressortir la notion de fils de discussion sur les cartes
de forums. De nouvelles vues globales sur les forums pourront également être
proposées. Techniquement, les vues interactives retournées (cartes ou autres)
seront dans le format SVG (http://www.w3c.org/TR/SVG). Les composants
logiciels développés afin de construire de telles vues pourront être dans les
langages de programmation Java ou PHP, des techniques XML seront utilisés
lors des échanges entre les différents composants logiciels.
Les documents téléchargeables sur Internet sont connus pour avoir des formats et des encodages hétérogènes. Lorsqu'il s'agit de format propriétaire (word, pdf, rtf, postscript, ...), l'accès au contenu textuel n'est pas immédiat. Afin de pouvoir extraire ce contenu, des boîtes à outils ont été écrites et mises à disposition de tous. Il en existe différentes versions, pour chacun des formats listés ci-dessus. Chaque outil génère un résultat contenant le texte et sa mise en forme dans un format qui lui est propre (xml, html, ...).
Afin de permettre des analyses de contenu indépendantes des formats produits par chacun de ses outils, une première solution consiste à transformer tous ces formats de sortie vers un format unique représentant le contenu textuel et sa mise en forme. Cette solution oblige cependant à créer autant de fonctions de conversion vers le format pivot qu'il y a d'outils d'extraction.
Une autre solution consiste à convertir automatiquement tous les types de document (word, html, rtf, ...) vers un seul format (pdf, par exemple) et de ne traiter que ce format. Cette solution impose bien évidemment que tous les types de document puissent être effectivement convertis vers le type de document cible (html2pdf permet par exemple de convertir un certain type de html vers du pdf).
Les deux solutions ne sont bien entendu pas exclusives et peuvent cohabiter au sein d'une même architecture.
Le stagiaire devra dans un premier temps s'approprier l'architecture logicielle en cours de réalisation pour réaliser ce type de traitements. Il étudiera et enrichira le modèle de de représentation du document afin de préparer la phase de récupération de la structure logique.
Récupération de la structure logique :
Les articles scientifiques ont une structuration textuelle particulière, liée au genre académique : présence d'un résumé, de mot-clés, d'une bibliographie, ... Cette constante de style se décline sous des formes particulières très variées, selon l'éditeur (telle ou telle conférence, revue, ...) : certains choisissent le titre en gras, centré, d'autres le préfère justifié à gauche et en couleur ? Pour les articles journalistiques, le phénomène est identique, avec une structuration spécifique liée au genre journalistique.
Dans cette seconde partie de stage, il s'agira d'étudier la structure des deux types d'article, de proposer deux modèles de structure de documents associés, l'un pour les articles scientifiques, l'autre pour les articles journalistiques, puis de réaliser un logiciel permettant de produire une représentation XML correspondant au modèle, à partir d'un article préalablement converti dans le format pivot, et du modèle d'article correspondant. Le stagiaire devra en outre évaluer son outil sur des documents de langues variées n'ayant pas servi à la mise au point des modèles et du logiciel.
encadrant :
Serge Stinckwich, GREYC, CNRS UMR 6072, Université de Caen et Noury Bouraqadi, Ecole des Mines de Douai (serge.stinckwich@greyc.ensicaen.fr), public visé : RADI
A) Contexte Général : Informatique Ubiquitaire
L'informatique ubiquitaire correspond à la branche de l'informatique qui s'intéresse à l'informatique dans un contexte où quasiment tout objet du monde est doté d'une puce et où les réseaux de télécommunication permettent des interactions entre ces différents équipements. Le point de départ étant qu'avec la miniaturisation croissante et le développement des réseaux sans fil, nous nous retrouvons entourés d'équipements divers qui sont en mesure de communiquer. Il n'est donc pas rare qu'une personne dispose de différentes machines (PC de bureau, ordinateur portable, PDA, Smartphone, ...) qu'elle utilise à différents moments et à différents endroits (à la maison, au bureau, au magasin, ...). Ces machines peuvent éventuellement être utilisées conjointement et le plus souvent partager des données. Dès lors, il est nécessaire de disposer d'outil d'échange/réplication/synchronisation de données.
Au delà du simple échange de données, l'utilisateur peut vouloir réaliser la même tâche sur différentes équipements, comme par exemple, lire et éditer des mails sur un téléphone ou sur ordinateur portable). Cela suppose de disposer des mêmes outils logiciels, ou du moins des outils équivalents, sur des plates-formes matérielles différentes, avec différentes capacités.
Si la communication est prévue entre les équipements d'une même personne, il semble alors naturel d'étendre cette possibilité d'interaction à des équipements de diverses personnes. Voire, à des communications entre les machine d'une personne et des appareils qui serait intégrés dans différents objets accessibles dans les sites publiques. Par exemple des plans de villes peuvent être en mesure de calculer un itinéraire et le transmettre sur le PDA du voyageur. Un client dans une galerie marchande peut interagir avec un panneau publicitaire qui fournirait des détails techniques sur le produit vanté ou sur des produits équivalents.
B) Cadre : La plate-forme UbiquiTalk
L'informatique ubiquitaire soulève plusieurs problèmes. Dans le cadre du projet UbiquiTalk (http://csl.ensm-douai.fr/UbiquiTalk), nous nous sommes intéressés à deux d'entre eux :
Commment établir simplement la connexion entre deux équipements quelconques. Il s'agit d'établir un canal de communication entre deux machines qui n'ont a priori aucune connaissance l'une de l'autre, ni du réseau qui sera utilisée. La réponse à ce problème doit également solliciter le moins possible l'utilisateur qui n'est pas forcément informaticien.
Comment permettre l'utilisation de logiciels, notamment à distance, sur différentes machines potentiellement hétérogènes. Il s'agit de fournir une solution qui automatise autant que possible les procédure d'installation et d'administration des logiciels.
En guise de réponse à ces questions, nous avons conçu et développé une première version de la plate-forme libre UbiquiTalk. Par plate-forme nous entendons à la fois un canevas (framework en anglais) pour le développement logiciel et un intergiciel (middleware en anglais) pour supporter les communications distantes. Cette première version d'UbiquiTalk repose sur deux concepts clés : l'hôte et le service. L'hôte correspond à une machine dotée de la plate-forme UbiquiTalk. Différents hôtes peuvent interagir à travers un réseau. Quant au service, il correspond à n'importe quel objet (au sens langages à objets) qui est installé sur l'hôte et qui peut intervenir dans les interactions avec d'autres hôtes. Deux types de services peuvent être distingués :
Les services d'intergiciel : Il s'agit de services supports aux interactions entre hôtes. C'est le cas notamment du service de découverte d'hôtes dans le voisinage réseau ou du service "annuaire" qui permet de retrouver les services installés sur l'hôte à partir de leurs noms.
les services applicatifs : Il correspondent à des services qui réalisent des fonctions métier (i.e. qui relèvent d'un domaine d'application donné) tels que l'échange de fichiers ou l'impression à distance.
La version actuelle d'UbiquiTalk existe pour de multiples architectures matérielles/logicielles (PC Windows/Linux, Mac, ...). Elle est disponible en deux déclinaisons (http://csl.ensm-douai.fr/UbiquiTalk/ScreenShots) qui se distinguent par l'interface graphique. La première, fenêtrée, est destinée aux machines de type machine de bureau ou ordinateur portable. La seconde dispose d'une interface graphique compacte est destinée aux machines de type PDA. Outre l'interface graphique, les services implantés existent aussi dans différentes déclinaisons (PDA ou portables).
C) Travail à Réaliser
La version actuelle d'UbiquiTalk s'avère manquer d'ouverture. En effet, elle ne permet notamment pas de remplacer les services d'intergiciel fondamentaux tels que celui destiné à la découverte d'hôtes. L'objectif du projet est de re-concevoir et de re-implanter UbiquiTalk afin de pallier ces défauts et de produire une nouvelle version encore plus universelle que la précédente. Concrètement, la nouvelle version doit notamment être doté d'un canevas (framework) qui permet de supporter différents protocoles de découverte et de communication dans différentes topologies de réseau. Ce support se matérialisera sous la forme de services qui pourront éventuellement co-habiter sur le même hôte.
En plus de la re-développement du noyau d'UbiquiTalk, le projet doit fournir des quelques services d'intergiciel dont des exemples sont donnés ci-dessous. Il s'agit d'illustrer l'ouverture de la nouvelle version d'UbiquiTalk par rapport à la version existante.
Actuellement, le protocole utilisé est rST. Il est cependant tout à fait envisageable d'en utiliser un autre tel que SOAP. Se pose alors la question du lien entre protocole communication et le protocole de découverte. Certains protocoles de découvertes imposent le protocole de communication. Il faut alors expliciter cette dépendance. Dans d'autres cas, comme pour IGMP, il est possible d'utiliser le protocole de communication de son choix. Il faut alors permettre aux hôtes qui se découvrent de se mettre d'accord sur le choix du protocole de communication. Par exemple, dans le cas de découverte par IGMP, le contenu des messages multi-cast de notification de présence peut contenir, en plus du nom et de l'adresse/port du hôte comme c'est le cas actuellement, fournir la liste des protocoles de communication acceptés.
C.3 Topologies réseau
Pour ce qui est de la prise en compte des topologies des réseaux, UbiquiTalk, dans sa version actuelle permet à des hôtes disposé dans un réseau ad hoc ou dans un réseau local, voir même sur Internet d'interagir. Cependant, dans le cas du réseau ad hoc, seul les voisins immédiats sont accessibles. Il est donc intéressant d'avoir des services relais tant pour la découverte que pour les communications entre hôtes qui ne sont pas directement voisins. Dans le cas de réseaux à infrastructure, les administrateurs souvent restreignent les multi-cast à l'intérieur du réseau et ne les transmettent pas vers l'extérieur. Par ailleurs, les pares-feu sont interdisent souvent les protocoles de communication autre que le classique HTTP. Il serait intéressant d'avoir ici aussi des services relais qui servent de passerelles pour contourner ses verrous et permettre la découverte et la communication entre hôtes sur des réseaux différents.
D) Informations diverses
Le projet sera réalisé à l'aide de Squeak (http://community.ofset.org/wiki/Squeak), version libre du langage à objets dynamique Smalltalk (http://community.ofset.org/wiki/Smalltalk). Smalltalk étant un langage facile à apprendre (http://community.ofset.org/wiki/Les_bases_de_la_syntaxe_Smalltalk), la connaissance du langage n'est pas requise. Seule la connaissance des concepts de la programmation par objets est nécessaire pour démarrer le projet.
Le travail réalisé dans le cadre de ce projet est une étape importante dans la vie de la plate-forme libre UbiquiTalk. Il servira de fondation à d'autres travaux notamment dans le cadre de stages de master.
La réecriture de manière plus moderne de l'analyseur syntaxique de Jacques Vergne a été entreprise par Emmanuel Giguet, Gérard Bécher et Anne Nicolle. Cette réecriture nécessite la mise à jour des ressources qu'il utilisait (lexique, finales, catégories) et leur comparaison avec les ressources publiques en traitement des langues à Elra ou à l'Atilf. L'étudiant choisissant ce projet travaillera en équipe avec les 3 chercheurs cités pour récupérer les ressources de l'analyseur, discuter de leur opportunité, des classements existants, afin de produire des ressources en format XML, de les visualiser pour les chercheurs afin de faciliter leur évolution et de les compiler pour les programmes en cours de développement.
En 1984, A. Shamir a introduit la notion de cryptographie basée sur
l'identité, dans laquelle la clé publique peut être une chaîne
de bits quelconque, liée par exemple à l'identité de
l'utilisateur (nom, adresse email, numéro de sécurité
sociale,...). Le but était notamment d'éviter de recourir aux
certificats de clés publiques, indispensables pour mettre en oeuvre une
infrastructure à clé publique. Si la cryptographie basée sur l'identité
permet donc de se passer d'autorité de certification, et des usages
liés, elle possède un certain nombres de défauts (en particulier
l'existence d'une autorité qui génère les clés secrètes). Mais elle
permet également d'obtenir de façon naturelle des propriétés
intéressantes (révocation de clé, délégation,...).
En 2001, le problème du chiffrement basé sur l'identité a
été résolu (il était ouvert depuis 1984), et nous avons donc
à notre disposition à la fois des protocoles de signatures et de
chiffrement basés sur l'identité.
Le but de ce stage est d'implanter ces protocoles (construits grâce
à des couplages sur des courbes elliptiques) et de les appliquer à la
sécurisation des mails. Par ailleurs, l'étudiant devra discuter de
l'intérêt de la cryptographie basée sur l'identité, et
étudier les techniques alternatives qui permettent de l'améliorer.
La référence sur le sujet est :
Identity based encryption from the Weil pairing by D. Boneh and M. Franklin
SIAM J. of Computing, Vol. 32, No. 3, pp. 586-615, 2003.
Extended abstract in proc. of Crypto '2001, LNCS Vol. 2139,
Springer-Verlag, pp. 213-229, 2001.
Ce projet explore deux domaine important des sciences informatique : la théorie des graphes et la compression de données.
Les graphes sont des structures qui permettent d'appréhender des données qui peuvent être très compliquées. Par conséquent le choix du codage du graphe est très important. Des codages simples comme la martice d'incidence ou la matrice d'adjacence peuvent prendre beaucoup de place mémoire.
La compression de données est un problème de codage basé sur la théorie de l'information, l'entropie et la redondance de l'information à l'intérieur des données examinées. Cela consiste à réduire l'information tout en gardant la pertinence de celle-ci. Plusieurs types de compressions existent. Nous avons par exemple la compression sans perte ou avec perte.
Compresser un graphe peut avoir des application très diverses, par exemple on peut voir une image comme comme un graphe orienté et compresser celui-ci pour diminuer la complexité de l'image. On peut également compresser le grahe du WEB.
L'ensemble des documents HTML peut être vu comme un graphe orienté dans lequel les noeuds sont les documents eux-mêmes et les arcs les hyper-liens reliant les documents entre eux.
La conservation d'un tel graphe est une véritable problématique compte-tenu du volume de donnée que cela représente. C'est ainsi que plusieurs techniques de compression de graphes ont vu le jour.
Naturellement la compression de graphes peut-être utile à d'autres applications.
L'objet de ce projet dans un premier temps et de faire un état de l'art de la compression sur graphes . Dans un deuxième temps de choisir un type de graphe particulier, par exemple le graphe du WEB et de comparer l'efficacité de différentes méthodes de compressions sur ce graphe. dans un dernier temps une méthode pourra être programmée et testée sur des graphes aléatoires.
La réecriture de manière plus moderne de l'analyseur syntaxique de Jacques Vergne a été entreprise par Emmanuel Giguet, Gérard Bécher et Anne Nicolle. L'étudiant choisissant ce projet travaillera en équipe avec les 3 chercheurs cités pour développer une interface conviviale d'expérimentation de cet analyseur sur différents types de texte, en utilisant plus ou moins de ressources, en variant l'ordre dans lequel les ressources sont mises en oeuvre, en mettant en place des mécanismes d'interaction pour faire évoluer les ressources et les programmes en fonction des problèmes rencontrés.
Explorer comment repenser la problématique des moteurs de recherche
(de l'indexation au traitement de la requête)
sans utiliser le concept de mot
Motivation du sujet :
Le concept de mot est à la base des moteurs de recherche actuels :
indexer un document consiste à le découper en mots et enregistrer dans l'index que ces mots sont dans ce document;
et rechercher des documents consiste pour l'internaute à écrire une requête sous forme de quelques mots, et pour le moteur à lui renvoyer les URL classées des documents contenant ces mots.
Or le mot est bien inscrit dans l'écriture des langues occidentales (sauf en finnois, et sauf les mots composés en allemand) ; mais en chinois ou en japonais, les mots ne sont pas délimités dans l'écriture, mais reconstitués par le lecteur.
Comment les documents en chinois sont-ils indexés ? Les textes sont segmentés automatiquement en mots, mais ce traitement est combinatoire, et il est difficilement automatisable, d'où un mauvais fonctionnement des moteurs sur cette langue, de même pour le japonais.
Questions :
comment unifier le plus possible les méthodes de traitement de l'anglais au chinois ?
que mémoriser d'un document (dans l'index) pour le retrouver dans une très grande collection, en ayant le souci de minimiser les calculs des traitements de requêtes ?
comment faire le lien entre la requête et l'index ?
comment classer les réponses du moteur ? avec quelle fonction de classement des documents sélectionnés ?
Pistes de recherche à explorer dans le cadre du projet :
pour indexer un document, en extraire des séquences de caractères répétées
pour lier la requête et l'index, calculer les séquences de caractères de la requête, et les rechercher dans l'index
autres pistes : ad libitum
Méthode :
télécharger des documents (100, 1000, puis 10 000)
les indexer par la méthode expérimentée
faire des expérimentations de recherche et classement de documents à partir de différents types de requête
faire des expérimentations sur des langues variées (pour le chinois, on aura besoin d'un locuteur pour juger de la pertinence des réponses)
mettre en place la méthode classique d'indexation par mots pour faire des évaluations comparatives sur les mêmes collections de documents
Objectifs du projet :
explorer expérimentalement des méthodes d'indexation et de recherche de documents qui n'utilisent pas le concept de mot
évaluer comparativement la méthode classique et la méthode par séquences de caractères répétées.
Le projet consiste à installer et mettre en oeuvre un outil d'interaction langagière entre homme-machine. L'objectif est de définir un ensemble de primitives de commandes langagières pour la conduite d'un robot. Le projet est organisé en :
Le projet consiste à mettre en place un outil d'interprétation en commandes robot des gestes humains. Le projet consiste à observer un geste réalisé par l'homme et l'analyser pour l'intérpreter en commandes. Par exemple, si un homme veut montrer la bonne direction à un robot, il faut par un geste montrant la bonne direction et le robot s'exécutera. Le projet consist à utiliser des techniques d'analyse de scènes.
1. Recensement d'une base de scènes gestuelles.
2. Mise en place d'un algorithme d'analyse d'une scènes.
3. Mise en place d'un algorithme d'interprétation de gestes.
Le projet consiste à faire jouer à un ordinateur une partition de piano. L'objectif consiste à mettre en place un système qui analyse une partition, ensuite la joue. Ce système est décomposé en deux parties :
1. Extraction de notes de musiques à partir d'une image ;
Le projet consiste à proposer un système multi-agents pour les applications datawarehouse. Ce système doit fournir une application qui permet de concevoir et implémenter une application datawarehouse. Pour cela, l'étudiant doit d'abord :
1. Etudier l'architecture datawarehouse.
2. proposer une architecture agents, en proposant pour chaque niveau de l'architetcure les agents qui peuvent intervenir et les moyens de communications.
L'analogie entre chaînes de caractères est une opération cognitive
qui établit une relation entre quatre objets A, B, C et D,
qui se note A : B :: C : D,
et qui énonce que A est à B ce que C est à D.
Entre chaînes de symboles,
c'est-à-dire entre mots ou phrases,
elle rend compte, par exemple
de la conjugaison,
de la déclinaison,
de la dérivation flexionnelle,
voire de transformations syntaxiques,
et ce
ce quelle que soit la langue.
arabe : alsama : muslimun :: arsala : mursilun
français : je marche : marcher :: manger : je mange
Une formalisation partielle de cette opération a été proposée.
Travail à effectuer
En s'appuyant sur cette formalisation partielle,
on réalisera une interface permettant :
de vérifier des analogies ;
de résoudre des équations analogiques.
L'utilisateur entrera trois ou quatre mots ou phrases
et l'interface devra afficher les matrices visualisant
les calculs nécessaires à la vérification de l'analogie
ou à la résolution de l'équation analogique.
Un café. : Un thé fort. :: Une tasse de café, svp. : x
=> x = Une tasse de thé fort, svp.
Réalisation
La réalisation sera faite en utilisant Ajax,
technologie d'applications Web interactive
mettant en jeu, pour simplifier, XHTML et JavaScript.
Les algorithmes à mettre en jeu ont déjà été définies.
La linguistique comparativiste a émergé des observations sur la correspondance phonétique entre langues.
Par exemple,
/p/ en français correspond à /pf/ en allemand
(pipe : Pfeife, palefroi : Pferd, etc.),
ou
/s/ en latin correspond à /h/ en grec ancien
(semi : hemi, homolos : similis, etc.)
ou encore
/h/ à l'initiale en espagnol correspond à /f/ en français ou en italien,
etc.
Travail à effectuer
Par des techniques d'alignements automatiques de sous-séquences de mots,
on voudrait redécouvrir de telles correspondances phonétiques automatiquement,
dans un premier temps entre langues apparentées.
Se familiariser avec des programmes existants de calcul de sous-séquences communes de mots ;
se familiariser avec des programmes existants de calcul d'analogies entre mots d'une même langue ;
récupérer des données linguistiques : liste de mots ou dictionnaires
français-espagnol,
français-italien,
etc.
Les mettre sous forme exploitables pour l'expérience ;
obtenir toutes les analogies dans chaque langue,
calculer les sous-séquences communes dans les analogies ;
établir les correspondances entre sous-séquences
par l'intermédiaire des correspondances de traduction entre mots ;
examiner et juger la validité des résultats
et
en tirer des conclusions sur la possibilité de l'application de la méthode à d'autres langues.
Réalisation
La réalisation sera faite en C et en shell,
elle demandera l'utilisation de programmes en C déjà existant.
Une partie non négligeable du travail consistera à rechercher des données sur le Web
(liste de mots ou dictionnaires).
Le résultat du projet sera un script, et sa documentation,
permettant de lancer l'expérience
de cacul de correspondances phonétiques sur n'importe quelles données alignées.
Une méthode de traduction automatique (TA) de phrases courtes a été proposée
et testée lors d'une campagne d'évaluation de systèmes de TA.
On désire évaluer l'apport de différentes techniques de segmentation-alignement
sur les résultats d'un tel système.
Travail à effectuer
Se familiariser avec le programme de traduction automatique ;
se familiariser avec les données de la campagne d'évaluation de systèmes de TA ;
se familiariser avec les mesures BLEU et mWER ;
se familiariser avec la segmentation-alignement
récupérer des résultats déjà existants de segmentation-alignement ;
utiliser des programmes déjà existants pour obtenir de nouveau résultats de segmentation-alignement ;
mesurer les performances du système en terme de mWER et BLEU (éventuellement réimplémenter ces mesures)
avec ou sans les données segmentées alignées ;
Une technique de conjugaison ou déclinaison automatique par analogie
a été mise au point.
Elle a été illustrée par la conjugaison des verbes français et par la déclinaison des noms allemands
visibles sur des pages Web, avec une interface simple.
Du point de vue théorique,
la conjugaison des verbes arabes pose un problème non illustré par les deux exemples précédents :
l'expansion par infixation multiple de racines trilitères, caractéristique des langues sémitiques.