Autour de la stylométrie appliquée à des sources anciennes… 3

Voici le troisième épisode de la série de billets consacrée à la stylométrie. Le deuxième épisode s’est terminé sur la conclusion que le texte oprhelin doit être attribué à Raoul de Caen. Nous allons à présent décortiquer les résultats obtenus par l’ACP en termes de variables, puis estimer l’impact sur ceux-ci d’un paramètre clef de la méthode, le nombre de lemmes à considérer dans chaque paquet de lemmes.

Résultats de l’ACP : les variables

Comme nous l’avons déjà vu, les deux composantes principales que nous avons utilisées pour visualiser nos paquets de lemmes sont des résumés des fréquences associées aux lemmes qui apparaissent dans les textes considérés. Néanmoins, tous les lemmes n’ont pas une importance égale dans ces deux composantes : certains sont très utiles pour expliquer les différences entre nos points (leur contribution est grande), d’autres beaucoup moins (leur contribution est petite).

Le tableau suivant donne les dix contributions les plus importantes :

lemme contribution
et 34.81 %
is 9.73 %
dominus 8.15 %
qui 7.20 %
in 3.74 %
hic 3.57 %
sum 1.85 %
rex 1.15 %
Christianus 1.00 %
se 0.91 %

 

 

 

 

 

Techniquement, ces contributions correspondent à la part de la variance totale à laquelle correspondent les variances des variables considérées (ici, des fréquences centrées de lemmes). Cela signifie donc que la variance du lemme et représente 34.81 % de la variance totale expliquée, ce qui est énorme.

Si ce tableau nous permet d’évaluer l’importance générale de chaque lemme dans l’ACP, il ne dit rien sur l’impact des lemmes. Je m’explique : certes, la fréquence de et est la variable la plus importante, mais comment se retrouve-t-elle sur les deux composantes principales que nous représentons sur nos graphiques en nuage de points ?

Pour répondre à cette question, on peut tracer un graphique de corrélation :

On observe sur ce graphique que la flèche et :

  1. pointe dans la direction positive de chacun des deux axes ;
  2. pointe de manière plus marquée dans la direction (horizontale) de la CP n° 1 que dans celle (verticale) de la CP n° 2 : et contribue plus à la première qu’à la deuxième.

Cela signifie que si un paquet de lemmes possède une fréquence et importante, il sera plutôt situé à droite du graphique (forte corrélation positive de la fréquence et avec la CP n°1, sur l’axe horizontal), et un peu en haut (corrélation positive de la fréquence et avec la CP n°2, sur l’axe vertical1).

Cette conclusion est cohérente avec ce que nous observons sur le nuage de points. En effet, on voit sur celui-ci que les paquets de lemmes de Raoul sont plutôt situés à gauche du graphique, ceux d’Albert plutôt à droite et ceux de Guillaume plutôt au milieu. Or, rappelez-vous, nous avions calculé, dans le premier billet de cette série, les fréquences totales de ce lemme pour l’ensemble de l’œuvre de chacun des trois auteurs :

Raoul de Caen Albert d’Aix Guillaume de Tyr
et 2,91 % 7,49 % 5,41 %

Puisque la corrélation entre la fréquence et et la CP n° 1 est positive, la « hiérarchie » qu’induisent ces fréquences totales (Raoul de Caen < Guillaume de Tyr < Albert d’Aix) se retrouve sur l’axe horizontal du nuage de points1.

L’impact du lemme rex sur les deux CP est de la même nature, même si la taille de la flèche (et donc l’importance de l’impact) est bien moindre :

D’autres lemmes contribuent négativement aux composantes principales, ou à l’une des deux. C’est par exemple le cas de hic :

La flèche pointe dans la direction positive selon l’axe horizontal, mais dans la direction négative selon l’axe vertical. Cela signifie donc qu’un paquet de lemmes dont la fréquence hic est importante est « tiré » vers le bas et vers la droite du graphique. Il n’est pas forcément situé dans le cadran sud-est, parce que tous les lemmes « tirent » le paquet de lemmes dans une direction qui leur est propre. Le lemme hic, qui possède une contribution totale modeste (3.57 %), en tout cas par rapport à celle de et, n’est donc pas « le seul à avoir son mot à dire » (sans mauvais jeu de mots) quant à la position du point en question sur le nuage de points.

Souvent, on représente plusieurs variables/lemmes en même temps sur le graphique de corrélation (ici les 10 lemmes les plus importants en termes de contribution totale, puisqu’afficher les flèches des 8.743 lemmes rend le graphique illisible) :

On trace aussi souvent un biplot, qui est la superposition du nuage de points et du graphique de corrélation :

Ce biplot permet de voir quelles variables ont « tiré » les paquets de lemmes jusqu’à l’endroit où ils sont situés. En particulier, on peut considérer les lemmes des flèches qui pointent dans la direction des paquets de lemmes d’un auteur comme une « caractéristique particulière » de cet auteur. Ainsi, on conclut que, au sein des trois auteurs, Guillaume est celui qui a le plus tendance à utiliser les lemmes dominus, is et qui. Il faut néanmoins rester prudent avec ce genre de conclusions, puisque nous ne prenons ici en compte que dix lemmes, alors que 8743 sont pris en compte par l’ordinateur pour tracer cette représentation.

La taille des paquets de lemmes considérés

Dans les billets précédents, j’ai fait le choix arbitraire de calculer les fréquences de chaque lemme dans des paquets de 2500 lemmes successifs. Que deviennent nos résultats lorsqu’on modifie ce paramètre de l’analyse ?

Augmenter la taille des paquets de mots a deux effets. D’une part, les fréquences qui sont calculées constituent de meilleures estimations de la fréquence d’utilisation générale du lemme par l’auteur, et on peut donc considérer que le résultat est plus précis. D’autre part, le nombre de paquets de lemmes (c’est-à-dire le nombre de points représentés sur le graphique) diminue. En considérant des paquets de 5000 lemmes, on obtient ainsi :

À première vue, la conclusion qu’on peut tirer de ce nouveau graphique semble plus tranchée qu’avant, plus nette. Mais il faut observer ici que le texte orphelin n’est plus représenté que par un seul point, ce qui signifie que nous n’avons plus aucune idée de la variabilité interne des fréquences des lemmes qui le composent. Il n’est donc sans doute pas pertinent de monter jusqu’à 5000 lemmes.

Que se passe-t-il lorsqu’au contraire on diminue la taille des paquets ? Le phénomène est l’inverse de celui que nous venons d’observer : d’une part les estimations de fréquences sont moins précises, d’autre part nous disposons de plus de points. On voit ainsi les trois nuages de points correspondants à nos trois auteurs se rapprocher puis se confondre, lorsqu’on considère des paquets de 1000 lemmes, 500 lemmes, 250 lemmes puis 100 lemmes :

Au fur et à mesure que les groupes de points se rapprochent, la conclusion d’attribution de notre texte orphelin à Raoul de Caen devient de moins en moins convaincante, pour finir par s’effondrer tout à fait !

Il est donc nécessaire de choisir la taille des paquets de lemmes considérés avec précaution : trop grande, elle empêche d’avoir une idée de la variabilité interne ; trop petite, elle ne permet tout simplement pas de conclure. Sur ce sujet précis, le lecteur intéressé consultera l’article de Maciej Eder dont les références figurent ci-dessous.


Dans le prochain épisode, nous verrons d’autres techniques d’analyse stylométrique, qui ne sont, quant à elles, pas liées à la visualisation des paquets de lemmes.

La suite au prochain épisode…

Notes

  1. Cet effet est visible directement parce que la contribution du lemme et est très importante. Pour un lemme dont la contribution est moins importante, l’effet n’est pas forcément visible aussi clairement. (retour a, retour b)

Pour en savoir plus

  • M. Eder, “Does size matter? Authorship attribution, small samples, big problem”, Literary and Linguistic Computing, vol. 30, n° 2, p. 107-121, 2015.

Autour de la stylométrie appliquée à des sources anciennes… 2

Voici le deuxième épisode de la série de billets consacrée à la stylométrie. Nous en étions restés sur un résultat peu satisfaisant et sur la conclusion qu’il était idiot de considérer les fréquences d’apparition de deux mots seulement… mais comment visualiser conjointement les fréquences de 10 mots, de 20 mots, de 150 mots, ou même de l’ensemble des 8743 mots distincts qui apparaissent dans nos quatre textes ?

L’analyse en composantes principales

Heureusement, nous avons à notre disposition une technique statistique pour nous venir en aide : l’analyse en composantes principales (ACP). L’idée de celle-ci est de résumer un grand nombre de variables en un plus petit nombre de nouvelles variables de manière efficace. Le résumé est optimal en termes de l’explication de la variabilité des données sur lesquelles on travaille, c’est-à-dire en termes de l’information que ces données contiennent. Dans le cas qui nous occupe, la variabilité des données est très importante, puisque c’est ce qui permet de distinguer les différents paquets de lemmes les uns des autres.

De plus, le résumé prend une forme particulièrement agréable. En effet, alors que les anciennes variables sont corrélées entre elles, ce qui signifie que l’information qu’elles transportent est « partiellement redondante », les nouvelles variables sont décorrélées entre elles : l’information qu’elles transportent n’est pas redondante.

Pour mieux comprendre comment l’ACP fonctionne, considérons le cas particulier d’un résumé de deux variables en une variable. Ce résumé peut être vu géométriquement comme une projection de l’ensemble du plan (dimension 2) sur une droite (dimension 1). Ainsi, nous partons de deux variables, ici, les fréquences des lemmes et et qui :

Avant toute chose, nous centrons ces variables, c’est-à-dire que nous leur soustrayons leur moyenne, histoire qu’elles soient situées « au centre des axes » ; le nuage de points ne change pas de forme, il est seulement translaté (déplacé) :

Nous pouvons maintenant projeter le nuage de points sur une droite quelconque, de la même manière que le soleil projette l’ombre d’un objet sur un mur. Commençons avec l’exemple d’une projection sur une droite horizontale, plus facile à visualiser :

Les petits carrés oranges constituent la projection des points noirs sur la droite horizontale. On peut donc se débarrasser des deux anciens axes et ne considérer que la droite horizontale sur laquelle la projection a été effectuée :

Celle-ci est une nouvelle variable, qui résume les deux variables dont nous sommes partis. Il est bien entendu possible d’effectuer des projections sur d’autres droites, pas forcément horizontales :

Conceptuellement, les deux projections (la première sur la droite horizontale, la seconde sur la droite à pente positive) sont très similaires. Cependant, elles ne sont pas aussi efficaces l’une que l’autre du point de vue du « résumé de l’information de départ » qu’elles produisent :

Les points de la première projection (à gauche ci-dessus) sont plus espacés que ceux de la deuxième (à droite) : elle a « mieux résumé » l’information de départ (qui consiste en des points présentant des différences entre eux) et elle est donc plus efficace. En termes techniques, la variance des points résultant de la première projection est supérieure à celle des points résultant de la seconde.

Le choix des deux droites présentées ci-dessus est bien entendu arbitraire, et il est possible d’effectuer des projections sur n’importe quelle droite du faisceau de droites du plan :

Quand on a compris l’idée des projections, le principe de l’analyse en composantes principales est clair : cette technique sélectionne la droite qui est optimale en termes de « résumé de l’information », c’est-à-dire en termes de variance des points projetés. Sans rentrer dans les détails techniques, mentionnons simplement que la direction en question est celle du premier vecteur propre de la matrice de corrélation (ou de la matrice de covariance) des données originales.

Dans le cas du nuage de points considéré en exemple, la droite sélectionnée, qu’on appelle première composante principale, est la suivante :

La seconde composante principale est ici la droite perpendiculaire à la première composante principale :

C’est cette seconde composante principale qui transporte « le reste de l’information », que la première composante principale n’a pas capté. On peut quantifier la proportion de « résumé de l’information » transporté par chacune d’elle :

Presque 85% de l’information est donc portée par la première composante. Puisque celle-ci est optimale de ce point de vue, nous sommes assurés de ne pas pouvoir trouver de projection qui transporte plus d’information. Ce pourcentage est très important, puisqu’il nous dit que nous ne perdons que 15% de l’information si nous ne considérons que la première composante et oublions la seconde, c’est-à-dire si nous résumons nos deux variables en une.

Cette première composante principale est une sorte de « mélange » des deux variables de départ. Dans notre cas, pour savoir où un point du nuage de points initial est situé sur la première composante, il suffit d’appliquer la règle

PC1 = -0,93 ∗ freqCentr(et) + 0,34 ∗ freqCentr(qui)

Cette équation exprime en termes mathématiques que PC1 est un mélange (ou, pour être plus rigoureux, une combinaison linéaire) de freqCentr(et) et freqCentr(qui).

Par exemple, le point situé aux coordonnées (-0,84 % ; 1,84 %) dans le système des deux variables de départ (et qui correspond donc à un paquet de mots — ou, pour être plus précis, de lemmes — au sein duquel la fréquence centrée de et est égale à -0,84 % et la fréquence centrée de qui est égale à 1,84 %) sera situé à

PC1 = -0,93 ∗ (-0,84 %) + 0,34 ∗ 1,84% = 1,4 %

sur la première composante principale.

Que se passe-t-il lorsqu’on projette non pas deux variables sur une, mais par exemple trois variables sur deux ? Cette opération est elle aussi aisément visualisable : nous effectuons maintenant la projection d’un nuage de points de dimension trois sur un plan de dimension deux. Par exemple, dans le cas du plan horizontal :

Résultats

L’analyse en composantes principales que nous mettons en œuvre pour effectuer notre analyse stylométrique des récits de croisade est bien plus difficile à visualiser, puisque nous projetons cette fois 8743 variables (c’est-à-dire les fréquences relatives à l’ensemble des lemmes qui apparaissent dans les quatre textes) sur deux variables1 ! Cela signifie donc que nous résumons un espace de dimension 8743 à l’aide d’un espace de dimension 2. Inutile de dire que le processus ne peut cette fois pas être représenté graphiquement.

Néanmoins, on peut représenter son résultat, dans un plan (donc en dimension 2) puisque nous avons choisi de projeter sur deux variables (c’est d’ailleurs la raison de ce choix) :

 

Dans ce cas, la première composante principale porte 27 % de l’information, et la seconde 11 %. Nous avons donc « oublié » 62 % de l’information contenue dans nos données de départ, mais un coup d’œil rapide au graphique ci-dessus permet de se rendre compte que notre but est atteint.

En effet, on voit que, même en négligeant presque 2/3 de l’information de départ, nous pouvons affirmer que les triangles mauves, qui représentent les paquets de lemmes du texte orphelin, sont situés « loin » des disques rouges et des carrés verts, qui représentent respectivement les paquets de lemmes de Guillaume de Tyr et d’Albert d’Aix. Cette observation nous permet de conclure, en faisant l’hypothèse que l’auteur du texte orphelin est forcément parmi les trois candidats-auteurs sélectionnés, que c’est à Raoul de Caen qu’il faut attribuer la paternité de notre fragment-mystère. Et c’est effectivement le cas : pour les besoins de l’exemple présenté ici, j’ai « fabriqué » le texte orphelin en allant piocher quelques chapitres de l’œuvre de ce chroniqueur et en les réunissant sous l’étiquette « auteur inconnu ».

Il me semble nécessaire d’insister ici sur ce qui peut passer pour un détail méthodologique mais qui revêt une importance capitale : nous ne concluons pas que le texte est de Raoul de Caen parce que les triangles mauves sont situés au même endroit que les carrés turquoises, mais bien parce qu’ils sont éloignés des disques rouges et des carrés verts et que notre liste ne compte que trois candidats-auteurs. En effet, comme nous avons perdu une partie de l’information en résumant nos variables, et comme cette information consiste en les différences entre nos points, nous ne pouvons pas nous fier aux similitudes. Deux points situés tout près l’un de l’autre dans le résumé sont peut-être situés loin l’un de l’autre dans les données de départ. Par contre, si deux points sont situés loin l’un de l’autre dans le résumé, ils le sont aussi dans les données de départ. Il est donc bon de garder en tête cette règle d’or de l’analyse en composantes principales :

Avec une ACP, on peut se fier aux dissemblances, mais pas aux similitudes.

On pourrait traduire celle-ci en termes stylométriques :

L’ACP ne permet d’identifier l’auteur d’un texte qu’en éliminant tous les éléments d’une liste exhaustive de candidats-auteurs, à l’exception d’un seul.

Cela implique qu’il est nécessaire de disposer, pour effectuer une attribution stylométrique parfaitement rigoureuse, d’un ensemble d’auteurs potentiels pour le texte étudié, au sein duquel le véritable auteur se trouve forcément. Dans énormément de cas, une telle liste n’existe tout simplement pas, et il faut donc faire preuve de circonspection. J’espère avoir l’occasion de discuter ce point précis sur ce carnet dans le futur.

Dans le prochain billet, nous explorerons certains des « paramètres » de l’ACP que nous avons mise en œuvre ici, comme la taille des paquets de mots considérés.

La suite au prochain épisode…

Notes

  1. Ce choix n’est certainement pas optimal : non seulement il est souvent mieux de choisir un nombre limité de lemmes parmi ceux qui apparaissent le plus fréquemment, mais d’autres critères de choix interviennent aussi, comme la nature grammaticale de ces lemmes. Il est en effet souvent plus intéressant de ne pas considérer les lemmes qui portent un sens en eux-mêmes, comme les noms, les adjectifs, les verbes ou les pronoms, et de se restreindre aux stop words. Nous aurons l’occasion de discuter plus en détails cet aspect de l’analyse dans un billet prochain (retour).

Pour en savoir plus

  • Neat, T. et al, « Surveying Stylometry Techniques and Applications », in ACM Computing Surveys 50, n° 6 (2017), p. 1-36.
  • Stamatatos, E., « A survey of modern authorship attribution methods », in Journal of the American society for information science and technology 60 (2009), p. 538-556.

Autour de la stylométrie appliquée à des sources anciennes… 1

Cette année, j’ai décidé de consacrer quelques billets sur ce carnet de recherche à la stylométrie, dans lesquels je tenterai de me poser certaines questions à propos des tenants et des aboutissants des méthodes qu’on range sous ce terme, avec le point de vue de non-spécialiste qui est le mien.

Avant de discuter d’éléments plus ou moins précis, il me semble utile de donner une présentation générale (mais bien entendu limitée) de ces techniques. Je reprendrai pour ce faire un petit cas d’étude artificiel que j’avais présenté lors d’un atelier co-organisé par le SMCS et le CENTAL, de l’UCLouvain en mai 2018.

Le principe de la stylométrie

La stylométrie est un ensemble de techniques à l’intersection de la linguistique et de la statistique, dont le but est d’identifier le style de documents textuels. Le style d’un texte est caractéristique de son contexte d’écriture au sens large : son auteur, son époque, son « genre », …

La stylométrie tente de montrer qu’un texte est écrit dans un style différent d’une collection d’autres textes. Cette différenciation permet donc, dans une certaine mesure, de déterminer si un « anonyme » a été écrit par un auteur précis, et surtout de déterminer si un texte n’a pas été écrit par un auteur précis… nous allons étudier un tel exemple infra !

La stylométrie est ici appliquée à des ouvrages anciens, mais est aussi appliquée à des textes actuels, comme des emails, des tweets, etc.

Les techniques appliquées aujourd’hui en stylométrie sont variées, et différent notamment par la méthode statistique qui est utilisée (analyse en composante principale, clustering, analyse des réseaux, …) et le « niveau » de discours sur lequel on travaille (caractère, mot, phrase, etc.).

Notons cependant qu’une analyse stylométrique mélange bien souvent diverses méthodes statistiques et plusieurs « niveaux » du texte.

Nous allons dans un premier temps considérer un exemple mettant en œuvre une analyse en composantes principales au niveau lexical (basée sur les mots).

Les débuts

La première trace d’une analyse stylométrique provient d’une lettre du logicien anglais De Morgan au révérend Heald (1851) : pour déterminer si deux passages des évangiles sont du même auteur, il propose de

« déterminer […] si le premier texte est formé de mots plus longs que le deuxième texte. […] Un de ces jours, les écrits apocryphes seront identifiés de cette manière. »

L’idée de comparer les longueurs des mots a été appliquée par le physicien américain Mendenhall en 1887 aux œuvres de Bacon, Marlowe et Shakespeare, sans résultat.

Il a fallu attendre les années 1930 pour que l’étude quantitative du style soit reprise, avec les travaux du linguiste américain Zipf et du statisticien écossais Yule, consacrés aux distributions des fréquences de mots.

Après la guerre, les premiers résultats positifs apparaissent :

  • en 1959, Cox et Brandwood parviennent partiellement à ordonner chronologiquement les écrits de Platon ;
  • en 1962, Ellegärd parvient à écarter plusieurs candidats-auteurs des Lettres politiques de Junius (pamphlets anonymes contre le gouvernement anglais de 1769-1772) ;
  • en 1964, Mosteller et Wallace parviennent à répartir les Federalist papers (publications anonymes de 1787-1788 enjoignant les citoyens américains à ratifier la constitution) entre les trois auteurs Hamilton, Jay et Madison.

Cette dernière étude a convaincu la communauté scientifique de l’intérêt de la stylométrie : elle marque le point de départ d’une série très fournie d’études de textes très divers, souvent passionnantes.

Notons que certaines de ces études ont défrayé la chronique et retenti comme de véritables scandales, notamment à cause de problèmes méthodologiques. J’espère pouvoir revenir sur quelques-unes d’entre elles dans un billet prochain.

Première analyse naïve de fréquence

Considérons à titre d’exemple le problème suivant. Supposons que nous ne connaissons pas l’auteur d’un texte (que nous appellerons « texte orphelin ») qui constitue une partie de récit de la première croisade1.

Nous avons en tête trois candidats-auteurs, qui sont tous les trois des chroniqueurs latins de la première croisade (1096-1099) :

Nom Raoul de Caen Albert d’Aix Guillaume de Tyr
Chronique Gesta Tancredi in expeditione Hierosolymitana Liber Christianæ expeditionis pro restitutione sanctæ Hierosolymitanæ ecclesiæ Historia rerum in partibus transmarinis gestarum
Nombre de mots 28.553 117.179 240.168
Rédaction 1112 – 1118 1125 – 1150 1170 – 1184

Une première idée pour tenter de trancher entre ces trois auteurs est de regarder les mots qui reviennent le plus souvent dans leurs œuvres, et de les comparer avec les mots qui reviennent le plus souvent dans le texte orphelin. Récupérons donc les mots les plus fréquents dans celui-ci :

Rang 1 2 3 4 5 6 7 8 9 10
Mot et in ad nec qui non ut est sed a
Traduction et dans vers et ne pas qui ne pas pour que il est mais par
Fréquence
5,8% 2,5% 1,3% 0,9% 0,8% 0,7% 0,7% 0,5% 0,5% 0,3%

Travailler directement sur les mots n’est cependant pas satisfaisant. On imagine par exemple que le verbe esse, « être », apparaît sous d’autres formes que simplement est (qui correspondent aux autres formes conjuguées), ce qui fausse donc le calcul de fréquence. Les verbes ne sont pas les seuls mots qui subissent une flexion, comme le qui : penser aux noms communs, pronoms, adjectifs, déterminants, …

Le nombre de formes différentes est particulièrement grand en latin, puisqu’il s’agit d’une langue à déclinaisons. Nous devons donc lemmatiser les textes sur lequel nous travaillons (c’est à dire envoyer chaque mot sur sa forme pure, non déclinée ou conjuguée). Avant cela, on tokenise le texte :

Un exemple simple, le mot latin quod, montre que le processus de lemmatisation n’est pas trivial : suivant la place du mot dans la phrase, le « catégoriseur de discours » doit déterminer s’il s’agit du relatif (« lequel »), de l’adjectif (« quelque »), de l’interrogatif (« quel ? »), de l’adverbe (« à ce propos »), de la conjonction (« parce que »), etc. Dans ce cas, le lemmatiseur affecte en général des probabilités aux différentes possibilités.

Pour qu’un lemmatiseur soit efficace pour une langue donnée, il faut l’entraîner sur un corpus de textes déjà lemmatisés, dont les structures grammaticales sont explicitées… construire une tel corpus est un travail monumental ! Pour le latin médiéval, on dispose par exemple de l’Index Thomisticus, qui compte 170.000 tokens pour 9.000 phrases et est basé sur la Summa theologica de Thomas d’Aquin. Mais on imagine aisément des mots qui apparaissent dans certains textes médiévaux mais qui n’apparaissent pas dans la Summa ! Ces mots sont a priori inconnus du lemmatiseur.

Certaines langues sont plus difficiles à lemmatiser que d’autres ; c’est le cas du latin médiéval :

  • certains mots se collent à d’autres, comme le suffixe –que (« et ») et le préfixe se– (renforcement de certains pronoms) ;
  • certaines combinaisons de lettres sont interchangeables, et ce sans aucune cohérence (un même mot peut apparaître sous deux graphies différentes sur une même ligne) :
    ci ↔ ti ch ↔ h ph ↔ f h ↔ Ø
    w ↔ uu ↔ vv ↔ uv ↔ vu i ↔ j ↔ y k ↔ c ↔ ch g ↔ gu

    Le mot chirographum apparaît ainsi sous les graphies alternatives cirographum, chyrographum, cyrographum, chirografum, cirografum, chyrografum et cyrografum ;

  • les textes sont souvent farcis de vernaculaire (par exemple de l’ancien français).

Comme prévu, les résultats diffèrent sensiblement lorsqu’on compare les fréquences des mots et les fréquences des lemmes :

Mot et qui in hic sum ad nec is ille non
Rang après 1 2 3 4 5 6 7 8 9 10
Rang avant 1 5

(qui)

2 19

(haec)

8

(est)

3 4 68

(id)

51

(illi)

6

Il est donc absolument essentiel de lemmatiser le corpus avant d’effectuer des calculs de fréquence !

Nous disposons maintenant de mesures pertinentes de la fréquence d’apparition des lemmes, et pouvons donc comparer notre texte orphelin aux trois textes sources.

Les deux lemmes qui apparaissent le plus souvent sont et et qui :

Raoul de Caen Albert d’Aix Guillaume de Tyr Orphelin
et 2,91 % 7,49 % 5,41 % 3,94 %
qui 2,99 % 2,34 % 3,62 % 3,46 %

Ce résultat ne nous apprend pas grand chose : les statistiques du texte orphelin ne permettent pas de le rapprocher de manière claire de l’un des trois auteurs… La comparaison directe des proportions totales n’est pas satisfaisante !

Elle ne tient par exemple pas du tout compte de la variabilité de ces proportions au sein des corpus considérés. On peut ainsi imaginer que les proportions varient fort au sein des chapitres de chacune des trois œuvres… si c’est le cas, quelle est la pertinence de la comparaison avec la fréquence de l’orphelin ?

Pour tenir compte de cette variabilité, nous pouvons couper les corpus en tranches, et effectuer les calculs de proportion sur chacune d’elles. La taille des tranches doit être bien choisie : si elle sont trop grosses, le problème de variabilité n’est pas résolu ; si elle sont trop petites, la variabilité sera immense et ne signifiera plus grand chose. J’ai choisi ici de grouper les mots par paquets de 2.500.

Nous remplaçons donc une proportion totale :

par les proportions de groupes de 2500 mots :

qu’on peut maintenant comparer pour nos auteurs :

Ce troisième graphe n’est pas très convaincant : les deux points mauves (les paquets de mots de l’orphelin) sont situés à une bonne distance des carrés verts (les paquets de mots d’Albert d’Aix), mais ils sont situés entre les disques rouges (les paquets de mots de Guillaume de Tyr) et les carrés turquoises (les paquets de mots de Raoul de Caen).

Mais la comparaison des fréquences de mots n’a pas dit son dernier mot. Nous n’avons en effet utilisé ici qu’une très faible portion de l’information disponible, puisque nous avons comparé les proportions des deux mots les plus fréquents ! Considérer plus de mots pose toutefois des problèmes… et notamment des problèmes de visualisation : si nous considérons 10 mots, par exemple, comment visualiser les différences entre les corpus, et donc comment espérer effectuer une attribution ? Et pourquoi s’arrêter à 10 mots ? Nous pourrions comparer les fréquences des 8743 mots distincts — ou plutôt des 8743 lemmes distincts — qui apparaissent dans nos textes…

La suite au prochain épisode

Notes

  1. Pour clarifier l’exposé, j’ai considéré ici comme texte orphelin un morceau d’un des trois candidats-auteurs analysés (dont l’identité sera révélée dans le numéro suivant), de sorte que les résultats expriment clairement son attribution. Bien entendu, dans une véritable analyse stylométrique, la paternité du texte orphelin est tout à fait inconnue (retour).

Pour en savoir plus

  • Holmes, D., « The evolution of stylometry in humanities scholarship », in Literary and Linguistic Computing 13, n° 3 (1998), p. 111-117.