SlideShare une entreprise Scribd logo
1  sur  135
Télécharger pour lire hors ligne
Génération automatique
de textes
Application à un outil de gestion et recommandation de
bonnes adresses
Estelle Delpech
Responsable R&D, Nomao
Séminaire « Thématiques actuelles de la recherche en TAL »
Laboratoire CLLE-ERSS, Université Toulouse II
19 novembre 2012
Plan
1. Contexte applicatif
2. Principes de la génération automatique de texte
3. Génération de descriptifs de lieux en contexte applicatif
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Nomao
carnet de bonnes adresses (entre amis)
 permettre aux gens de trouver, garder et échanger des
bonnes adresses (restaurants, bars, shopping, médecins...)
 un carnet d’adresse « intelligent » :
– recherche géolocalisée
– réalité augmentée
– adaptation aux goûts de l’utilisateur
– partage sur les réseaux sociaux
⇒ http ://fr.nomao.com
1 / 83
2 / 83
Opération promotionnelle
3 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Technologie : moteur de recommandation
« Ceux qui ont aimé les mêmes lieux que vous aiment aussi... »
4 / 83
Construction de l’index de lieux
5 / 83
Extraction de données
SOURCE 1











nom : Les Caves de La Maréchale
descripteurs : restaurant
adresse :
rue :
ville : Toulouse
commentaires :
note : 4
texte : Mangé hier soir avec...












SOURCE 2











nom : Caves de La Maréchale SARL
descripteurs : français
adresse :
rue : Rue Jules Chalande
ville : Toulouse
commentaires :
note : 2
texte : Pas vraiment apprécié...












6 / 83
Agrégation de données
LIEU #5237890















nom : Les Caves de La Maréchale
descripteurs : restaurant, français
adresse :
rue : Rue Jules Chalande
ville : Toulouse
commentaires :
note : 4
texte : Mangé hier soir avec...
note : 2
texte : Pas vraiment apprécié...
















7 / 83
Analyse des données
LIEU #5237890


























nom : Les Caves de La Maréchale
descripteurs : restaurant, français
CATÉGORIE : manger  restaurant  europen  franais
adresse :
rue : Rue Jules Chalande
ville : Toulouse
commentaires :
note : 4
texte : Mangé hier soir avec...
note : 2
texte : Pas vraiment apprécié...
E-RÉPUTATION : 79%
ASPECTS POSITIFS :
SERVICE : super accueil, personnel avenant
PLATS : gratin dauphinois délicieux


























8 / 83
Synthèse en langue naturelle
« Les Caves de la Maréchale » est un restaurant localisé Rue
Jules Chalande à Toulouse. Ce restaurant est spécialisé dans la
cuisine française. Il a recueilli 79% de notes favorables sur
Internet. Les internautes y apprécient particulièrement le
service (« super accueil », « personnel avenant ») et les plats
principaux (« gratin dauphinois délicieux »).
⇒ Synthèse conviviale des informations objectives et
subjectives disséminées sur Internet à propos d’un lieu
9 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Applications possibles
 Traduction automatique (système par pivot)
 Résumé automatique (système basés sur une simulation de
l’activité humaine)
⇒ plutôt lié aux approches symboliques
10 / 83
Applications confirmées
 Agents conversationnels
 Génération de textes à partir de données
– numériques, ex : météo, cours de bourse...
– procédurales, ex : manuels d’instructions
– diverses, ex : matches de foot, descriptifs de lieux...
⇒ toujours propre à un domaine + but communicatif, pas de
système généraliste.
11 / 83
Niveaux de complexité
 Textes en boite : Votre imprimante n’a plus de papier
 Textes à trous et patrons conditionnels : publipostage
{IF $SEXE=F Chère Cher} $PRENOM $NOM,
Nous avons le {IF $SOLDE  0 regret plaisir} de vous
annoncer que...
 Content spinning : génération de contenu pour le Web
 Systèmes de génération « intelligents »
12 / 83
Content spinning
13 / 83
Content spinning
 Technique de génération de contenu varié pour optimiser
des pages web
 Principe :
1. écriture d’un premier texte
2. découpage du texte en morceaux, sous-morceaux,
sous-sous-morceaux, etc..
3. pour chaque morceau : proposer plusieurs variantes possibles
4. génération par sélection aléatoire des morceaux
La {génération de texte|GAT} rend {possible|facile} la
création de {textes|contenus textuels} {rapide| à la
va-vite}
⇒ 2 x 2 x 2 x 2 = 16 phrases
13 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Architecture typique d’un système de
génération [Danlos and Roussarie, 2000]
14 / 83
Architecture typique d’un système de
génération [Danlos and Roussarie, 2000]
14 / 83
Architecture typique d’un système de
génération [Danlos and Roussarie, 2000]
‘
14 / 83
Architecture typique d’un système de
génération [Danlos and Roussarie, 2000]
‘
14 / 83
Sélection de contenu I
15 / 83
Sélection du contenu I
Entrée Données brutes, éventuellement buts communicatifs
– sélection d’information
– filtrage/calcul des informations saillantes, ex. : hausses de
températures
– peut inclure du raisonnement (IA)
– transcription en représentations logiques
Sortie formes logiques non ordonnées
15 / 83
Sélection du contenu II
(m7 / |eat, take in|
:time present
:agent (d / |dogcanid|
:quant plural)
:patient (b / |os, bone|)
:quant plural)
)
⇒ dogs eat bones
[Knight and Langkide, 1998]
16 / 83
Structuration rhétorique I
17 / 83
Structuration rhétorique I
Entrée Formes logiques non ordonnées
– regroupement du contenu sémantique en unités
– les unités sémantiques se réaliseront par la suite en phrases
ou propositions syntaxiques
– articulées par des relations de discours
Sortie Plan de texte
17 / 83
Structuration rhétorique II
[Hovy, 1998]
18 / 83
Planification syntaxique I
19 / 83
Planification syntaxique I
Entrée Plan de texte
– traductions des structures sémantiques en structures
syntaxiques
Sortie Arbres syntaxiques + connecteurs, mots outils
19 / 83
Planification syntaxique II
# dog, bone, eat
((x1 :agent)
(x2 :patient)
(x3 :rest)
-
# dogs eat bones
(s (seq (x1 np nom-pro) (x3 v-tensed)
(x2 np acc-pro)))
# bones are eaten by dogs
(s (seq (x2 np nom-pro) (x3 v-passive)
(wrd by) (x1 np acc-pro)))
# consumption of bones by dogs
(s (seq (x3 np acc-pro nom-pro) (wrd of)
(x2 np acc-pro) (wrd by) (x1 np acc-pro)))
)
adapté de [Knight and Langkide, 1998]
20 / 83
Lexicalisation I
21 / 83
Lexicalisation I
Entrée Arbres syntaxiques
– sélection de lexies correspondant au sens et s’intégrant dans
la structure syntaxique
Sortie Arbres syntaxiques lexicalisés
21 / 83
Lexicalisation II
# Lexique
((eat VERB |eat, take in|)
(dog NOUN |caniddog|)
(bone, NOUN |os, bone|))
# Structure lexicalisée
(s (seq (wrd dog) (wrd +plural)
(wrd eat)
(wrd bone) (wrd +plural)))
adpatée de [Knight and Langkide, 1998]
22 / 83
Ajustement morphologique I
23 / 83
Ajustement morphologique I
Entrée Arbres syntaxiques lexicalisés
– calcul de la forme de surface : accords, conjugaisons,
agglutination, élision...
Sortie Arbres syntaxiques lexicalisés et fléchis
23 / 83
Ajustement morphologique II
(-child children)
(-person, people, persons)
(-a, as, ae) # formulas/formulae
(-x, xes, xen) # boxes / oxen
(-man, mans, men) # humans/footmen
(-Co, os, oes)
[Knight and Langkide, 1998]
24 / 83
Formatage
25 / 83
Formatage
Entrée Arbres syntaxiques lexicalisés et fléchis
– règles typographiques, insertion du formatage (balises...),
linéarisation de l’arbre
Sortie Forme de surface linéaire
25 / 83
Autres tâches [Danlos and Roussarie, 2000]
26 / 83
Autres tâches
 Génération d’expressions référentielles
 Agrégation
⇒ Gain en fluidité et lisibilité, évite les redondances
26 / 83
Génération d’expressions référentielles
27 / 83
Génération d’expressions référentielles
 Liée génération des groupes nominaux
 Choix possibles :
– déterminant : le vs. un vs. ce bouton
– prédicat lexical : l’appareil vs. le magnétoscope
– réduction : la machine à gauffres vs. la machine
– épithètes restrictifs : le bouton vert vs. le premier bouton
– pronominalisation : il vs. l’appareil
27 / 83
Agrégation
28 / 83
Agrégation
 Regroupement de plusieurs entités en une seule entité
globale
 Peut intervenir à plusieurs niveaux
– génération de syntagmes pluriels :
. écran(x), clavier(y) → périphériques(x,y)
– coordination, ellipses de structures syntaxiques :
. tirer puis relâcher la manette
. insérer la fiche 1 dans le port et la fiche 2 dans la sortie
28 / 83
Approches statistiques [Belz and Kow, 2009]
29 / 83
Approches statistiques [Belz and Kow, 2009]
 Développement d’approches statistiques à partir de 1998
 But : accélérer les développements, adaptation au
domaine
 Intégration à plusieurs niveaux :
– structure syntaxique → texte final
– représentation sémantique → texte final
29 / 83
Réalisation de surface guidée par les
données [Knight and Langkide, 1998, Langkide, 2000] I
30 / 83
Réalisation de surface guidée par les
données [Knight and Langkide, 1998, Langkide, 2000] I
 Sélection de toutes les structures syntaxiques, et de toutes
les lexies possibles
 Obtention d’un graphe de réalisations possibles
 Choix du chemin le plus probable grâce à des probabilités
de n-grammes de mots appris sur corpus
30 / 83
Réalisation de surface guidée par les
données [Knight and Langkide, 1998, Langkide, 2000] II
31 / 83
Génération basée sur la traduction
automatique [Wong and Mooney, 2007] I
32 / 83
Génération basée sur la traduction
automatique [Wong and Mooney, 2007] I
 Apprentissage de probabilités d’alignements entre
réalisation de surface et représentation sémantique
32 / 83
Génération basée sur la traduction
automatique [Wong and Mooney, 2007] II
 Choix de la réalisation de surface qui est à la fois :
– dont le sens est le plus proche de la représentation
sémantique (modèle de traduction)
– la mieux formée (modèle de langue : n-grammes corpus)
argmax
e
Pr(e|f) = argmax
e
Pr(e)Pr(f|e)
33 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Évaluation [Reiter and Belz, 2009]
34 / 83
Évaluation [Reiter and Belz, 2009]
 Pas de technique consensuelle
 Trois types d’évaluation :
– évaluation applicative / guidée par la tâche
– évaluation basée sur des jugements humains
– évaluation automatique par comparaison à une référence
34 / 83
Évaluation applicative
 Méthodologies liées à l’application finale :
– faire une tâche en suivant des instructions générées
– arrêter de fumer grâce à des lettres de suivi personnalisées
– coût de post-édition
 Évaluations les plus parlantes / convaincantes
 Coûteuses
 Dépendantes du bon-vouloir des participants
35 / 83
Évaluation humaine
 Méthode :
– texte noté sur plusieurs critères (échelles)
. qualité globale, cohérence, contenu, organisation...
– préférence entre deux textes
 Méthode la plus populaire
 Plus rapide et moins chère que l’évaluation guidée par la
tâche
36 / 83
Évaluation automatique
 Méthode :
– extraction des structures syntaxiques / de l’information d’un
corpus écrit par un humain
– (re-)génération du texte à partir des structures
– comparaison via une mesure style distance d’édition, BLEU...
 Peu coûteuse, rapide, reproductible
 Utilisée pour évaluer à partir de la lexicalisation
 Méthode controversée pour une évaluation globale :
– validité de la référence
– objet de l’évaluation
37 / 83
Projets académiques
38 / 83
Projets académiques
 Babytalk : résumés de données cliniques sur des bébés en
soins intensifs [Portet et al., 2009]
 Génération de prévisions météo [Belz, 2008]
 STOP : génération de lettre personnalisées pour arrêt tabac
[Reiter et al., 2003]
 SKILLSUM : résumé d’évaluation de niveau
d’alphabétisation [Williams and E., 2008]
 Générateur de blagues [Binsted et al., 1997]
38 / 83
Systèmes commerciaux
39 / 83
Systèmes commerciaux
 Revolusyn : content spinning avancé - www.revolusyn.com/
 EasyText : commentaires de tableaux de données
statistiques
 StatsMonkey : résumés de matches de baseball
 Syllabs : descriptifs de produits marchands -
http ://demo.showroom.syllabs.com/generation/
 Hotels Combined : résumés d’avis clients -
www.hotelscombined.com/
 Nomao : descriptifs de lieux
39 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Contraintes
 Rapidité du système : éviter traitements complexes,
couteux en temps
 Rapidité de développement :
– ne coller à l’architecture théorique que si c’est nécessaire
⇒ système mixant génération « intelligente »et approches
bas niveau
 Moteurs de recherche :
– contenu unique et varié
40 / 83
Exemple de texte généré
HÔTEL « HÔTEL DE VARENNE » À PARIS
Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris...
« Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème
arrondissement. Cet hôtel propose des chambres disposant de
tout le confort moderne (climatisation...). Il dispose d’un
agréable jardin et met à disposition de ses clients un accès
WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables
sur Internet. Les internautes y apprécient particulièrement le
service (« personnel tres aimable », « sourire du personnel », «
personnel sympathique »).
41 / 83
Optimisation moteurs de recherche
HÔTEL « HÔTEL DE VARENNE » À PARIS
Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris...
« Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème
arrondissement. Cet hôtel propose des chambres disposant de
tout le confort moderne (climatisation...). Il dispose d’un
agréable jardin et met à disposition de ses clients un accès
WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables
sur Internet. Les internautes y apprécient particulièrement le
service (« personnel tres aimable », « sourire du personnel », «
personnel sympathique »).
42 / 83
Génération bas niveau
⇒ choix lexical aléatoire avec gestion des accords
HÔTEL « HÔTEL DE VARENNE » À PARIS
Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris...
« Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème
arrondissement.
Cet hôtel propose des chambres disposant de tout le confort
moderne (climatisation...). Il dispose d’un agréable jardin et
met à disposition de ses clients un accès WIFI.
Hôtel de Varenne a obtenu 91% de remarques favorables sur
Internet. Les internautes y apprécient particulièrement le
service (« personnel tres aimable », « sourire du personnel », «
personnel sympathique »).
43 / 83
Génération de texte intelligente
HÔTEL « HÔTEL DE VARENNE » À PARIS
Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris...
« Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème
arrondissement. Cet hôtel propose des chambres disposant de
tout le confort moderne (climatisation...). Il dispose d’un
agréable jardin et met à disposition de ses clients un accès
WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables
sur Internet. Les internautes y apprécient particulièrement le
service (« personnel tres aimable », « sourire du personnel », «
personnel sympathique »).
44 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Fonctionnement du générateur de textes I
45 / 83
Architecture du générateur
45 / 83
Sélection du contenu I
46 / 83
Sélection du contenu I
Entrée Données brutes
– sélection
– catégorisation
– transformation
– pas de raisonnement, de manipulation de concepts
Sortie Données filtrées et restructurées
46 / 83
Sélection du contenu II
DONNÉES BRUTES


























NOM : Higuma
CATÉGORIE : manger  restaurant 
asiatique  japonais
TAGS : carte de crédit acceptées,
chèques refusés, japonais
GÉOLOCALISATION :
LAT : 48.871762
LONG : 2.352262
ADRESSE :

RUE : 32 Rue Saint-Anne
VILLE : Paris
CP : 75001


MÉTRO :
LIGNE : 14
STATION : Pyramides


























CONTENU POUR GÉNÉRATION


























NOM : Higuma
CATÉGORIE : restaurant :masc :sing
STYLE CUISINE : japonais
PAIEMENTS ACCEPTÉS : carte de crédit
PAIEMENTS REFUSÉS : chèque
ADRESSE :

RUE : 32 Rue Saint-Anne
VILLE : Paris
QUARTIER : 1




























47 / 83
Structuration rhétorique I
48 / 83
Structuration rhétorique I
Entrée Données filtrées et structurées
– sélection de propositions sémantiques pré-définies en
fonction du contenu disponible
– ordonnancement des propositions, regroupement en
paragraphes thématiques
– articulation des propositions par des relations de discours
Sortie Plan de texte
48 / 83
Structuration rhétorique II
NOM : Higuma
CATÉGORIE : restaurant :masc :sing ⇒ SPOT_IS_A_TYPE
STYLE CUISINE : japonais ⇒ COOKING_STYLE
PAIEMENTS ACCEPTÉS : carte de crédit ⇒ ACCEPTED_PAYMENTS
PAIEMENTS REFUSÉS : chèque ⇒ REJECTED_PAYMENTS
ADRESSE :


RUE : 32 Rue Saint-Anne
VILLE : Paris
QUARTIER : 1

 ⇒ LOC_STREET_CITY_DISTRICT
49 / 83
Structuration rhétorique III
SPOT_IS_A_TYPE
COOKING_GEOSTYLE
ACCEPTED_PAYMENTS
REJECTED_PAYMENTS
LOC_STREET_CITY_DISTRICT
⇒
ANCRAGE
#1 SPOT_IS_A_TYPE
#2 LOC_STREET_CITY_DISTRICT
PROPRIÉTÉS

#1 COOKING_GEOSTYLE
#2 ACCEPTED_PAYMENTS
#3 REJECTED_PAYMENTS


50 / 83
Structuration rhétorique IV
Continuation
#1
SPOT_IS_A_TYPE
#2
LOC_STREET_CITY_DISTRICT
51 / 83
Structuration rhétorique V
Continuation
#1 CO-
OKING_STYLE
Contrast
#2 ACCEP-
TED_PAYMENTS
#3 REJEC-
TED_PAYMENTS
52 / 83
Structuration rhétorique VI
 pas de variation dans l’ordre des propositions
 règles ad hoc codées en dur
53 / 83
Planification syntaxique I
54 / 83
Planification syntaxique I
Entrée Plan de texte
– sélection des structures syntaxiques correspondant aux
propositions sémantiques
– sélection aléatoire parmi plusieurs structures possibles
Sortie Structures syntaxiques à trous
54 / 83
Planification syntaxique II
PROPER VERB Enum PREPPhr
$SPOT accepte $ACCEPTED_PAYMENTS comme moyen de paiement
 strong 
ACCEPTED_PAYMENTS
SUBJ OBJ
CIRC
55 / 83
Planification syntaxique III
ART_DEF NOUN
le $ACCEPTED_PAYMENT
Enum_ACCEPTED_PAYMENTS
DET
agreement
56 / 83
Planification syntaxique IV
ART_DEF NOUN . . . ART_DEF NOUN
le $ACCEPTED_PAYMENT1 le $ACCEPTED_PAYMENTN
Enum_ACCEPTED_PAYMENTS
DET
ENUM
DET
agreement agreement
57 / 83
Planification syntaxique V
58 / 83
Lexicalisation I
59 / 83
Lexicalisation I
Entrée Structures syntaxiques à trous
– choix des valeurs correspondant aux variables
. tags : sélection aléatoire dans lexique, fonction partie du
discours imposée par structure
. entités nommées : insertion de la valeur brute
Sortie Structures syntaxiques lexicalisées
59 / 83
Lexicalisation II
PROPER VERB ART_DEF NOUN PREPPhr
ENTITÉ TAG
$SPOT accepte le $ACCEPTED_PAYMENT comme moyen de paie
ACCEPTED_PAYMENTS
SUBJ
OBJ
DET
CIRC
60 / 83
Lexicalisation III
PROPER VERB ART_DEF NOUN PREPPhr
Novotel accepte le carte visa comme moyen de paie
hotel :masc :sing :fém :sing
ACCEPTED_PAYMENTS
SUBJ
OBJ
DET
CIRC
61 / 83
Lexicalisation IV
62 / 83
Agrégation des structures I
63 / 83
Agrégation des structures I
Entrée Structures syntaxiques : 1 structure ↔ 1 proposition
– agrégation des structures répétitives :
. sujets identiques
. verbes identiques ou compatibles
– ajout des frontières de phrases
Sortie Phrases finales : 1 phrase → 1 ou plusieurs propositions
63 / 83
Agrégation des structures II
Novotel accepte carte visa
ACCEPTED_PAYMENTS
SUBJ OBJ
64 / 83
Agrégation des structures III
Novotel accepte carte visa Novotel refuse chèque
ACCEPTED_PAYMENTS
SUBJ OBJ
REJECTED_PAYMENTS
SUBJ OBJ
65 / 83
Agrégation des structures IV
Novotel accepte carte visa Novotel refuse chèque
SPOT_ACCEPT_PAYMENT
SUBJ OBJ
SPOT_REJECT_PAYMENT
SUBJ OBJ
sujets identiques verbes compatibles
⇒ Agrégation possible
66 / 83
Agrégation des structures V
Novotel accepte carte visa COORD X refuse chèque
ROOT
COORD
COORD
SUBJ
OBJ OBJ
67 / 83
Agrégation des structures VI
Novotel accepte carte visa mais refuse chèque
ROOT
COORD
COORD
SUBJ
OBJ OBJ
CONTRASTCONTRAST
68 / 83
Agrégation des structures VII
 autres règles :
– Novotel est un hotel + Novotel est situé à Paris ⇒ Novotel est
un hôtel situé à Paris
– Novotel dispose d’un jardin + Novotel propose des chambres
avec climatisation ⇒ Novotel dispose d’un jardin et propose
des chambres avec climatisation
 règles d’agrégation codées en dur
 déclaration externe :
– compatibilités entre verbes
– coordonnants
69 / 83
Génération d’expressions référentielles I
70 / 83
Génération d’expressions référentielles I
Entrée Phrases finales
– repérage des sujets répétés
– remplacement par des expressions référentielles
Sortie Phrases finales avec expressions référentielles
70 / 83
Génération d’expressions référentielles II
Les Caves de la Maréchale est un restaurant localisé Rue Jules Cha
SUBJ
Les Caves de la Maréchale est spécialisé dans la cuisine française
SUBJ
Les Caves de la Maréchale a recueilli 79% de notes favorables sur
restaurant :masc :sing
SUBJ
71 / 83
Génération d’expressions référentielles III
 Lexique expressions référentielles :
restaurant → PRO :masc :sing : il
→ NOUNPhr :masc :sing : ce restaurant
→ NOUNPhr :masc :sing : . . .
 Ordre d’apparition arbitraire :
1. PROPER
2. NOUNPhr aléatoire
3. PRO
72 / 83
Génération d’expressions référentielles IV
Les Caves de la Maréchale est un restaurant localisé Rue Jules Cha
Ce restaurant est spécialisé dans la cuisine française .
Il a recueilli 79% de notes favorables sur Internet .
73 / 83
Ajustements morphologiques I
74 / 83
Ajustements morphologiques I
Entrée Phrases avec mots à l’état de lemmes
– accords
– élisions
– agglutinations
Sortie Phrases avec formes finales des mots
74 / 83
Ajustements morphologiques II
PROPER VERB ART_DEF NOUN PREPPhr
Novotel accepte le carte visa comme moyen de paiement
fém :sing
ACCEPTED_PAYMENTS
SUBJ
OBJ
DET
CIRC
agreement
Novotel accepte la carte visa comme moyen de paiement
75 / 83
Ajustements morphologiques III
76 / 83
Ajustements morphologiques IV
ce restaurant est spécialisé dans la cuisine français .
fém :sing ADJ
agreement
ce restaurant est spécialisé dans la cuisine française .
77 / 83
Ajustements morphologiques V
78 / 83
Ajustements morphologiques VI
cet hotel dispose de un bar .
cet hotel dispose d’ un bar .
79 / 83
Mise en forme I
80 / 83
Mise en forme I
Entrée Suite de mots
– Majuscules
– Espaces
– Balises
Sortie Texte final
80 / 83
Mise en forme II
cet hotel dispose d’ un bar , d’ un spa et d’ un golf .
Cet hotel dispose d’ un bar , d’ un spa et d’ un golf .
Cet_ hotel_ dispose_ d’ un_ bar ,_ d’ un_ spa_ et_ d’ un_ golf .
Cet hotel dispose d’un bar, d’un spa et d’un golf.
81 / 83
Mise en forme III
PROPER VERB DET NOUN PART PREP PROPER
« La Braisière » est un restaurant situé à Toulouse
 strong   strong   strong 
ROOT
SUBJ
PRED
PRED
DET PREP CPREP
strong « La Braisière »/strong est un strong restaurant
/strong situé à strong Toulouse /strong.
82 / 83
Plan
1. Contexte applicatif
Présentation du produit
Processus de traitement des données
2. Principes de la génération automatique de texte
Introduction : applications, niveaux de complexité
Fonctionnement d’un générateur de texte
Évaluation et systèmes existants
3. Génération de descriptifs de lieux en contexte applicatif
Contraintes liées au contexte applicatif
Fonctionnement du générateur de textes
Évaluation et perspectives
Évaluation
83 / 83
Évaluation
 Pas d’évaluation à ce jour
 Modes d’évaluation envisagés :
– coût de post-édition
– temps resté sur la page
– nb de visites sur la page
 Indicateurs de progression :
– variété
– longueur
– temps
83 / 83
Variété
n-grammes de mots pleins
communs entre deux textes :
jaccard(n1, n2) =
|n1 ∩ n2|
|n1 ∪ n2|
n jaccard
1 0, 17
2 0,11
3 0,7
⇒ baisse d’environ 40% grâce à l’aléatoire
84 / 83
Longueur
⇒ 63 tokens / texte en
moyenne
⇒ objectif : 300 tokens
85 / 83
Temps de génération
 360 textes par seconde après optimisation
 Intel Xeon 3Ghz, bi-processeur, 24 cœurs
86 / 83
Qualité linguistique perçue
HÔTEL « HÔTEL HÉLIOT » À TOULOUSE
Vous souhaitez en savoir plus sur l’hôtel « Hôtel Héliot » à
Toulouse ?
« Hôtel Héliot » est un hôtel. Cet hôtel se situe 3 Rue Héliot à
Toulouse. Il a remporté 81% de remarques favorables sur
Internet. Les internautes y apprécient particulièrement le
service (« patron tres sympathique », « accueil très aimable », «
personnel sympathique ») et les équipements des chambres («
chambre très propre », « chambre spatieuse », « chambre
agréable »).
87 / 83
Perspectives
88 / 83
Perspectives
 Variation :
– varier l’ordre des phrases dans le plan de texte
– enrichir les structures syntaxiques, le lexique
 Fluidité :
– complexifier l’agrégation : Cet hotel, qui dispose d’un bar, a
obtenu 90% de commentaires positifs.
 « Humaniser » :
– flou : 90% de commentaires positifs → a une excellente
réputation
– style : dispose d’un jardin → vous pourrez vous détendre en
allant faire une balade au calme dans le jardin
88 / 83
Merci pour votre attention
estelle (a) nomao.com
Références I
Belz, A. (2008).
Automatic generation of weather forecast texts using comprehensive
probabilistic generation-space models.
Natural Language Engineering, 14(4) :431–455.
Belz, A. and Kow, E. (2009).
System building cost vs. output quality in data-to-text generation.
In Proceedings of the 12th European Workshop on Natural Language
Generation, pages 16–24.
Binsted, K., Pain, H., and Graeme, R. (1997).
Children’s evaluation of computer-generated punning riddles.
Pragmatics and Cognition, 5 :309–358.
Danlos, L. and Roussarie, L. (2000).
La génération automatique de textes.
In Ingénierie de la langue. Pierrel, J.-M., hermès edition.
Hovy, E. (1998).
Automated discourse generation using discourse structure relations.
Artificial Intelligence, 63 :341–385.
Références II
Knight, K. and Langkide, I. (1998).
Generation that exploits corpus-based knwoledge.
In Proceedings of the 36th Annual Meeting of the Association for
Computational Linguistics and 17th International Conference on
Computational Linguistics, pages 704–710.
Langkide, I. (2000).
Forest-based statistical sentence generation.
In Proceedings of the 6th Applied Natural Language Processing
Conference and the 1st Meeting of the North American Chapter of the
Association of Computational Linguistics, pages 170–177.
Portet, F., Reiter, E., Gatt, A., Hunter, J., Sripada, S., Freer, Y., and Sykes, C.
(2009).
Generation of textual summaries from neonatal intensive care data.
Artificial Intelligence, 173 :789–816.
Reiter, E. and Belz, A. (2009).
An investigation into the validity of some metrics for automatically
evaluating natural language generation systems.
Computational Linguistics, 35(4) :529–558.
Références III
Reiter, E., Roma, R., and Liesl, O. (2003).
Lessons from a failure : Generating tailored smoking cessation letters.
Artificial Intelligence, 144 :41–58.
Williams, S. and E., R. (2008).
Generating basic skills reports for low-skilled readers.
Natural Language Engineering, 14 :41–58.
Wong, Y. and Mooney, R. (2007).
Generation by inverting a semantic parser that uses statistical machine
translation.
In Proceedings of Human Language Technologies : The Annual
Conference of the North American Chapter of the Association for
Computational Linguistics on Human Language Technology, pages
172–179.

Contenu connexe

Tendances

S'il suffisait de documenter pour tester - Agile Niort 2022
S'il suffisait de documenter pour tester - Agile Niort 2022S'il suffisait de documenter pour tester - Agile Niort 2022
S'il suffisait de documenter pour tester - Agile Niort 2022Sébastien Fauvel
 
Programmation Orientée Objet et les Traits en PHP 5.4
Programmation Orientée Objet et les Traits en PHP 5.4Programmation Orientée Objet et les Traits en PHP 5.4
Programmation Orientée Objet et les Traits en PHP 5.4halleck45
 
Et s’il suffisait de documenter pour tester ?
Et s’il suffisait de documenter pour tester ?Et s’il suffisait de documenter pour tester ?
Et s’il suffisait de documenter pour tester ?Sébastien Fauvel
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancépierrepo
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptAbdoulaye Dieng
 
Exploiter php 5
Exploiter php 5Exploiter php 5
Exploiter php 5halleck45
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchronesAbdoulaye Dieng
 
php2 : formulaire-session-PDO
php2 : formulaire-session-PDOphp2 : formulaire-session-PDO
php2 : formulaire-session-PDOAbdoulaye Dieng
 
Introduction à ERRest
Introduction à ERRestIntroduction à ERRest
Introduction à ERRestWO Community
 
Les Langages Dédiés (DSL) au secours du Français ?
Les Langages Dédiés (DSL) au secours du Français ?Les Langages Dédiés (DSL) au secours du Français ?
Les Langages Dédiés (DSL) au secours du Français ?Damien Fourret
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoopPatrick Bury
 
Pratique de la programmation en go
Pratique de la programmation en goPratique de la programmation en go
Pratique de la programmation en gokader15
 
PhyloJava : une application de phylogénie sur la grille DATAGRID
PhyloJava : une application de phylogénie sur la grille DATAGRIDPhyloJava : une application de phylogénie sur la grille DATAGRID
PhyloJava : une application de phylogénie sur la grille DATAGRIDsuive
 

Tendances (17)

S'il suffisait de documenter pour tester - Agile Niort 2022
S'il suffisait de documenter pour tester - Agile Niort 2022S'il suffisait de documenter pour tester - Agile Niort 2022
S'il suffisait de documenter pour tester - Agile Niort 2022
 
Programmation Orientée Objet et les Traits en PHP 5.4
Programmation Orientée Objet et les Traits en PHP 5.4Programmation Orientée Objet et les Traits en PHP 5.4
Programmation Orientée Objet et les Traits en PHP 5.4
 
Et s’il suffisait de documenter pour tester ?
Et s’il suffisait de documenter pour tester ?Et s’il suffisait de documenter pour tester ?
Et s’il suffisait de documenter pour tester ?
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancé
 
Using UBCluster
Using UBClusterUsing UBCluster
Using UBCluster
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Exploiter php 5
Exploiter php 5Exploiter php 5
Exploiter php 5
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchrones
 
php2 : formulaire-session-PDO
php2 : formulaire-session-PDOphp2 : formulaire-session-PDO
php2 : formulaire-session-PDO
 
Bash bonnes pratiques
Bash bonnes pratiquesBash bonnes pratiques
Bash bonnes pratiques
 
Introduction à ERRest
Introduction à ERRestIntroduction à ERRest
Introduction à ERRest
 
Les Langages Dédiés (DSL) au secours du Français ?
Les Langages Dédiés (DSL) au secours du Français ?Les Langages Dédiés (DSL) au secours du Français ?
Les Langages Dédiés (DSL) au secours du Français ?
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
 
Initiation r
Initiation rInitiation r
Initiation r
 
Introduction à jQuery
Introduction à jQueryIntroduction à jQuery
Introduction à jQuery
 
Pratique de la programmation en go
Pratique de la programmation en goPratique de la programmation en go
Pratique de la programmation en go
 
PhyloJava : une application de phylogénie sur la grille DATAGRID
PhyloJava : une application de phylogénie sur la grille DATAGRIDPhyloJava : une application de phylogénie sur la grille DATAGRID
PhyloJava : une application de phylogénie sur la grille DATAGRID
 

Similaire à Génération automatique de texte

Créer un moteur de recherche avec des logiciels libres
Créer un moteur de recherche avec des logiciels libresCréer un moteur de recherche avec des logiciels libres
Créer un moteur de recherche avec des logiciels libresRobert Viseur
 
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Bruno Bonnin
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewLudovic Piot
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide
 
Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)Martin Latrille
 
Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...
Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...
Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...Conférence IC 2009
 
Réussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDBRéussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDB MongoDB
 
Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Silicon Comté
 
Spark - au dela du dataframe avec Tungsten et Catalyst
Spark - au dela du dataframe avec Tungsten et CatalystSpark - au dela du dataframe avec Tungsten et Catalyst
Spark - au dela du dataframe avec Tungsten et CatalystMathieu Goeminne
 
Data Mining (Partie 2).pdf
Data Mining (Partie 2).pdfData Mining (Partie 2).pdf
Data Mining (Partie 2).pdfOuailChoukhairi
 
Linq et Entity framework
Linq et Entity frameworkLinq et Entity framework
Linq et Entity frameworkDNG Consulting
 
Création de bases de données
Création de bases de donnéesCréation de bases de données
Création de bases de donnéesRiadh ASSOUAK
 
Tout ce que le getting started mongodb ne vous dira pas
Tout ce que le getting started mongodb ne vous dira pasTout ce que le getting started mongodb ne vous dira pas
Tout ce que le getting started mongodb ne vous dira pasBruno Bonnin
 
Développement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchDéveloppement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchRobert Viseur
 

Similaire à Génération automatique de texte (20)

Créer un moteur de recherche avec des logiciels libres
Créer un moteur de recherche avec des logiciels libresCréer un moteur de recherche avec des logiciels libres
Créer un moteur de recherche avec des logiciels libres
 
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overview
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic Search
 
Adopte une BDD
Adopte une BDDAdopte une BDD
Adopte une BDD
 
Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)
 
Drools
DroolsDrools
Drools
 
Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...
Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...
Du texte à la connaissance : annotation sémantique et peuplement d'ontologie ...
 
Réussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDBRéussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDB
 
Chapitre 2
Chapitre 2Chapitre 2
Chapitre 2
 
Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014
 
Spark - au dela du dataframe avec Tungsten et Catalyst
Spark - au dela du dataframe avec Tungsten et CatalystSpark - au dela du dataframe avec Tungsten et Catalyst
Spark - au dela du dataframe avec Tungsten et Catalyst
 
Data Mining (Partie 2).pdf
Data Mining (Partie 2).pdfData Mining (Partie 2).pdf
Data Mining (Partie 2).pdf
 
Une Introduction à R
Une Introduction à RUne Introduction à R
Une Introduction à R
 
Linq et Entity framework
Linq et Entity frameworkLinq et Entity framework
Linq et Entity framework
 
Création de bases de données
Création de bases de donnéesCréation de bases de données
Création de bases de données
 
Tout ce que le getting started mongodb ne vous dira pas
Tout ce que le getting started mongodb ne vous dira pasTout ce que le getting started mongodb ne vous dira pas
Tout ce que le getting started mongodb ne vous dira pas
 
Cours 01.pptx
Cours 01.pptxCours 01.pptx
Cours 01.pptx
 
R Devtools
R DevtoolsR Devtools
R Devtools
 
Développement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchDéveloppement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend Search
 

Plus de Estelle Delpech

Identification de compatibilités entre tages descriptifs de lieux
Identification de compatibilités entre tages descriptifs de lieuxIdentification de compatibilités entre tages descriptifs de lieux
Identification de compatibilités entre tages descriptifs de lieuxEstelle Delpech
 
Découverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des LanguesDécouverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des LanguesEstelle Delpech
 
Invited speaker, ATALA 2014 Ph. D. Thesis award
Invited speaker, ATALA 2014 Ph. D. Thesis awardInvited speaker, ATALA 2014 Ph. D. Thesis award
Invited speaker, ATALA 2014 Ph. D. Thesis awardEstelle Delpech
 
Corpus comparables et traduction assistée par ordinateur, contributions à la ...
Corpus comparables et traduction assistée par ordinateur, contributions à la ...Corpus comparables et traduction assistée par ordinateur, contributions à la ...
Corpus comparables et traduction assistée par ordinateur, contributions à la ...Estelle Delpech
 
Identification de compatibilites sémantiques entre descripteurs de lieux
Identification de compatibilites sémantiques entre descripteurs de lieuxIdentification de compatibilites sémantiques entre descripteurs de lieux
Identification de compatibilites sémantiques entre descripteurs de lieuxEstelle Delpech
 
Usage du TAL dans des applications industrielles : gestion des contenus multi...
Usage du TAL dans des applications industrielles : gestion des contenus multi...Usage du TAL dans des applications industrielles : gestion des contenus multi...
Usage du TAL dans des applications industrielles : gestion des contenus multi...Estelle Delpech
 
Nomao: data analysis for personalized local search
Nomao: data analysis for personalized local searchNomao: data analysis for personalized local search
Nomao: data analysis for personalized local searchEstelle Delpech
 
Nomao: carnet de bonnes adresses (entre amis)
Nomao: carnet de bonnes adresses (entre amis)Nomao: carnet de bonnes adresses (entre amis)
Nomao: carnet de bonnes adresses (entre amis)Estelle Delpech
 
Nomao: local search and recommendation engine
Nomao: local search and recommendation engineNomao: local search and recommendation engine
Nomao: local search and recommendation engineEstelle Delpech
 
Extraction of domain-specific bilingual lexicon from comparable corpora: comp...
Extraction of domain-specific bilingual lexicon from comparable corpora: comp...Extraction of domain-specific bilingual lexicon from comparable corpora: comp...
Extraction of domain-specific bilingual lexicon from comparable corpora: comp...Estelle Delpech
 
Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...
Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...
Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...Estelle Delpech
 
Applicative evaluation of bilingual terminologies
Applicative evaluation of bilingual terminologiesApplicative evaluation of bilingual terminologies
Applicative evaluation of bilingual terminologiesEstelle Delpech
 
Évaluation applicative des terminologies destinées à la traduction spécialisée
Évaluation applicative des terminologies destinées à la traduction spécialiséeÉvaluation applicative des terminologies destinées à la traduction spécialisée
Évaluation applicative des terminologies destinées à la traduction spécialiséeEstelle Delpech
 
Dealing with Lexicon Acquired from Comparable Corpora: post-edition and exchange
Dealing with Lexicon Acquired from Comparable Corpora: post-edition and exchangeDealing with Lexicon Acquired from Comparable Corpora: post-edition and exchange
Dealing with Lexicon Acquired from Comparable Corpora: post-edition and exchangeEstelle Delpech
 
Bilingual terminology mining
Bilingual terminology miningBilingual terminology mining
Bilingual terminology miningEstelle Delpech
 
Robust rule-based parsing
Robust rule-based parsingRobust rule-based parsing
Robust rule-based parsingEstelle Delpech
 
Experimenting the TextTiling Algorithm
Experimenting the TextTiling AlgorithmExperimenting the TextTiling Algorithm
Experimenting the TextTiling AlgorithmEstelle Delpech
 
Text Processing for Procedural Question Answering
Text Processing for Procedural Question AnsweringText Processing for Procedural Question Answering
Text Processing for Procedural Question AnsweringEstelle Delpech
 

Plus de Estelle Delpech (19)

Identification de compatibilités entre tages descriptifs de lieux
Identification de compatibilités entre tages descriptifs de lieuxIdentification de compatibilités entre tages descriptifs de lieux
Identification de compatibilités entre tages descriptifs de lieux
 
Découverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des LanguesDécouverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des Langues
 
Invited speaker, ATALA 2014 Ph. D. Thesis award
Invited speaker, ATALA 2014 Ph. D. Thesis awardInvited speaker, ATALA 2014 Ph. D. Thesis award
Invited speaker, ATALA 2014 Ph. D. Thesis award
 
Corpus comparables et traduction assistée par ordinateur, contributions à la ...
Corpus comparables et traduction assistée par ordinateur, contributions à la ...Corpus comparables et traduction assistée par ordinateur, contributions à la ...
Corpus comparables et traduction assistée par ordinateur, contributions à la ...
 
Identification de compatibilites sémantiques entre descripteurs de lieux
Identification de compatibilites sémantiques entre descripteurs de lieuxIdentification de compatibilites sémantiques entre descripteurs de lieux
Identification de compatibilites sémantiques entre descripteurs de lieux
 
Usage du TAL dans des applications industrielles : gestion des contenus multi...
Usage du TAL dans des applications industrielles : gestion des contenus multi...Usage du TAL dans des applications industrielles : gestion des contenus multi...
Usage du TAL dans des applications industrielles : gestion des contenus multi...
 
Nomao: data analysis for personalized local search
Nomao: data analysis for personalized local searchNomao: data analysis for personalized local search
Nomao: data analysis for personalized local search
 
Nomao: carnet de bonnes adresses (entre amis)
Nomao: carnet de bonnes adresses (entre amis)Nomao: carnet de bonnes adresses (entre amis)
Nomao: carnet de bonnes adresses (entre amis)
 
Nomao: local search and recommendation engine
Nomao: local search and recommendation engineNomao: local search and recommendation engine
Nomao: local search and recommendation engine
 
Extraction of domain-specific bilingual lexicon from comparable corpora: comp...
Extraction of domain-specific bilingual lexicon from comparable corpora: comp...Extraction of domain-specific bilingual lexicon from comparable corpora: comp...
Extraction of domain-specific bilingual lexicon from comparable corpora: comp...
 
Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...
Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...
Identification of Fertile Translations in Comparable Corpora: a Morpho-Compos...
 
Applicative evaluation of bilingual terminologies
Applicative evaluation of bilingual terminologiesApplicative evaluation of bilingual terminologies
Applicative evaluation of bilingual terminologies
 
Évaluation applicative des terminologies destinées à la traduction spécialisée
Évaluation applicative des terminologies destinées à la traduction spécialiséeÉvaluation applicative des terminologies destinées à la traduction spécialisée
Évaluation applicative des terminologies destinées à la traduction spécialisée
 
Dealing with Lexicon Acquired from Comparable Corpora: post-edition and exchange
Dealing with Lexicon Acquired from Comparable Corpora: post-edition and exchangeDealing with Lexicon Acquired from Comparable Corpora: post-edition and exchange
Dealing with Lexicon Acquired from Comparable Corpora: post-edition and exchange
 
R&D Lingua et Machina
R&D Lingua et MachinaR&D Lingua et Machina
R&D Lingua et Machina
 
Bilingual terminology mining
Bilingual terminology miningBilingual terminology mining
Bilingual terminology mining
 
Robust rule-based parsing
Robust rule-based parsingRobust rule-based parsing
Robust rule-based parsing
 
Experimenting the TextTiling Algorithm
Experimenting the TextTiling AlgorithmExperimenting the TextTiling Algorithm
Experimenting the TextTiling Algorithm
 
Text Processing for Procedural Question Answering
Text Processing for Procedural Question AnsweringText Processing for Procedural Question Answering
Text Processing for Procedural Question Answering
 

Génération automatique de texte

  • 1. Génération automatique de textes Application à un outil de gestion et recommandation de bonnes adresses Estelle Delpech Responsable R&D, Nomao Séminaire « Thématiques actuelles de la recherche en TAL » Laboratoire CLLE-ERSS, Université Toulouse II 19 novembre 2012
  • 2. Plan 1. Contexte applicatif 2. Principes de la génération automatique de texte 3. Génération de descriptifs de lieux en contexte applicatif
  • 3. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 4. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 5. Nomao carnet de bonnes adresses (entre amis) permettre aux gens de trouver, garder et échanger des bonnes adresses (restaurants, bars, shopping, médecins...) un carnet d’adresse « intelligent » : – recherche géolocalisée – réalité augmentée – adaptation aux goûts de l’utilisateur – partage sur les réseaux sociaux ⇒ http ://fr.nomao.com 1 / 83
  • 8. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 9. Technologie : moteur de recommandation « Ceux qui ont aimé les mêmes lieux que vous aiment aussi... » 4 / 83
  • 10. Construction de l’index de lieux 5 / 83
  • 11. Extraction de données SOURCE 1            nom : Les Caves de La Maréchale descripteurs : restaurant adresse : rue : ville : Toulouse commentaires : note : 4 texte : Mangé hier soir avec...             SOURCE 2            nom : Caves de La Maréchale SARL descripteurs : français adresse : rue : Rue Jules Chalande ville : Toulouse commentaires : note : 2 texte : Pas vraiment apprécié...             6 / 83
  • 12. Agrégation de données LIEU #5237890                nom : Les Caves de La Maréchale descripteurs : restaurant, français adresse : rue : Rue Jules Chalande ville : Toulouse commentaires : note : 4 texte : Mangé hier soir avec... note : 2 texte : Pas vraiment apprécié...                 7 / 83
  • 13. Analyse des données LIEU #5237890                           nom : Les Caves de La Maréchale descripteurs : restaurant, français CATÉGORIE : manger restaurant europen franais adresse : rue : Rue Jules Chalande ville : Toulouse commentaires : note : 4 texte : Mangé hier soir avec... note : 2 texte : Pas vraiment apprécié... E-RÉPUTATION : 79% ASPECTS POSITIFS : SERVICE : super accueil, personnel avenant PLATS : gratin dauphinois délicieux                           8 / 83
  • 14. Synthèse en langue naturelle « Les Caves de la Maréchale » est un restaurant localisé Rue Jules Chalande à Toulouse. Ce restaurant est spécialisé dans la cuisine française. Il a recueilli 79% de notes favorables sur Internet. Les internautes y apprécient particulièrement le service (« super accueil », « personnel avenant ») et les plats principaux (« gratin dauphinois délicieux »). ⇒ Synthèse conviviale des informations objectives et subjectives disséminées sur Internet à propos d’un lieu 9 / 83
  • 15. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 16. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 17. Applications possibles Traduction automatique (système par pivot) Résumé automatique (système basés sur une simulation de l’activité humaine) ⇒ plutôt lié aux approches symboliques 10 / 83
  • 18. Applications confirmées Agents conversationnels Génération de textes à partir de données – numériques, ex : météo, cours de bourse... – procédurales, ex : manuels d’instructions – diverses, ex : matches de foot, descriptifs de lieux... ⇒ toujours propre à un domaine + but communicatif, pas de système généraliste. 11 / 83
  • 19. Niveaux de complexité Textes en boite : Votre imprimante n’a plus de papier Textes à trous et patrons conditionnels : publipostage {IF $SEXE=F Chère Cher} $PRENOM $NOM, Nous avons le {IF $SOLDE 0 regret plaisir} de vous annoncer que... Content spinning : génération de contenu pour le Web Systèmes de génération « intelligents » 12 / 83
  • 21. Content spinning Technique de génération de contenu varié pour optimiser des pages web Principe : 1. écriture d’un premier texte 2. découpage du texte en morceaux, sous-morceaux, sous-sous-morceaux, etc.. 3. pour chaque morceau : proposer plusieurs variantes possibles 4. génération par sélection aléatoire des morceaux La {génération de texte|GAT} rend {possible|facile} la création de {textes|contenus textuels} {rapide| à la va-vite} ⇒ 2 x 2 x 2 x 2 = 16 phrases 13 / 83
  • 22. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 23. Architecture typique d’un système de génération [Danlos and Roussarie, 2000] 14 / 83
  • 24. Architecture typique d’un système de génération [Danlos and Roussarie, 2000] 14 / 83
  • 25. Architecture typique d’un système de génération [Danlos and Roussarie, 2000] ‘ 14 / 83
  • 26. Architecture typique d’un système de génération [Danlos and Roussarie, 2000] ‘ 14 / 83
  • 28. Sélection du contenu I Entrée Données brutes, éventuellement buts communicatifs – sélection d’information – filtrage/calcul des informations saillantes, ex. : hausses de températures – peut inclure du raisonnement (IA) – transcription en représentations logiques Sortie formes logiques non ordonnées 15 / 83
  • 29. Sélection du contenu II (m7 / |eat, take in| :time present :agent (d / |dogcanid| :quant plural) :patient (b / |os, bone|) :quant plural) ) ⇒ dogs eat bones [Knight and Langkide, 1998] 16 / 83
  • 31. Structuration rhétorique I Entrée Formes logiques non ordonnées – regroupement du contenu sémantique en unités – les unités sémantiques se réaliseront par la suite en phrases ou propositions syntaxiques – articulées par des relations de discours Sortie Plan de texte 17 / 83
  • 34. Planification syntaxique I Entrée Plan de texte – traductions des structures sémantiques en structures syntaxiques Sortie Arbres syntaxiques + connecteurs, mots outils 19 / 83
  • 35. Planification syntaxique II # dog, bone, eat ((x1 :agent) (x2 :patient) (x3 :rest) - # dogs eat bones (s (seq (x1 np nom-pro) (x3 v-tensed) (x2 np acc-pro))) # bones are eaten by dogs (s (seq (x2 np nom-pro) (x3 v-passive) (wrd by) (x1 np acc-pro))) # consumption of bones by dogs (s (seq (x3 np acc-pro nom-pro) (wrd of) (x2 np acc-pro) (wrd by) (x1 np acc-pro))) ) adapté de [Knight and Langkide, 1998] 20 / 83
  • 37. Lexicalisation I Entrée Arbres syntaxiques – sélection de lexies correspondant au sens et s’intégrant dans la structure syntaxique Sortie Arbres syntaxiques lexicalisés 21 / 83
  • 38. Lexicalisation II # Lexique ((eat VERB |eat, take in|) (dog NOUN |caniddog|) (bone, NOUN |os, bone|)) # Structure lexicalisée (s (seq (wrd dog) (wrd +plural) (wrd eat) (wrd bone) (wrd +plural))) adpatée de [Knight and Langkide, 1998] 22 / 83
  • 40. Ajustement morphologique I Entrée Arbres syntaxiques lexicalisés – calcul de la forme de surface : accords, conjugaisons, agglutination, élision... Sortie Arbres syntaxiques lexicalisés et fléchis 23 / 83
  • 41. Ajustement morphologique II (-child children) (-person, people, persons) (-a, as, ae) # formulas/formulae (-x, xes, xen) # boxes / oxen (-man, mans, men) # humans/footmen (-Co, os, oes) [Knight and Langkide, 1998] 24 / 83
  • 43. Formatage Entrée Arbres syntaxiques lexicalisés et fléchis – règles typographiques, insertion du formatage (balises...), linéarisation de l’arbre Sortie Forme de surface linéaire 25 / 83
  • 44. Autres tâches [Danlos and Roussarie, 2000] 26 / 83
  • 45. Autres tâches Génération d’expressions référentielles Agrégation ⇒ Gain en fluidité et lisibilité, évite les redondances 26 / 83
  • 47. Génération d’expressions référentielles Liée génération des groupes nominaux Choix possibles : – déterminant : le vs. un vs. ce bouton – prédicat lexical : l’appareil vs. le magnétoscope – réduction : la machine à gauffres vs. la machine – épithètes restrictifs : le bouton vert vs. le premier bouton – pronominalisation : il vs. l’appareil 27 / 83
  • 49. Agrégation Regroupement de plusieurs entités en une seule entité globale Peut intervenir à plusieurs niveaux – génération de syntagmes pluriels : . écran(x), clavier(y) → périphériques(x,y) – coordination, ellipses de structures syntaxiques : . tirer puis relâcher la manette . insérer la fiche 1 dans le port et la fiche 2 dans la sortie 28 / 83
  • 50. Approches statistiques [Belz and Kow, 2009] 29 / 83
  • 51. Approches statistiques [Belz and Kow, 2009] Développement d’approches statistiques à partir de 1998 But : accélérer les développements, adaptation au domaine Intégration à plusieurs niveaux : – structure syntaxique → texte final – représentation sémantique → texte final 29 / 83
  • 52. Réalisation de surface guidée par les données [Knight and Langkide, 1998, Langkide, 2000] I 30 / 83
  • 53. Réalisation de surface guidée par les données [Knight and Langkide, 1998, Langkide, 2000] I Sélection de toutes les structures syntaxiques, et de toutes les lexies possibles Obtention d’un graphe de réalisations possibles Choix du chemin le plus probable grâce à des probabilités de n-grammes de mots appris sur corpus 30 / 83
  • 54. Réalisation de surface guidée par les données [Knight and Langkide, 1998, Langkide, 2000] II 31 / 83
  • 55. Génération basée sur la traduction automatique [Wong and Mooney, 2007] I 32 / 83
  • 56. Génération basée sur la traduction automatique [Wong and Mooney, 2007] I Apprentissage de probabilités d’alignements entre réalisation de surface et représentation sémantique 32 / 83
  • 57. Génération basée sur la traduction automatique [Wong and Mooney, 2007] II Choix de la réalisation de surface qui est à la fois : – dont le sens est le plus proche de la représentation sémantique (modèle de traduction) – la mieux formée (modèle de langue : n-grammes corpus) argmax e Pr(e|f) = argmax e Pr(e)Pr(f|e) 33 / 83
  • 58. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 59. Évaluation [Reiter and Belz, 2009] 34 / 83
  • 60. Évaluation [Reiter and Belz, 2009] Pas de technique consensuelle Trois types d’évaluation : – évaluation applicative / guidée par la tâche – évaluation basée sur des jugements humains – évaluation automatique par comparaison à une référence 34 / 83
  • 61. Évaluation applicative Méthodologies liées à l’application finale : – faire une tâche en suivant des instructions générées – arrêter de fumer grâce à des lettres de suivi personnalisées – coût de post-édition Évaluations les plus parlantes / convaincantes Coûteuses Dépendantes du bon-vouloir des participants 35 / 83
  • 62. Évaluation humaine Méthode : – texte noté sur plusieurs critères (échelles) . qualité globale, cohérence, contenu, organisation... – préférence entre deux textes Méthode la plus populaire Plus rapide et moins chère que l’évaluation guidée par la tâche 36 / 83
  • 63. Évaluation automatique Méthode : – extraction des structures syntaxiques / de l’information d’un corpus écrit par un humain – (re-)génération du texte à partir des structures – comparaison via une mesure style distance d’édition, BLEU... Peu coûteuse, rapide, reproductible Utilisée pour évaluer à partir de la lexicalisation Méthode controversée pour une évaluation globale : – validité de la référence – objet de l’évaluation 37 / 83
  • 65. Projets académiques Babytalk : résumés de données cliniques sur des bébés en soins intensifs [Portet et al., 2009] Génération de prévisions météo [Belz, 2008] STOP : génération de lettre personnalisées pour arrêt tabac [Reiter et al., 2003] SKILLSUM : résumé d’évaluation de niveau d’alphabétisation [Williams and E., 2008] Générateur de blagues [Binsted et al., 1997] 38 / 83
  • 67. Systèmes commerciaux Revolusyn : content spinning avancé - www.revolusyn.com/ EasyText : commentaires de tableaux de données statistiques StatsMonkey : résumés de matches de baseball Syllabs : descriptifs de produits marchands - http ://demo.showroom.syllabs.com/generation/ Hotels Combined : résumés d’avis clients - www.hotelscombined.com/ Nomao : descriptifs de lieux 39 / 83
  • 68. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 69. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 70. Contraintes Rapidité du système : éviter traitements complexes, couteux en temps Rapidité de développement : – ne coller à l’architecture théorique que si c’est nécessaire ⇒ système mixant génération « intelligente »et approches bas niveau Moteurs de recherche : – contenu unique et varié 40 / 83
  • 71. Exemple de texte généré HÔTEL « HÔTEL DE VARENNE » À PARIS Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris... « Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème arrondissement. Cet hôtel propose des chambres disposant de tout le confort moderne (climatisation...). Il dispose d’un agréable jardin et met à disposition de ses clients un accès WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables sur Internet. Les internautes y apprécient particulièrement le service (« personnel tres aimable », « sourire du personnel », « personnel sympathique »). 41 / 83
  • 72. Optimisation moteurs de recherche HÔTEL « HÔTEL DE VARENNE » À PARIS Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris... « Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème arrondissement. Cet hôtel propose des chambres disposant de tout le confort moderne (climatisation...). Il dispose d’un agréable jardin et met à disposition de ses clients un accès WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables sur Internet. Les internautes y apprécient particulièrement le service (« personnel tres aimable », « sourire du personnel », « personnel sympathique »). 42 / 83
  • 73. Génération bas niveau ⇒ choix lexical aléatoire avec gestion des accords HÔTEL « HÔTEL DE VARENNE » À PARIS Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris... « Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème arrondissement. Cet hôtel propose des chambres disposant de tout le confort moderne (climatisation...). Il dispose d’un agréable jardin et met à disposition de ses clients un accès WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables sur Internet. Les internautes y apprécient particulièrement le service (« personnel tres aimable », « sourire du personnel », « personnel sympathique »). 43 / 83
  • 74. Génération de texte intelligente HÔTEL « HÔTEL DE VARENNE » À PARIS Quelques infos sur l’hôtel « Hôtel de Varenne » à Paris... « Hôtel de Varenne » est un hôtel situé à Paris dans le 7ème arrondissement. Cet hôtel propose des chambres disposant de tout le confort moderne (climatisation...). Il dispose d’un agréable jardin et met à disposition de ses clients un accès WIFI. Hôtel de Varenne a obtenu 91% de remarques favorables sur Internet. Les internautes y apprécient particulièrement le service (« personnel tres aimable », « sourire du personnel », « personnel sympathique »). 44 / 83
  • 75. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 76. Fonctionnement du générateur de textes I 45 / 83
  • 79. Sélection du contenu I Entrée Données brutes – sélection – catégorisation – transformation – pas de raisonnement, de manipulation de concepts Sortie Données filtrées et restructurées 46 / 83
  • 80. Sélection du contenu II DONNÉES BRUTES                           NOM : Higuma CATÉGORIE : manger restaurant asiatique japonais TAGS : carte de crédit acceptées, chèques refusés, japonais GÉOLOCALISATION : LAT : 48.871762 LONG : 2.352262 ADRESSE :  RUE : 32 Rue Saint-Anne VILLE : Paris CP : 75001   MÉTRO : LIGNE : 14 STATION : Pyramides                           CONTENU POUR GÉNÉRATION                           NOM : Higuma CATÉGORIE : restaurant :masc :sing STYLE CUISINE : japonais PAIEMENTS ACCEPTÉS : carte de crédit PAIEMENTS REFUSÉS : chèque ADRESSE :  RUE : 32 Rue Saint-Anne VILLE : Paris QUARTIER : 1                             47 / 83
  • 82. Structuration rhétorique I Entrée Données filtrées et structurées – sélection de propositions sémantiques pré-définies en fonction du contenu disponible – ordonnancement des propositions, regroupement en paragraphes thématiques – articulation des propositions par des relations de discours Sortie Plan de texte 48 / 83
  • 83. Structuration rhétorique II NOM : Higuma CATÉGORIE : restaurant :masc :sing ⇒ SPOT_IS_A_TYPE STYLE CUISINE : japonais ⇒ COOKING_STYLE PAIEMENTS ACCEPTÉS : carte de crédit ⇒ ACCEPTED_PAYMENTS PAIEMENTS REFUSÉS : chèque ⇒ REJECTED_PAYMENTS ADRESSE :   RUE : 32 Rue Saint-Anne VILLE : Paris QUARTIER : 1   ⇒ LOC_STREET_CITY_DISTRICT 49 / 83
  • 84. Structuration rhétorique III SPOT_IS_A_TYPE COOKING_GEOSTYLE ACCEPTED_PAYMENTS REJECTED_PAYMENTS LOC_STREET_CITY_DISTRICT ⇒ ANCRAGE #1 SPOT_IS_A_TYPE #2 LOC_STREET_CITY_DISTRICT PROPRIÉTÉS  #1 COOKING_GEOSTYLE #2 ACCEPTED_PAYMENTS #3 REJECTED_PAYMENTS   50 / 83
  • 86. Structuration rhétorique V Continuation #1 CO- OKING_STYLE Contrast #2 ACCEP- TED_PAYMENTS #3 REJEC- TED_PAYMENTS 52 / 83
  • 87. Structuration rhétorique VI pas de variation dans l’ordre des propositions règles ad hoc codées en dur 53 / 83
  • 89. Planification syntaxique I Entrée Plan de texte – sélection des structures syntaxiques correspondant aux propositions sémantiques – sélection aléatoire parmi plusieurs structures possibles Sortie Structures syntaxiques à trous 54 / 83
  • 90. Planification syntaxique II PROPER VERB Enum PREPPhr $SPOT accepte $ACCEPTED_PAYMENTS comme moyen de paiement strong ACCEPTED_PAYMENTS SUBJ OBJ CIRC 55 / 83
  • 91. Planification syntaxique III ART_DEF NOUN le $ACCEPTED_PAYMENT Enum_ACCEPTED_PAYMENTS DET agreement 56 / 83
  • 92. Planification syntaxique IV ART_DEF NOUN . . . ART_DEF NOUN le $ACCEPTED_PAYMENT1 le $ACCEPTED_PAYMENTN Enum_ACCEPTED_PAYMENTS DET ENUM DET agreement agreement 57 / 83
  • 95. Lexicalisation I Entrée Structures syntaxiques à trous – choix des valeurs correspondant aux variables . tags : sélection aléatoire dans lexique, fonction partie du discours imposée par structure . entités nommées : insertion de la valeur brute Sortie Structures syntaxiques lexicalisées 59 / 83
  • 96. Lexicalisation II PROPER VERB ART_DEF NOUN PREPPhr ENTITÉ TAG $SPOT accepte le $ACCEPTED_PAYMENT comme moyen de paie ACCEPTED_PAYMENTS SUBJ OBJ DET CIRC 60 / 83
  • 97. Lexicalisation III PROPER VERB ART_DEF NOUN PREPPhr Novotel accepte le carte visa comme moyen de paie hotel :masc :sing :fém :sing ACCEPTED_PAYMENTS SUBJ OBJ DET CIRC 61 / 83
  • 100. Agrégation des structures I Entrée Structures syntaxiques : 1 structure ↔ 1 proposition – agrégation des structures répétitives : . sujets identiques . verbes identiques ou compatibles – ajout des frontières de phrases Sortie Phrases finales : 1 phrase → 1 ou plusieurs propositions 63 / 83
  • 101. Agrégation des structures II Novotel accepte carte visa ACCEPTED_PAYMENTS SUBJ OBJ 64 / 83
  • 102. Agrégation des structures III Novotel accepte carte visa Novotel refuse chèque ACCEPTED_PAYMENTS SUBJ OBJ REJECTED_PAYMENTS SUBJ OBJ 65 / 83
  • 103. Agrégation des structures IV Novotel accepte carte visa Novotel refuse chèque SPOT_ACCEPT_PAYMENT SUBJ OBJ SPOT_REJECT_PAYMENT SUBJ OBJ sujets identiques verbes compatibles ⇒ Agrégation possible 66 / 83
  • 104. Agrégation des structures V Novotel accepte carte visa COORD X refuse chèque ROOT COORD COORD SUBJ OBJ OBJ 67 / 83
  • 105. Agrégation des structures VI Novotel accepte carte visa mais refuse chèque ROOT COORD COORD SUBJ OBJ OBJ CONTRASTCONTRAST 68 / 83
  • 106. Agrégation des structures VII autres règles : – Novotel est un hotel + Novotel est situé à Paris ⇒ Novotel est un hôtel situé à Paris – Novotel dispose d’un jardin + Novotel propose des chambres avec climatisation ⇒ Novotel dispose d’un jardin et propose des chambres avec climatisation règles d’agrégation codées en dur déclaration externe : – compatibilités entre verbes – coordonnants 69 / 83
  • 108. Génération d’expressions référentielles I Entrée Phrases finales – repérage des sujets répétés – remplacement par des expressions référentielles Sortie Phrases finales avec expressions référentielles 70 / 83
  • 109. Génération d’expressions référentielles II Les Caves de la Maréchale est un restaurant localisé Rue Jules Cha SUBJ Les Caves de la Maréchale est spécialisé dans la cuisine française SUBJ Les Caves de la Maréchale a recueilli 79% de notes favorables sur restaurant :masc :sing SUBJ 71 / 83
  • 110. Génération d’expressions référentielles III Lexique expressions référentielles : restaurant → PRO :masc :sing : il → NOUNPhr :masc :sing : ce restaurant → NOUNPhr :masc :sing : . . . Ordre d’apparition arbitraire : 1. PROPER 2. NOUNPhr aléatoire 3. PRO 72 / 83
  • 111. Génération d’expressions référentielles IV Les Caves de la Maréchale est un restaurant localisé Rue Jules Cha Ce restaurant est spécialisé dans la cuisine française . Il a recueilli 79% de notes favorables sur Internet . 73 / 83
  • 113. Ajustements morphologiques I Entrée Phrases avec mots à l’état de lemmes – accords – élisions – agglutinations Sortie Phrases avec formes finales des mots 74 / 83
  • 114. Ajustements morphologiques II PROPER VERB ART_DEF NOUN PREPPhr Novotel accepte le carte visa comme moyen de paiement fém :sing ACCEPTED_PAYMENTS SUBJ OBJ DET CIRC agreement Novotel accepte la carte visa comme moyen de paiement 75 / 83
  • 116. Ajustements morphologiques IV ce restaurant est spécialisé dans la cuisine français . fém :sing ADJ agreement ce restaurant est spécialisé dans la cuisine française . 77 / 83
  • 118. Ajustements morphologiques VI cet hotel dispose de un bar . cet hotel dispose d’ un bar . 79 / 83
  • 119. Mise en forme I 80 / 83
  • 120. Mise en forme I Entrée Suite de mots – Majuscules – Espaces – Balises Sortie Texte final 80 / 83
  • 121. Mise en forme II cet hotel dispose d’ un bar , d’ un spa et d’ un golf . Cet hotel dispose d’ un bar , d’ un spa et d’ un golf . Cet_ hotel_ dispose_ d’ un_ bar ,_ d’ un_ spa_ et_ d’ un_ golf . Cet hotel dispose d’un bar, d’un spa et d’un golf. 81 / 83
  • 122. Mise en forme III PROPER VERB DET NOUN PART PREP PROPER « La Braisière » est un restaurant situé à Toulouse strong strong strong ROOT SUBJ PRED PRED DET PREP CPREP strong « La Braisière »/strong est un strong restaurant /strong situé à strong Toulouse /strong. 82 / 83
  • 123. Plan 1. Contexte applicatif Présentation du produit Processus de traitement des données 2. Principes de la génération automatique de texte Introduction : applications, niveaux de complexité Fonctionnement d’un générateur de texte Évaluation et systèmes existants 3. Génération de descriptifs de lieux en contexte applicatif Contraintes liées au contexte applicatif Fonctionnement du générateur de textes Évaluation et perspectives
  • 125. Évaluation Pas d’évaluation à ce jour Modes d’évaluation envisagés : – coût de post-édition – temps resté sur la page – nb de visites sur la page Indicateurs de progression : – variété – longueur – temps 83 / 83
  • 126. Variété n-grammes de mots pleins communs entre deux textes : jaccard(n1, n2) = |n1 ∩ n2| |n1 ∪ n2| n jaccard 1 0, 17 2 0,11 3 0,7 ⇒ baisse d’environ 40% grâce à l’aléatoire 84 / 83
  • 127. Longueur ⇒ 63 tokens / texte en moyenne ⇒ objectif : 300 tokens 85 / 83
  • 128. Temps de génération 360 textes par seconde après optimisation Intel Xeon 3Ghz, bi-processeur, 24 cœurs 86 / 83
  • 129. Qualité linguistique perçue HÔTEL « HÔTEL HÉLIOT » À TOULOUSE Vous souhaitez en savoir plus sur l’hôtel « Hôtel Héliot » à Toulouse ? « Hôtel Héliot » est un hôtel. Cet hôtel se situe 3 Rue Héliot à Toulouse. Il a remporté 81% de remarques favorables sur Internet. Les internautes y apprécient particulièrement le service (« patron tres sympathique », « accueil très aimable », « personnel sympathique ») et les équipements des chambres (« chambre très propre », « chambre spatieuse », « chambre agréable »). 87 / 83
  • 131. Perspectives Variation : – varier l’ordre des phrases dans le plan de texte – enrichir les structures syntaxiques, le lexique Fluidité : – complexifier l’agrégation : Cet hotel, qui dispose d’un bar, a obtenu 90% de commentaires positifs. « Humaniser » : – flou : 90% de commentaires positifs → a une excellente réputation – style : dispose d’un jardin → vous pourrez vous détendre en allant faire une balade au calme dans le jardin 88 / 83
  • 132. Merci pour votre attention estelle (a) nomao.com
  • 133. Références I Belz, A. (2008). Automatic generation of weather forecast texts using comprehensive probabilistic generation-space models. Natural Language Engineering, 14(4) :431–455. Belz, A. and Kow, E. (2009). System building cost vs. output quality in data-to-text generation. In Proceedings of the 12th European Workshop on Natural Language Generation, pages 16–24. Binsted, K., Pain, H., and Graeme, R. (1997). Children’s evaluation of computer-generated punning riddles. Pragmatics and Cognition, 5 :309–358. Danlos, L. and Roussarie, L. (2000). La génération automatique de textes. In Ingénierie de la langue. Pierrel, J.-M., hermès edition. Hovy, E. (1998). Automated discourse generation using discourse structure relations. Artificial Intelligence, 63 :341–385.
  • 134. Références II Knight, K. and Langkide, I. (1998). Generation that exploits corpus-based knwoledge. In Proceedings of the 36th Annual Meeting of the Association for Computational Linguistics and 17th International Conference on Computational Linguistics, pages 704–710. Langkide, I. (2000). Forest-based statistical sentence generation. In Proceedings of the 6th Applied Natural Language Processing Conference and the 1st Meeting of the North American Chapter of the Association of Computational Linguistics, pages 170–177. Portet, F., Reiter, E., Gatt, A., Hunter, J., Sripada, S., Freer, Y., and Sykes, C. (2009). Generation of textual summaries from neonatal intensive care data. Artificial Intelligence, 173 :789–816. Reiter, E. and Belz, A. (2009). An investigation into the validity of some metrics for automatically evaluating natural language generation systems. Computational Linguistics, 35(4) :529–558.
  • 135. Références III Reiter, E., Roma, R., and Liesl, O. (2003). Lessons from a failure : Generating tailored smoking cessation letters. Artificial Intelligence, 144 :41–58. Williams, S. and E., R. (2008). Generating basic skills reports for low-skilled readers. Natural Language Engineering, 14 :41–58. Wong, Y. and Mooney, R. (2007). Generation by inverting a semantic parser that uses statistical machine translation. In Proceedings of Human Language Technologies : The Annual Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology, pages 172–179.