Bonjour,
Vous êtes tous cordialement invités à assister au séminaire qui aura
lieu le mercredi 23 mai 2007 à 14 heures en Amphi 2 (KB).
-----------------------------------------------------------------------
Le programme :
*Vaucanson, Théorie des Jeux et Parallélisme*
http://www.lrde.epita.fr/cgi-bin/twiki/view/Publications/Seminar-2007-05-23
VAUCANSON
14h00 : Un format universel de description d'automates et son
utilisation dans Vaucanson -- Florian Lesaint
14h30 : Boosting Vaucanson - partie 1 -- Guillaume Lazzara
15h00 : Boosting Vaucanson - partie 2 -- Jimmy Ma
15h45 : Suppression des transitions spontanées -- Vivien Delmon
16h15 : Transducteurs synchronisés -- Guillaume Leroi
THEORIE DES JEUX
16h45 : Méthodes algorithmiques de recherche d'équilibres de Nash --
Antoine Leblanc
PARALLELISME
17h15 : Conception d'une bibliothèque générique de parallélisation en C
++ s'appuyant sur l'existant -- Elie Bleton
-----------------------------------------------------------------------
Les Résumés des exposés :
**************************
VAUCANSON
Un format universel de description d'automates et son utilisation dans
Vaucanson -- Florian Lesaint
La proposition XML présentée à CIAA 2005 (Conference on Implementation
and Application of Automata) montre certaines lacunes.
Le but est de finaliser la proposition d'un format universel
pour la description d'automates afin de faciliter la
communication entre les divers outils qui leur sont consacrés.
Une seconde étape consistera à modifier VAUCANSON pour lui permettre de
supporter ce format, via une réimplémentation de son parseur XML. Ce
sera l'occasion de passer d'un modèle DOM à un modèle SAX, afin d'en
réduire l'utilisation mémoire et espérer ainsi pallier les piètres
performances de VAUCANSON.
Boosting Vaucanson - partie 1 -- Guillaume Lazzara
Suite aux séminaires de l'année dernière, il en ressort que les
performances globales de Vaucanson pouvaient largement être améliorées
par l'usage de tables de hachage et plus particulièrement celles de la
bibliothèque Boost Multi Index.
Pour ce séminaire, nous chercherons à tirer parti des nouvelles
fonctionnalités offertes par Boost. Ceci impliquera l'apparition d'une
nouvelle implémentation de graphe. L'étude de cette nouvelle
implémentation ayant été réalisé indépendament de Vaucanson, nous
présenterons les enjeux induits par son intégration dans Vaucanson.
Boosting Vaucanson - partie 2 -- Jimmy Ma
Au cours de ces séminaires, Vaucanson a été muni d'une nouvelle
implémentation d'automates. Notre but étant d'évaluer l'impact de ces
changements sur les performances, en particulier dans les algorithmes.
Dans un premier temps, nous dresserons un bilan brut sur les nouvelles
performances. Le but étant de trouver les algorithmes où les nouvelles
fonctionnalités apportées ne sont pas pleinement exploitées.
Dans un deuxième temps, nous fournirons une nouvelle implémentation de
certains algorithmes en utilisant la nouvelle API. Enfin, nous
dresserons un bilan global sur l'état actuel de Vaucanson.
Enfin, nous dresserons un bilan global sur l'état actuel de Vaucanson.
Suppression des transitions spontanées -- Vivien Delmon
Beaucoup d'algorithmes sur les automates prennent en entrée des
automates sans transitions spontanées. L'algorithme de suppression de
ces dernières est donc un point central dans Vaucanson.
L'implémentation actuelle de l'algorithme générique est assez rapide
mais gourmande en mémoire. Une autre version proposée par Sylvain
Lombardy devrait être moins gourmande et plus rapide par la même
occasion. Par ailleurs, un algorithme a été publié par Mehryar Mohri des
AT&T Labs et sera également mis à l'épreuve lors de ce séminaire.
Ces deux algorithmes seront implémentés d'une part sur l'API actuelle de
Vaucanson et d'autre part sur la future API qui devrait apporter de
nouvelles fonctions grâce notamment à l'intégration d'une structure
basée sur les Boost Multi Index.
Transducteurs synchronisés -- Guillaume Leroi
Un transducteur synchronisé est un transducteur dont les étiquettes
sont des couples de lettre et les fonctions finales sont de la forme
(L,1) ou (1,L) (où 1 est le mot vide et L un langage rationnel).
Une opération de base dans le calcul d'un transducteur synchronisé est
la circulation des sorties d'un transducteur. La circulation consiste
à déplacer un mot w en arrière à travers un état. Ce mot w est un
préfixe commun à toutes les étiquettes des transitions sortantes de
cet état. On le supprime donc pour le rajouter en suffixe de toutes
les transitions entrantes de ce même état.
Cette opération de circulation est nécessaire pour permettre, par
exemple, la minimisation d'un transducteur séquentiel ou la
resynchronisation d'un transducteur.
Ce séminaire se propose de présenter l'implémentation de ces
algorithmes dans Vaucanson, ainsi que de proposer une structure de
données pour les transducteurs synchronisés adaptable aux transducteurs
à plus de deux bandes.
THEORIE DES JEUX
Méthodes algorithmiques de recherche d'équilibres de Nash -- Antoine Leblanc
La théorie des jeux est généralement décrite comme une approche
mathématique de problèmes de prise de décisions. Les équilibres de Nash
sont l'un des principaux concepts qu'elle a introduits. Dans un jeu, un
équilibre de Nash est une position dans laquelle aucun des joueurs n'a
intérêt à changer sa stratégie. L'un des problèmes majeurs engendrés par
ces équilibres est celui de la complexité algorithmique...
Le but de cet exposé sera non seulement de faire le point sur les
avantages et inconvénients des algorithmes usuels, mais également de
présenter une nouvelle méthode de calcul basée sur une approche
géométrique du problème.
PARALLELISME
Conception d'une bibliothèque générique de parallélisation en C ++
s'appuyant sur l'existant -- Elie Bleton
Nous avons pour but la conception d'une bibliothèque générique de
parallélisation et de distribution d'application en C++, la libpapa.
Cette bibliothèque cible les développeurs souhaitant paralléliser ou
répartir soit une application existante basée sur du code non
modifiable, soit une nouvelle application, qui peut alors tirer le
meilleur parti de la bibliothèque.
La libpapa n'a pas vocation à remplacer les solutions existantes mais à
fournir des abstractions de haut niveau pour le développeur.
Ce séminaire abordera les solutions existantes que libpapa se propose
de reprendre ou d'encapsuler, les choix faits au niveau de la
modélisation de cette bibliothèque ainsi que des exemples d'utilisation
possible.
--
Daniela Becker
Bonjour,
Vous êtes tous cordialement invités à assister au séminaire qui aura
lieu le mercredi 16 mai 2007 à 14 heures en Amphi 2 (KB).
-----------------------------------------------------------------------
Le programme :
*Olena, Transformers et DD*
http://www.lrde.epita.fr/cgi-bin/twiki/view/Publications/Seminar-2007-05-16
OLENA
14h00 : Une bibliothèque de conteneurs en C++ via SCOOP -- Thomas Moulard
DD
14h30 : Diagrammes de décision à valeurs supprimées -- Samuel Charron
TRANSFORMERS
15h00 : Préprocesseur C/C++ reversible -- Quentin Hocquet
15h45 : Définition formelle de la Désambiguïsation avec des Grammaires
Attribuées -- Nicolas Pierron
16h15 : Désambiguïsation guidée par la sémantique -- Renaud Durlin
16h45 : Centaur : Une infrastructure pour la transformation de C ++ --
Benoit Sigoure
-----------------------------------------------------------------------
Les Résumés des exposés :
**************************
OLENA
Une bibliothèque de conteneurs en C++ via SCOOP -- Thomas Moulard
SCOOP est le paradigme de programmation utilisé par Olena. Il permets
l'expression de mécanismes utiles qui ne sont pas directement
disponibles dans le C++ actuel tels que les concepts, les types virtuels
ou bien les where-clauses. Ce paradigme présente également l'avantage
d'être très rapide et sur car l'ensemble des vérifications sont
réalisées à la compilation. Ces outils peuvent également être utilisés
dans d'autres contextes tels que la réécriture de la bibliothèque de
conteneurs du C++ comme nous le verrons ici.
Cette présentation se déroulera en trois parties. Tout d'abord, un tour
d'horizon rapide du paradigme sera réalisé. Puis, on expliquera comment
implémenter une hiérarchie SCOOP via les outils fournis par les
bibliothèques d'Olena. Enfin, la nouvelle bibliothèque de conteneurs
sera présentée, ainsi que les nouvelles possibilités offertes par
rapport à la bibliothèque traditionnelle. En particulier, celle-ci
permets l'écriture de morphers pouvant effectuer des transformations sur
les types de conteneurs.
DD
Diagrammes de décision à valeurs supprimées -- Samuel Charron
Les diagrammes de décision sont des structures permettant de représenter
de grands ensembles de données. Le partage de données communes aux
éléments de l'ensemble permet une grande compacité en mémoire.
Différentes techniques ont déjà été proposées pour certaines familles de
diagrammes de décisions afin de réduire encore l'utilisation mémoire.
L'une d'elles, la réduction, existe dans le domaine des Diagrammes de
Décision Binaires (BDD).
En appliquant cette technique aux Diagrammes de Décisions de Données
(DDD), nous espérons un gain de mémoire. Cependant, la définition de la
réduction doit être adaptée aux DDD et SDD (Set Decision Diagrams) afin
de conserver leurs propriétés. De même la manipulation usuelle des DDD
doit être adaptée pour tenir compte de la réduction.
Durant la présentation, nous verrons comment nous avons réalisé
l'adaptation de la réduction des BDD aux DDD. Puis à travers une
implémentation générique des diagrammes de décision, nous montrerons les
abstractions réalisées afin de pouvoir utiliser de manière générique
cette technique aussi bien pour les BDD, que pour les DDD et SDD.
TRANSFORMERS
Préprocesseur C/C++ reversible -- Quentin Hocquet
La transformation de programme C++ présente une difficulté
supplémentaire par rapport à la plupart des autres langages: la phase de
preprocessing. Il s’agit d’une étape complexe, dans la mesure où elle
n’a absolument pas été pensée pour être inversible. Pourtant
l’utilisateur d’un système de transformation de C++ souhaite retrouver
son code d’origine, avec les directives de compilation et la mise en
page initiale.
Ce séminaire présentera les techniques utilisées pour rendre le
processus réversible et pour créer sa réciproque.
Définition formelle de la Désambiguïsation avec des Grammaires
Attribuées -- Nicolas Pierron
Le problème actuel de la désambiguïsation dans Transformers avec des
grammaires attribuées est que l'on ne possède pas de preuve permettant
de certifier cette approche. L'usage actuel des grammaires attribuées
pour la désambiguïsation du C et d'une partie du C++ laisse à penser que
cette méthode est correcte.
Afin de supprimer tout doute, une définition et une formalisation de
notre approche est nécessaire. Ce travail comporte deux volets. La
première partie porte sur la preuve de la validité de l'approche
utilisée dans Transformers. La seconde partie est consacrée à la
correction et au re-développement des outils existants afin de
correspondre au modèle défini.
Désambiguïsation guidée par la sémantique -- Renaud Durlin
Une approche élégante pour gérer les grammaires ambiguës consiste à
utiliser un parseur LR généralisé qui produira non pas un arbre mais une
forêt de parse. Une étape supplémentaire, appelée désambiguisation,
survenant juste après le parsing, est alors nécessaire. Celle-ci
consiste à analyser cette forêt pour obtenir l'unique arbre valide
correspondant à l'entrée en prenant en compte les règles de sémantiques
contextuelles.
C'est cette approche qui a été retenue dans Transformers avec le
formalisme des grammaires attribuées. Le travail effectué présentera une
comparaison entre ce formalisme et deux autres techniques de
désambiguisation : la première à l'aide d'ASF+SDF et la deuxième à
l'aide du langage Stratego.
Le but de cette comparaison sera double : montrer que les grammaires
attribuées sont parfaitement adaptées à ce problème et exhiber les
faiblesses de celles-ci par rapport aux deux autres méthodes en vue
d'une amélioration possible du système utilisé dans Transformers.
Centaur : Une infrastructure pour la transformation de C ++ -- Benoit
Sigoure
Transformers a choisi de suivre la grammaire du standard pour ses
parseurs de C et C++. Ces grammaires ayant été conçues pour des parseurs
LALR, elles sont relativement difficiles à manipuler lorsqu'il s'agit
d'écrire des transformations ou faire de l'analyse statique. Le but de
Centaur est de fournir aux utilisateurs de Transformers une bibliothèque
de fonctions permettant de manipuler aisément du code C++. Elle
permettra d'accéder simplement aux informations disponibles dans l'AST
et ses annotations (pour répondre à des requêtes telles que: lister les
éléments d'un namespace, rechercher des méthodes dans une class en
fonction de plusieurs critères, lister les class parentes d'une class, etc.)
--
Daniela Becker
Bonjour,
nous avons le plaisir de vous présenter le n°9 du bulletin du LRDE.
C'est un numéro spécial consacré aux quatre sessions du séminaire CSI en
mai et juin avec les résumés de toutes les présentations des étudiants.
Dates de séminaire à retenir : les 9, 16 et 23 mai, puis le 6 juin.
Vous pouvez télécharger le bulletin en couleur à la page suivante:
http://publis.lrde.epita.fr/200705-l-air-de-rien-9
--
Daniela Becker
Bonjour,
Vous êtes tous cordialement invités à assister au séminaire qui aura
lieu le mercredi 9 mai 2007 à 14 heures en salle IP 11 (KB).
-----------------------------------------------------------------------
Le programme :
*MARKOV & VERIFICATION DU LOCUTEUR*
http://www.lrde.epita.fr/cgi-bin/twiki/view/Publications/Seminar-2007-05-09
MARKOV
14h00 : Validation des performances d'un algorithme d'apprentissage --
Johan Oudinet
14h30 : Génération de texte en langage naturel -- Jean-Philippe
Garcia-Ballester
15h00 : Apprentissage pour la vérification -- Nicolas Neri
VERIFICATION DU LOCUTEUR
15h45 : De nouveaux outils pour la vérification du locuteur -- Julien
Ramakichenin
16h15 : Adaptation client pour la vérification du locuteur -- Charles Melin
17h00 : Vérification du locuteur: approches sélectives -- Geoffroy Querol
17h30 : Compensation de canal par Factor Analysis-- Charles-Alban Deledalle
18h00 : Comparaison entre l'utilisation du noyau linéaire et non
linéaire pour les systèmes de vérification du locuteur fondés sur les
méthodes SVM -- Reda Dehak
-----------------------------------------------------------------------
Les Résumés des exposés :
**************************
Markov
Validation des performances d'un algorithme d'apprentissage -- Johan Oudinet
En apprentissage supervisé, les chercheurs n'ont que peu de données pour
évaluer les performances de leurs algorithmes d'apprentissage. Ils
doivent donc utiliser des heuristiques de test. Mais ces heuristiques,
comme leur nom l'indique, peuvent faire des erreurs. Nous évaluerons
deux types d'erreurs que ces heuristiques sont susceptibles de commettre
: le test trouve qu'il y a une différence significative entre deux
algorithmes alors que ce n'est pas le cas (Type I), ou au contraire, le
test ne détecte pas la différence existante entre deux algorithmes
d'apprentissage (Type II).
Nous commencerons par exposer les différentes sources de variabilité qui
peuvent induire en erreur une méthode de test, puis nous étudierons en
détail les performances de différentes heuristiques de test, dans
l'objectif de trouver la méthode que devrait utiliser les chercheurs
pour valider avec certitude les performances de leurs algorithmes.
Génération de texte en langage naturel -- Jean-Philippe Garcia-Ballester
Le domaine du traitement du langage naturel est un domaine à la
frontière de la linguistique et de l'informatique, et il existe ainsi
deux approches à ce problème : les approches basées sur des règles (liée
aux propriétés du langage, comme la grammaire), donc plutôt orientées
linguistique, et des approches probabilistes, basées sur des modèles
mathématiques, donc plutôt orientées informatique. Le but de cette
présentation est de présenter les méthodes de génération de texte. Bien
que toutes les méthodes existantes utilisent à la fois des approches
linguistiques et probabilistes, nous ne présenterons que les méthodes
majoritairement probabilistes. Nous commencerons par exposer les
différentes méthodes, puis nous les comparerons, d'abord suivant les
domaines dans lesquels les algorithmes sont adaptés ou non, puis suivant
l'occupation mémoire et le temps CPU.
Apprentissage pour la vérification -- Nicolas Neri
APMC est un outil distribué de vérification de systèmes probabilistes.
Dans APMC, il existe une étape de modélisation de système. Cette étape
est longue en temps et très coûteuse en espace mémoire car celle-ci est
réalisé à la main. En effet il est possible de devoir vérifier des
systèmes ayant plus de 1099 états ce qui nécessiterait un temps
considérable. En ces termes un apprentissage du système peut être utile
pour éviter cette lourde étape. Nous nous intéresserons donc au problème
de l'apprentissage pour la vérification en étudiant les différents
modèles d'apprentissage et leurs domaines de définition.
Vérification du locuteur
De nouveaux outils pour la vérification du locuteur -- Julien Ramakichenin
L'état de l'art des systèmes de vérification du locuteur utilise des
mélanges de gaussiennes (GMM). Ces modèles sont utilisés pour
représenter le modèle du monde (UBM) à partir duquel sont construits les
modèles des locuteurs. Ces modèles probabilistes représentent la
distribution des vecteurs acoustiques extraits du signal de parole.
Nous avons développé un ensemble d'outils pour la manipulation et
l'exploitation de ces types de modèles. Étant donné la quantité de
données à traiter, l'optimisation faisait partie des objectifs
principaux. Nous présenterons cet ensemble d'outils ainsi que les
améliorations apportées par rapport aux systèmes existants.
Adaptation client pour la vérification du locuteur -- Charles Melin
La vérification du locuteur repose initialement sur l'apprentissage d'un
modèle du monde (UBM). Ce modèle subit ensuite des transformations dites
d'adaptation qui ont été largement étudiées depuis 1997. D'un point de
vue général, il existe 2 types de techniques : celles de lissage et
celles d'estimation. Les techniques de lissage visent à combler
l'information manquante dans l'ensemble des observations disponibles
(absence de phonèmes) pour un locuteur cible. Les techniques
d'estimation utilisent d'autres paramètres. Elles sont généralement plus
complexes et non-convergentes mais nécessitent moins de données
d'adaptation. Notre objectif est donc d'intégrer ces différentes
techniques de façon optimisée à nos outils. En particulier, la technique
MAP considérée comme une référence dans le domaine, sera ajoutée en
priorité. Il sera alors possible d'effectuer des comparaisons entre ces
techniques.
Vérification du locuteur: approches sélectives -- Geoffroy Querol
L'état de l'art en vérification automatique du locuteur propose
d'utiliser une modélisation probabiliste (GMM) de la distribution des
paramètres acoustiques du signal de la parole. Nous avons exploré la
possibilité d'extraire seulement certains des paramètres de ces modèles
afin de discriminer les locuteurs dans ce nouvel espace. Je présenterai
deux approches différentes basées sur l'extraction des informations
acoustiques réagissant le plus fréquemment pour les modèles GMM.
La fusion des résultats de plusieurs systèmes joue un rôle prépondérant
sur les performances d'un système global. Je présenterai une comparaison
des méthodes utilisées dans le but d'obtenir une fusion optimale.
Compensation de canal par Factor Analysis-- Charles-Alban Deledalle
Dans le cadre de la vérification du locuteur, le LRDE participe depuis 2
ans aux évaluations de reconnaissance du locuteur organisées par le
NIST. Le NIST fournit une vaste base d'enregistrement audio, une partie
est destineé à l'entraînement du système et l'autre aux tests. Cette
année, ces deux bases sont réalisées sur des canaux différents :
téléphone pour l'entraînement et microphone pour les tests. Pour pallier
cette difficulté, l'information provenant du canal doit être retirée du
signal. Parmi différentes techniques de compensation de canal, je vous
présenterai une méthode prometteuse à base de Factor Analysis que
j'étudie et développe en ce moment au laboratoire.
Comparaison entre l'utilisation du noyau linéaire et non linéaire pour
les systèmes de vérification du locuteur fondés sur les méthodes SVM --
Reda Dehak
Je présenterai les résultats d'une comparaison entre l'utilisation d'une
fonction noyau linéaire et une fonction noyau non linéaire dans le cas
des systèmes de vérification du locuteur fondés sur les méthodes SVM.
Ces deux noyaux sont construits à partir d'une distance définie dans
l'espace des paramètres GMM. Je présenterai le lien existant entre ces
deux fonctions noyaux et comment exploiter les résultats des méthodes de
compensation du canal (NAP) dans les deux cas.
On a démontré l'importance de la normalisation des paramètres des
modèles GMM dans le cas de la fonction noyau non linéaire. Toutes nos
expérimentations ont été conduites sur la base d'évaluation NIST-SRE
2006 core condition (all trial). Le meilleur score (un EER de 6.3% est
obtenu avec un noyau non linéaire sur des GMMs normalisés.
--
Daniela Becker
Responsable administrative du LRDE