Exemple n 1 : estimation de · 2019-08-27 · 1 Objectif Remarques ... (test_pos_tagger(tagger,...
Transcript of Exemple n 1 : estimation de · 2019-08-27 · 1 Objectif Remarques ... (test_pos_tagger(tagger,...
Statistiques descriptives
Methodes probabilistes pour le TAL
Guillaume Wisniewski
novembre 2017
Universite Paris Sud & LIMSI
1
Objectif
• Comment analyser des
donnees collectees ?
• Comment extraire des
connaissances generales ?
• Quel type de questions
peut-on poser ?
• Quelles sont les limites de
inference statistique ?
2
Population versus echantillon
(source : Wikipedia)
• objectif : mesurer une propriete d’une population = tous les
elements d’interet
• en general : on n’a acces qu’a un echantillon = sous-ensemble
de la population
• quand et comment sont lies la mesure de la propriete sur la
population et sur l’echantillon
inference statistique3
Remarques
• Seule la mesure sur la totalite de la population a un interet ⇒notion de generalisation
• Tout biais dans la maniere dont l’echantillon est selectionne
peut entrainer une � erreur � dans la mesure
• Pourquoi se limiter a des echantillons : essentiellement des
raisons � computationelles �
• presentation orientee TAL• echantillon de grande taille (plusieurs centaines, voir milliers
d’elements)
• echantillon choisi au hasard (par opposition a la theorie des
sondages) : quid de l’expertise de la personne qui selectionne
l’echantillon
• en general : parametre = description de la population,
statistique = description de l’echantillon
4
Grande question
Comment reduire la difference entre la valeur mesuree sur la
population et la valeur mesuree sur l’echantillon ? 5
Premiere partie I
Exemple no 1 : estimation de
confiance en traduction
automatique
6
Contexte
La tache
• entree : traduction automatique
• sortie : est-ce que cette traduction necessite beaucoup d’effort
pour etre corrigee (note entre 1 et 5)
• campagne d’evaluation WMT (depuis 2012)
Donnees
• 1 832 + 422 traductions automatiques avec un jugement de
qualite
• jugement = moyenne ponderee des notes donnees par 3
annotateurs
7
En pratique : guide d’annotation
1. The MT output is incomprehensible, with little or no
information transferred accurately. It cannot be edited, needs
to be translated from scratch.
2. About 50% -70% of the MT output needs to be edited. It
requires a significant editing effort in order to reach
publishable level.
3. About 25%-50% of the MT output needs to be edited. It
contains different errors and mistranslations that need to be
corrected.
4. About 10%-25% of the MT output needs to be edited. It is
generally clear and intelligible.
5. The MT output is perfectly clear and intelligible. It is not
necessarily a perfect translation, but requires little to no
editing.8
En pratique : les donnees
$ training_set_annotations git:(master) > head -5 target_system.effort
4.5
4.3
4.0
4.0
3.8
$ QualityEstimation git:(master) > head -5 training_set/target_system.spa
Barack Obama se convierte en el cuarto presidente estadounidense para recibir el Premio Nobel de la Paz
El presidente estadounidense Barack Obama va a volar en Oslo, Noruega, por 26 horas para recibir el Premio Nobel de la Paz, el cuarto presidente estadounidense en la historia de hacerlo.
l recibiran un diploma, medalla y cheque de 1,4 millones de dolares por su excepcional esfuerzos para mejorar la diplomacia global y fomentar la cooperacion internacional, entre otras cosas.
El jefe de la Casa Blanca estara volando en la ciudad noruega en la ma~nana con su esposa Michelle y tendra una apretada agenda.
9
Campagne d’evaluation
C’est bien...
• production de donnees annotees
• � standardisation � d’un protocol experimental
• comparer differentes approches dans des conditions identiques
• mesurer le progres sur une tache donnee
• aujourd’hui : plusieurs dizaines de campagne par an
...mais ca ne sert a rien
• tres peu d’analyse d’erreurs
• difficile de comprendre les differences / resultats
• limite des approches ou limite des donnees
• fuite en avant : multiplier les questions pour cacher le fait que
l’on n’a pas de reponse 10
1re question : que faire avec ces donnees ?
d’apres Wisniewski, et al., MT Journal 2013
• la plupart des participants : extraction de caracteristiques, puis
lancement de tous les algorithmes d’apprentissage de la terre
• et pourtant :
11
Encore plus � drole �
12
Moralite
Toujours regarder lesdonnees
• statistique descriptive
(moyenne, mediane,
variance, ...)
• representation graphique
13
Importance de la representation graphique
14
Representation des distributions/donnees
• histogramme
• scatter plot
15
Histogramme
16
Construction histogramme
17
Impact du choix des bins
Aucun moyen de determiner automatiquement la taille des bins de
maniere convaincante (a ma connaissance)
18
Kernel Density Estimation
19
Accord inter-annotateur
Principe
• Objectif : mesurer la qualite d’une annotation
• 2 annotateurs annotent les memes donnees cher !
• mesures statistiques de leur accord
Principe
• κ de Cohen :
κ =po − pe1− pe
= 1− 1− po1− pe
(1)
po : probabilite que deux elements aient la meme etiquette, pe
probabilite que deux elements aient la meme etiquette lorsque
celles-ci sont choisies au hasard
• sinon : coefficient π de Scott, generalisation de Fleiss, ICC, ... 20
Difficulte
• cout
• interpretation
21
Deuxieme partie II
Exemple no 2 : evaluation des
performances d’un classifieur
22
Contexte
• systeme qui realise des predictions ⊕ fonction de cout
• objectif : evaluer la qualite des predictions sur des donnees
inconnues (generalisation)
• estimation de l’erreur sur un corpus de test
Que peut-on dire de l’erreur sur un autre ensemble de donnees
23
Exemple : PoS tagging
La tache[["Les", "DET", "DET"], ["commotions", "NOUN", "NOUN"], ["cerebrales", "ADJ", "ADJ"], ["sont",
"VERB", "AUX"], ["devenu", "VERB", "VERB"], ["si", "ADV", "ADV"], ["courantes", "ADJ", "ADJ"],
["dans", "ADP", "ADP"], ["ce", "DET", "DET"], ["sport", "NOUN", "NOUN"], ["qu’", "SCONJ",
"SCONJ"], ["on", "PRON", "PRON"], ["les", "PRON", "PRON"], ["considere", "VERB", "VERB"],
["presque", "ADV", "ADV"], ["comme", "ADV", "ADV"], ["la", "DET", "DET"], ["routine", "NOUN",
"NOUN"], [".", "PUNCT", "PUNCT"]]
Conditions experimentales
• corpus d’apprentissage : UD 1.3
• corpus de test : UD 1.3 (in-domain) ⊕ Tweet parlant de foot
(out-domain)
• modele : perceptron moyenne (en premiere approximation)
24
Courbe d’apprentissage
25
Que peut-on en deduire ?
Evaluation in-domain
• l’erreur en apprentissage continue de descendre lentement bien
apres que l’erreur en generalisation ait convergee ⇒sur-apprentissage
• erreur finale autour de 3% ⇒ l’apprentissage c’est bien c©• mieux qu’un etre humain
• enormement d’etiquettes triviales (ponctuation !). Autre
mesure : phrase sans aucune erreur 40%
• en donnant l’etiquette majoritaire aux mots ambigus : erreur
≤ 10%. Qu’apprend-on vraiment ?
Evaluation out-domain
• explosion du nombres d’erreurs
• vraiment ?26
Les donnees i
Observations
• Ca va faire un petit Juventus - Barca , excellent
aha
• Ca c’ est de l’ attaque ! La BBC #HalaMadrid
#RealMadrid http://t.co/iCknoGm9mF
• Je sens qu’ entre ca et les films de medecins et
scientifiques fous que nous avons deja vus , nous
pourrions emprunter un autre chemin pour
l’origine
27
Les donnees ii
Etiquettes
• Foot : [(’PART’, 31), (’NUM’, 131), (’INTJ’, 142),
(’ADP+DET’, 180), (’SCONJ’, 180), (’E’, 210), (’CONJ’,
222), (’URL’, 226), (’SYM’, 370), (’SHARP’, 389), (’ADJ’,
424), (’X’, 508), (’ADV’, 522), (’AT’, 550), (’PRON’, 926),
(’ADP’, 1097), (’DET’, 1338), (’NOUN’, 1570), (’PROPN’,
1614), (’VERB’, 1653), (’PUNCT’, 1702)]
• UD : [(’INTJ’, 77), (’SYM’, 441), (’X’, 653), (’PART’, 1633),
(’SCONJ’, 2524), (’CONJ’, 9012), (’NUM’, 9575),
(’ADP+DET’, 9703), (’ADV’, 11495), (’PRON’, 15928),
(’ADJ’, 20098), (’PROPN’, 27963), (’PUNCT’, 39335),
(’VERB’, 40064), (’DET’, 44994), (’ADP’, 47379), (’NOUN’,
65596)]
28
Moralite
Aligner des tableaux de chiffresc’est facile, mais ce n’est pas
de la science !
Toujours, toujours regarder les donnees
29
Exemple
d’apres Wisniewski, et al., EMNLP’14
30
Et pourtant...
https://medium.com/@emilymenonbender/
linguistics-nlp-and-interdisciplinarity-or-look-at-your-data-e49e03d37c9c
31
Est-ce toujours aussi facile ?
d’apres Aufrant, et al., COLING’16
32
Impact de l’echantillonnage
• erreur sur les corpus de dev et de test est sensiblement
different
• Experience :
• extraction aleatoire d’un � sous-corpus � de test (500 phrases)
• estimation de l’erreur sur ce sous-corpus
• on recommence
⇒ distribution des moyennes echantillonnees (distribution of
sample means)
33
En pratique
import pickle
import json
from dependency_parser import test_pos_tagger
from listener import SimpleListener
from random import sample
tagger = pickle.load(open("fr.pos.pkl", "rb"))
test_set = json.load(open("data/pos/fr.ud13.test.json")) + \
json.load(open("data/pos/fr.ud13.dev.json"))
test_set = [list(zip(*sentence))[:2] for sentence in test_set]
for i in range(1000):
data = sample(test_set, 500)
print(test_pos_tagger(tagger, data, listener=SimpleListener())[0])
34
Resultat
% 0.03681346709743241
0.03516635062920186
0.03550346479596202
0.03738159675236807
0.03514047598590944
0.03278278278278278
0.037349296012140626
0.03777335984095427
0.03688457105219826
0.034659607908015554
0.03456041576440017
0.03728726588557257
0.03837219306547363
0.038971876825502794
0.03871909340659341
0.03715753424657534
0.03550553956206927
0.03864412426084784
0.032862644415917845
0.03804755944931164
0.035037957787603234
0.03612740989103101
0.03362648732540093
0.03391793514228988
0.03611509577250865
35
Pour la visualisation
import seaborn as sns
import matplotlib.pyplot as plt
data = [float(l) for l in open("scores_subsample=500.txt")]
sns.distplot(data);
plt.xlabel("%erreur")
plt.ylabel("densite")
36
Soit...
37
Analyse
Sur l’evaluation
• beaucoup de variations
• en fonction du corpus, l’erreur varie entre 3,03% et 4,18%
Sur la distribution des erreurs
• la distribution des moyennes est distribuee selon une loi
normale
• central limit theorem
38
Troisieme partie III
Intervalle de confiance
39
Rappel
Sampling distribution
• estimer une valeur (ici : erreur) a partir d’un grand nombre de
sous-echantillons
• � grande � variabilite
• principe du boostraping
A quoi ca sert ?
• que peut-on en deduire sur la � vraie � valeur du parametre ?
• point estimate versus interval estimate
• deux outils statistiques :
• intervalle de confiance
• test d’hypotheses
40
Intervalle de confiance
• µ : valeur estimee a partir d’un echantillon
• µ est une variable aleatoire
• A quel point µ est proche de µ, la valeur du parametre ?
⇒ chercher un intervalle tel que pour 95% des echantillons, µ
sera dans l’intervalle
• en pratique l’intervalle estime sera :
µ± 1.96
√σ2
n
41
Pourquoi ?
• les echantillons sont distribues selon une loi normale
• on peut calculer la constante pour n’importe quelle taille
d’intervalle
42
En pratique : table Z
43
Interpretation
La relation
µ± 1.96
√σ2
n
L’intervalle est d’autant plus grand que
• la taille de l’echantillon est petite
• la variance (a estimer) de la distribution des echantillons est
grande
La notion
• si on estime 100 intervalles de confiance a 95%, 5% ne
contiendront pas la vraie valeur de p
• aucune information sur la distribution de p (c’est une valeur
fixe)44