Aide à la traduction de l’arménien classique avec DataLift (2)

Pour combler une partie des manques du premier dictionnaire utilisé, j’ai traduit et ajouté le glossaire qu’Antoine Meillet donnait en 1913 à la fin de son fameux Altarmenisches Elementachbuch. J’ai opté pour une structure très simple : le mot et sa définition.

Nous avons donc maintenant 4 jeux de données :

ahv : livre, chapitre, rang, mot
lemme : mot, lemme, analyse
dict : source, uri, mot, prononciation, traduction
meillet : mot, definition

Dans la requête suivante, la clause UNION permet de prendre en compte les deux dictionnaires, les BIND permet de ramener les résultats sur une même variable :

PREFIX P-TEXTE: <http://localhost:9091/project/armenien/source/ahv-csv-rdf-1#>
PREFIX P-LEMME: <http://localhost:9091/project/armenien/source/lemme-csv-rdf-1#>
PREFIX P-DICT: <http://localhost:9091/project/armenien/source/dict-hy-fr-csv-rdf-1#>
PREFIX P-MEILL: <http://localhost:9091/project/armenien/source/meillet-csv-rdf-1#>

SELECT ?rang ?mot ?traduction {
?s1 P-TEXTE:mot ?mot;
P-TEXTE:chapitre "ch1.2";
P-TEXTE:rang ?rang.

OPTIONAL {
?s2 P-LEMME:mot ?mot;
P-LEMME:lemme ?lemme;
P-LEMME:analyse ?analyse.

{ ?s3 P-DICT:mot ?lemme;
P-DICT:traduction ?trad1.
BIND (concat("C: ",?analyse," ",?trad1) as ?traduction)
} UNION
{ ?s4 P-MEILL:mot ?lemme;
P-MEILL:definition ?trad2.
BIND (concat("M: ",?trad2) as ?traduction)
} }

}
ORDER BY ?rang
LIMIT 35

Les 35 premiers résultats sont :

1,արդ,"C: adv. 1) or conj., 2) maintenant adv."
1,արդ,M: (§ 171); tout à l'heure; maintenant; or; donc.
1,արդ,M: -ոյ forme; ornement.
2,իւրով,M: (pass. § 72); sien ; le gén. pl. իւրանց permet de traduire ‘leur’ (§ 76) ; իւր est aussi le gén. du réflexif (§ 76).
3,արեամբն,C: noun.ins.sg.def. sang nm.
3,արեամբն,M: -եան sang; αἷμα.
4,փրկեցելոյ,
5,զմեզ,M: (pronom; § 75); nous.
6,տեառն,"C: noun.gen.dat.sg. maître, seigneur, propriétaire nm."
6,տեառն,M: տեառն instr. տերամբ; nom. pl. տեարք; § 59 h; seigneur; κύριος (habituellement abrévié ՟տր [ պատիւ; § 26; rem. 4]; lorsqu'il s'agit de Dieu – de տի-այր ; cf. տի-կին).
7,եւ,C: conj. et conj.
7,եւ,M: (§ 164); aussi; et; même.
8,տուեալ,"C: verb.pfv.nom.acc.sg. 1) belle-soeur nf. 2) donner, livrer, offrir vt."
9,զհոգին,"C: noun.nom.acc.sg. 1) esprit nm., âme nf., 2) personne nf."
9,զհոգին,M: -ւոյ; -ւով (§ 46); esprit; πνεῦμα (cf. ոգի; §27 C).
10,իւր,M: (pass. § 72); sien ; le gén. pl. իւրանց permet de traduire ‘leur’ (§ 76) ; իւր est aussi le gén. du réflexif (§ 76).
11,փոխանակ,C: noun.nom.acc.sg. au lieu de prép.
11,փոխանակ,M: adv. (avec gén.) à la place de; փլայ (§ 109); je m'écroule; je tombe en ruine (cf. փուլ).
11,փոխանակ,M: emprunt (cf. փոխեմ).
12,հոգւոյս,"C: noun.gen.dat.abl.sg.poss1. 1) esprit nm., âme nf., 2) personne nf."
12,հոգւոյս,M: -ւոյ; -ւով (§ 46); esprit; πνεῦμα (cf. ոգի; §27 C).
13,մերոյ,C: pron.adj.gen.sg. notre adj.
13,մերոյ,M: (adj. poss. § 72); notre.
14,եւ,C: conj. et conj.
14,եւ,M: (§ 164); aussi; et; même.
15,զմարմինն,C: noun.nom.acc.sg. corps nm.
15,զմարմինն,M: մարﬓոյ corps; chair; σῶμα.
16,իւր,M: (pass. § 72); sien ; le gén. pl. իւրանց permet de traduire ‘leur’ (§ 76) ; իւր est aussi le gén. du réflexif (§ 76).
17,փոխանակ,C: noun.nom.acc.sg. au lieu de prép.
17,փոխանակ,M: adv. (avec gén.) à la place de; փլայ (§ 109); je m'écroule; je tombe en ruine (cf. փուլ).
17,փոխանակ,M: emprunt (cf. փոխեմ).
18,մարմնոյս,C: noun.gen.dat.abl.sg.poss1. corps nm.
18,մարմնոյս,M: մարﬓոյ corps; chair; σῶμα.
19,մերոյ,C: pron.adj.gen.sg. notre adj.
19,մերոյ,M: (adj. poss. § 72); notre.


Aide à la traduction de l’arménien classique avec DataLift

Depuis mon dernier post relatif à l’analyse grammaticale automatique de l’arménien classique avec DataLift, j’ai ajouté quelques petits ingrédients pour faire de la traduction. Au final, ce sont donc trois jeux de données que j’injecte dans la plateforme : une tokennisation d’un texte (le début du livre V de la version arménienne de l’Adversus Haereses d’Irénée de Lyon), une base de lemmatisation et un dictionnaire. Les trois sont des aux formats CSV dont les structures sont :

ahv : livre, chapitre, rang, mot
lemme : mot, lemme, analyse
dict : source, uri, mot, prononciation, traduction

La liaison est évidemment faite sur le “mot”. Voici une requête destinée à la traduction des 20 premiers mots du chapitre 1.2 :

PREFIX P-TEXTE: <http://localhost:9091/project/armenien/source/ahv-csv-rdf-1#>
PREFIX P-LEMME: <http://localhost:9091/project/armenien/source/lemme-csv-rdf-1#>
PREFIX P-DICT: <http://localhost:9091/project/armenien/source/dict-hy-fr-csv-rdf-1#>

SELECT ?rang ?mot ?analyse ?traduction {
?s1 P-TEXTE:mot ?mot;
P-TEXTE:chapitre "ch1.2";
P-TEXTE:rang ?rang.

OPTIONAL {
?s2 P-LEMME:mot ?mot;
P-LEMME:lemme ?lemme;
P-LEMME:analyse ?analyse.

?s3 P-DICT:mot ?lemme;
P-DICT:traduction ?traduction.
} }
ORDER BY ?rang
LIMIT 20

Comme vous pouvez le voir, le résultat est une bonne aide :

1; արդ; adv.; "1) or conj.; 2) maintenant adv."
2; իւրով; ;
3; արեամբն; noun.ins.sg.def.; sang nm.
4; փրկեցելոյ; ;
5; զմեզ; ;
6; տեառն; noun.gen.dat.sg.; "maître; seigneur; propriétaire nm."
7; եւ; conj.; et conj.
8; տուեալ; verb.pfv.nom.acc.sg.; "1) belle-soeur nf. 2) donner; livrer; offrir vt."
9; զհոգին; noun.nom.acc.sg.; "1) esprit nm.; âme nf.; 2) personne nf."
10; իւր; ;
11; փոխանակ; noun.nom.acc.sg.; au lieu de prép.
12; հոգւոյս; noun.gen.dat.abl.sg.poss1.; "1) esprit nm.; âme nf.; 2) personne nf."
13; մերոյ; pron.adj.gen.sg.; notre adj.
14; եւ; conj.; et conj.
15; զմարմինն; noun.nom.acc.sg.; corps nm.
16; իւր; ;
17; փոխանակ; noun.nom.acc.sg.; au lieu de prép.
18; մարմնոյս; noun.gen.dat.abl.sg.poss1.; corps nm.
19; մերոյ; pron.adj.gen.sg.; notre adj.
20; եւ; conj.; et conj.

La base de lemmatisation est incomplète, l’utilisation de la clause OPTIONAL est donc bien utile pour faire tout de même apparaître les mots non traduits. Une traduction aboutie de ce passage est : “Donc, le Seigneur nous a sauvés par son propre sang, donnant sa propre Âme pour notre âme, sa propre chair pour notre chair, et”
A suivre…


Analyse grammaticale automatique de l’arménien classique avec DataLift

Je me suis demandé combien de temps cela me prendrait de faire une analyse grammaticale … Ca ne m’a pris que 10 minutes. Voici comment (et vous pourrez vous y essayer aussi).

  1. Installer Datalift, il suffit de télécharger Datalift ici et de le deziper
  2. Vous créez un projet, appelons-le “armenien”
  3. Vous ajoutez la première source, ce sera un texte arménien tokennisé (voir mon post précédent sur la tokennisation de l’arménien). Là j’ai choisi la préface du livre V de l’Adversus Haereses d’Irénée de Lyon (voir le post où je l’ai posté). Avec le tokenniseur, j’ai créé un CSV avec 3 colonnes (chapitre ; rang ; mot). Je l’ai appelé : preface.csv
  4. Vous ajoutez la deuxième source, là j’ai pris mon CSV de lemmisation. Il a 3 colonnes aussi (mot ; lemme ; analyse). Je l’ai appelé : lemmisation.csv
  5. Vous élevez les deux jeux de données pour en faire des sources RDF. Pour l’élévaton de preface.csv, j’ai demandé le changement de type de la colonne “rang” pour que son contenu soit des entiers. J’ai donc obtenu ainsi : preface-csv-rdf-1 et lemmisation-csv-rdf-1
  6. Il ne reste plus qu’à interconnecter. J’ai écrit la requête d’interconnexion suivante :
    PREFIX P-LEMME: <http://localhost:9091/project/armenien/source/lemmisation-csv-rdf-1#>
    PREFIX P-TEXTE: <http://localhost:9091/project/armenien/source/preface-csv-rdf-1#>

    SELECT ?rang ?mot ?lemme ?analyse WHERE {
    ?s P-TEXTE:mot ?mot;
    P-TEXTE:rang ?rang.
    ?s2 P-LEMME:mot ?mot;
    P-LEMME:lemme ?lemme;
    P-LEMME:analyse ?analyse.
    }
    ORDER BY ?rang

  7. J’ai opté pour une sortie en CSV. Je vous recopie les premières lignes

    rang,mot,lemme,analyse
    2,սիրելի,սիրել,verb.pot.nom.acc.loc.sg.
    3,ամենայն,ամենայն,pron.nom.acc.sg.
    5,ի,ի,prep.
    6,չորս,չորք,num.acc.loc.pl.
    7,գիրս,գիր,noun.acc.loc.pl./nom.acc.sg.poss1.
    8,յառաջ,յառաջ,adj.
    9,քան,քան,conj./prep.
    10,զայս,այս (սա),pron.acc.sg.
    11,քեզ,դու,pron.acc.dat.sg.
    12,առաքեալս,առաքել,verb.pfv.acc.loc.pl./nom.acc.loc.sg.poss1.
    13,ի,ի,prep.
    14,մէնջ,մեք,pron.abl.pl.
    15,եւ,եւ,conj.
    17,նոցա,նա,pron.gen.dat.abl.pl.
    18,յայտնի,յայտնի//յայտնել,adj.nom.acc.loc.sg.//verb.pres.3per.sg.pass.
    19,երեւեցելոց,երեւել,verb.pfv.gen.dat.abl.pl.
    20,եւ,եւ,conj.

Et voilà, le tour est joué ! Chaque ligne commence par le rang du mot analysé dans le texte de départ. Vous voyez ainsi que le premier mot n’est pas présent. Cela signifie tout simplement que cette forme du mot n’est pas renseigné dans mon lemmisateur. Le 16e est dans le même cas.

Voilà à quoi peut servir Datalift, dans le monde de la linguistique.

1 Comment more...

Tokenisation de l’arménien classique

Voici un petit programme que j’ai réalisé, il prend en entrée un texte écrit en caractères arméniens (en unicode) et en réalise la tokenisation (ou normalisation), voir mon article sur ce sujet.

Seuls les caractères arméniens sont conservés, c’est-à-dire toutes les lettres minuscules et majuscules ainsi que le paryok ՞ (le point d’interrogation arménien), le badiv ՟ (signe d’abréviation pour les nomina sacra) et les ligatures suivantes : ﬓ, ﬔ, ﬕ, ﬖ, ﬗ et և. Les caractères օ et ֆ apparus après la période de l’Âge d’Or sont aussi pris en compte. Le résultat est un fichier au format CSV dont chaque ligne est formée du nom du groupe de mots découpés, du rang du mot découpé, et du mot découpé. Les éléments d’une ligne sont séparés par le caractère de votre choix, par défaut un point-virgule. Le résultat est affiché, il ne vous reste plus qu’à en faire un fichier CSV. (C’est à vous de choisir le nom du groupe de mots découpés.)

Le fichier CSV peut être lu par le tableur de Libre office, d’Open Office, celui de Microsoft etc.

Lien pour l’outil de tokenisation de l’arménien.


La création de l’Ecole des langues orientales, le 10 germinal an 3

C’est en 1795 que le décret portant sur la création de l’Ecole des langues orientales est publié. Sa lecture mérite le détour.


Préface du livre V de l’Adversus Haereses d’Irénée de Lyon

Voici le texte dans sa version arménienne, tel que publié dans :

KARAPET TER-MEKERTTSCHIAN UND ERWAND TER-MINASSIANTZ,
IRENAEUS GEGEN DIE HÄRETIKER,
BUCH IV U. V, IN ARMENISCHER VERSION ENTDECKT,
LEIPZIG, 1910.

Յանդիմանեցելոց, սիրելի, ամենայն աղանդացն ի չորս գիրս յառաջ քան զայս քեզ առաքեալս ի մէնջ եւ վարդապետանոցացն նոցա յայտնի երեւեցելոց եւ խարխարեցելոց եւ եղծելոց այնոցիկ, որք զանաստուածսն եւ զամբարիշտսն սուտ գիւտս խրատուցն գտին, է ինչ, որ յիւրեանց իսկ յիւրաքանչիւր վարդապետութենէն նոցա, զոր յիւրեանցն թողաք ի մատեանս, եւ է ինչ, որ բանիւ ամենապատիկ ցուցիւք գնացելում եւ ճշմարտութեանն ցուցելոյ եւ երեւեցելոյ քարոզութեանն եկեղեցւոյ, զոր մարգարէքն քարոզեցին, որպէս ցուցաքն, եւ կատարեաց Քրիստոս, իսկ առաքեալքն աւանդեցին, յորոց եկեղեցի ընկալեալ ի բոլոր աշխարհ միայն բարւոք պահելով աւանդէ որդւոց իւրոց եւ խնդրոցն առ ամենեցուն [146 v.] քակտելոցն յաղանդացն մեզ առարկելոց, եւ առաքելոցն ուսման տարածեցելոյ եւ երեւելի եղելոց շատից, որ ինչ միանգամ ի Տեառնէ ի ձեռն առակացն ասացաւ եւ գործեցաւ, յայսմ ի գիրս ի հինգերորդում զբոլոր զիրացն գործ զՅանդիմանութեանն եւ զԵղծմանն Ստանուն Գիտութեանն, յայլոցն եւս մնացելոց վարդապետութենէն Տեառն մերոյ եւ յառաքելական թղթոցն փորձեսցուք զապացոյցն առնել, որպէս պահանջեցեր ի մէնջ, եւ մեք հրամանիդ քո արդանեկութիւն արարեալ վասն եւ ի պաշտաւն բանի դնիլ, եւ ամենաւրինակաբարն մատուցելոց ըստ մերում զաւրութեան քեզ յոլով եւ շատ թոշակ տալ առ հակաճառութիւնս այլաղանդացն եւ շրջել եւ հաւանեցուցանել զմոլորեալսն եւ դարձուցանել յեկեղեցին Աստուծոյ եւ զնորատնկոցն զբարս հաստատել, զի հաստատուն եւ անշարժ պահիցեն զհաւատն, զոր բարւոքն պահեցեալ յեկեղեցւոյ ընկալան, եւ ոչ ըստ միոյ իրաց մի շրջեալք պատրեսցին ի չարէն, ուսուցանել զնոսա եւ հանել ի ճշմարտութենէն փորձեցելոց։ Պէտք լիցին քեզ եւ ամենեցուն, որք պատահիցեն գրոյս այսմիկ, առատաբար շքով եւ երկովք հանդիպել ի մէնջս յառաջագոյն ասացելոցս, զի եւ զենթադրութիւնս զայս գիտասցես, առ [147 r.] որս հակաճառութիւնս առնեմք, քանզի այսպէս ապա եւ աւրինաւորագոյն ընդդէմ ասասցես նոցա եւ ի պատրաստէ առ ձեռն առնուլ ունիցիս զառ ամենեսինսն նոսա հակառակաբանութիւնսն եւ զնոցա զկարծիս հաստատութեան, ի ձեռն երկնային հաւատոցն, իբրու խոտան եւ անպիտան ի բաց մերժեալ, բայց միայնում հաստատնում եւ ճշմարիտ վարդապետին զհետ երթեալ Բանին Աստուծոյ Յիսուսի Քրիստոսի Տեառն մերոյ, վասն առաւել սիրոյն իւրոյ եղելում այս, որ ինչ եմք մեք, զի զմեզ գոլ հաստատեալ յարմարեսցէ զայն, որ ինչ է ինքն։


L’invention du cadran

Avez-vous déjà regardé une horloge ? Oui, certainement. Une horloge avec son cadran, avec ses aiguilles, son pendule … Tout n’est pas visible, en écoutant le tic tac, on perçoit qu’il se passe quelque chose de mystérieux : l’échappement. L’horloge est un concentré de merveilleuses inventions qui s’étalent sur des siècles.

L’une d’elle passe totalement inaperçue, tant elle nous crève les yeux : le cadran lui-même. Qui eut le premier l’idée de représenter le temps qui s’écoule à l’aide du cercle ? Qui eut l’idée de lui donner une longueur en rapport avec la journée, plus exactement avec la demi-journée, le jour et la nuit ?

Quelque soit notre philosophie du temps, linéaire ou cyclique, le temps de la journée est une inlassable ronde. L’invention du cadran rond méritait un coup de chapeau, n’est-ce pas ? De chapeau rond bien sûr.


Unicode : arménien de U+0530 a U+058F (1328–1423)

Caractère (décimal) Décimal Hexa Nom
Ա 1329 0531 ARMENIAN CAPITAL LETTER AYB
Բ 1330 0532 ARMENIAN CAPITAL LETTER BEN
Գ 1331 0533 ARMENIAN CAPITAL LETTER GIM
Դ 1332 0534 ARMENIAN CAPITAL LETTER DA
Ե 1333 0535 ARMENIAN CAPITAL LETTER ECH
Զ 1334 0536 ARMENIAN CAPITAL LETTER ZA
Է 1335 0537 ARMENIAN CAPITAL LETTER EH
Ը 1336 0538 ARMENIAN CAPITAL LETTER ET
Թ 1337 0539 ARMENIAN CAPITAL LETTER TO
Ժ 1338 053A ARMENIAN CAPITAL LETTER ZHE
Ի 1339 053B ARMENIAN CAPITAL LETTER INI
Լ 1340 053C ARMENIAN CAPITAL LETTER LIWN
Խ 1341 053D ARMENIAN CAPITAL LETTER XEH
Ծ 1342 053E ARMENIAN CAPITAL LETTER CA
Կ 1343 053F ARMENIAN CAPITAL LETTER KEN
Հ 1344 0540 ARMENIAN CAPITAL LETTER HO
Ձ 1345 0541 ARMENIAN CAPITAL LETTER JA
Ղ 1346 0542 ARMENIAN CAPITAL LETTER GHAD
Ճ 1347 0543 ARMENIAN CAPITAL LETTER CHEH
Մ 1348 0544 ARMENIAN CAPITAL LETTER MEN
Յ 1349 0545 ARMENIAN CAPITAL LETTER YI
Ն 1350 0546 ARMENIAN CAPITAL LETTER NOW
Շ 1351 0547 ARMENIAN CAPITAL LETTER SHA
Ո 1352 0548 ARMENIAN CAPITAL LETTER VO
Չ 1353 0549 ARMENIAN CAPITAL LETTER CHA
Պ 1354 054A ARMENIAN CAPITAL LETTER PEH
Ջ 1355 054B ARMENIAN CAPITAL LETTER JHEH
Ռ 1356 054C ARMENIAN CAPITAL LETTER RA
Ս 1357 054D ARMENIAN CAPITAL LETTER SEH
Վ 1358 054E ARMENIAN CAPITAL LETTER VEW
Տ 1359 054F ARMENIAN CAPITAL LETTER TIWN
Ր 1360 0550 ARMENIAN CAPITAL LETTER REH
Ց 1361 0551 ARMENIAN CAPITAL LETTER CO
Ւ 1362 0552 ARMENIAN CAPITAL LETTER YIWN
Փ 1363 0553 ARMENIAN CAPITAL LETTER PIWR
Ք 1364 0554 ARMENIAN CAPITAL LETTER KEH
Օ 1365 0555 ARMENIAN CAPITAL LETTER OH
Ֆ 1366 0556 ARMENIAN CAPITAL LETTER FEH
ՙ 1369 0559 ARMENIAN MODIFIER LETTER LEFT HALF RING
՚ 1370 055A ARMENIAN APOSTROPHE
՛ 1371 055B ARMENIAN EMPHASIS MARK
՜ 1372 055C ARMENIAN EXCLAMATION MARK
՝ 1373 055D ARMENIAN COMMA
՞ 1374 055E ARMENIAN QUESTION MARK
՟ 1375 055F ARMENIAN ABBREVIATION MARK
ա 1377 0561 ARMENIAN SMALL LETTER AYB
բ 1378 0562 ARMENIAN SMALL LETTER BEN
գ 1379 0563 ARMENIAN SMALL LETTER GIM
դ 1380 0564 ARMENIAN SMALL LETTER DA
ե 1381 0565 ARMENIAN SMALL LETTER ECH
զ 1382 0566 ARMENIAN SMALL LETTER ZA
է 1383 0567 ARMENIAN SMALL LETTER EH
ը 1384 0568 ARMENIAN SMALL LETTER ET
թ 1385 0569 ARMENIAN SMALL LETTER TO
ժ 1386 056A ARMENIAN SMALL LETTER ZHE
ի 1387 056B ARMENIAN SMALL LETTER INI
լ 1388 056C ARMENIAN SMALL LETTER LIWN
խ 1389 056D ARMENIAN SMALL LETTER XEH
ծ 1390 056E ARMENIAN SMALL LETTER CA
կ 1391 056F ARMENIAN SMALL LETTER KEN
հ 1392 0570 ARMENIAN SMALL LETTER HO
ձ 1393 0571 ARMENIAN SMALL LETTER JA
ղ 1394 0572 ARMENIAN SMALL LETTER GHAD
ճ 1395 0573 ARMENIAN SMALL LETTER CHEH
մ 1396 0574 ARMENIAN SMALL LETTER MEN
յ 1397 0575 ARMENIAN SMALL LETTER YI
ն 1398 0576 ARMENIAN SMALL LETTER NOW
շ 1399 0577 ARMENIAN SMALL LETTER SHA
ո 1400 0578 ARMENIAN SMALL LETTER VO
չ 1401 0579 ARMENIAN SMALL LETTER CHA
պ 1402 057A ARMENIAN SMALL LETTER PEH
ջ 1403 057B ARMENIAN SMALL LETTER JHEH
ռ 1404 057C ARMENIAN SMALL LETTER RA
ս 1405 057D ARMENIAN SMALL LETTER SEH
վ 1406 057E ARMENIAN SMALL LETTER VEW
տ 1407 057F ARMENIAN SMALL LETTER TIWN
ր 1408 0580 ARMENIAN SMALL LETTER REH
ց 1409 0581 ARMENIAN SMALL LETTER CO
ւ 1410 0582 ARMENIAN SMALL LETTER YIWN
փ 1411 0583 ARMENIAN SMALL LETTER PIWR
ք 1412 0584 ARMENIAN SMALL LETTER KEH
օ 1413 0585 ARMENIAN SMALL LETTER OH
ֆ 1414 0586 ARMENIAN SMALL LETTER FEH
և 1415 0587 ARMENIAN SMALL LIGATURE ECH YIWN
։ 1417 0589 ARMENIAN FULL STOP
֊ 1418 058A ARMENIAN HYPHEN
֏ 1423 058F ARMENIAN DRAM SIGN

Quelques techniques d’analyse rapide de textes

Devant un texte, il y a tant et tant de façon de s’y prendre pour le comprendre, y répondre, le résumer, le traduire, etc. C’est le monde du traitement automatique des langues naturelles (TALN). Les techniques sont complexes et réclament des compétences de haut niveau. Mais avant de se lancer à corps perdu dedans, vous pourriez vouloir vous essayer à quelques techniques simples, en tout cas relativement, pour toucher du doigt ce monde du langage naturel. Alors, faisons connaissance avec quelques unes d’entre-elles.

Tokenisation (ou tokenization) ou normalisation

C’est de loin la plus facile ! Elle consiste à consommer le texte et à en réduire tous les mots, quelques soient leurs différentes formes, en jetons (token). Vous pourrez ainsi, par exemple, compter combien de fois un mot donné se trouve dans un texte, ou bien retrouver les textes qui contiennent certains mots en utilisant même les fréquences d’apparition pour donner un peu de pertinence au passage…

Stemming ou racinisation (voire désuffixation)

La précédente techno était trop facile, vous êtes plus fort que ça. Alors, en voilà une autre. La racine d’un mot correspond à la partie du mot restante une fois que l’on a supprimé son préfixe et/ou son suffixe, on trouve alors sa racine. On l’appelle aussi parfois “stemme” du mot. Contrairement au lemme qui correspond à un mot réel de la langue, la racine ou stemme ne correspond généralement pas à un mot réel. Par exemple, le mot marcher a pour radical ou stemme march qui ne correspond pas à un mot réel. Par contre, dans l’exemple de montagne, le radical ou stemme est mont qui lui l’est.

Les algorithmes de racinisation sont de simples algorithmes de manipulation de chaînes de caractères qui dépendent des règles qui identifient les affixes qui peuvent être ôtés (par affixe, on entend préfixe comme suffixe). Ces algorithmes doivent connaître des règles telles que le doublement de la consonne, l’alternance consonantique n/m devant un b ou p, etc. Donc, bien sûr connaître les exceptions. Pour cela, ces algorithmes ont généralement besoin d’un dictionnaire.

L’algorithme le plus connu pour l’anglais est celui de Martin Porter, publié en 1979. Son usage original était la recherche d’information. On trouve des bibliothèques prêtes à l’emploi. Par exemple, celle de www.oleandersolutions.com, basée sur Porter, inclut des raciniseurs (ou stemmers) de l’anglais, du danois, du hollandais, du français, de l’allemand, de l’italien, du norvégien, du portugais, de l’espagnol, du suédois et du russe. Bref, c’est une bonne aide !

Pour en savoir un plus, comme d’hab, il y a wikipedia. Notamment, sur la différence entre lemmatisation et racinisation. Si vous allez sur le site de Jérôme Pasquelin, (Referenceur et Webmaster), vous pourrez essayer son outil de lemmatisation en ligne.

Tagging ou marquage de POS, l’étiquetage morpho-syntaxique

Les POS, ce sont les parties du discours (POS = part of speech). Le marquage des POS consiste à identifier les catégories de mots en restant relativement indépendant de la structure de la phrase. Il existe des moyens assez différents de parvenir à ce résultat. Les étiquettes (tag) sont associées aux mots. Par exemple, la phrase : “Le chien d’Emmanuel chante une mélodie connue” devient “Le/ART chien/NC d’/ART Emmanuel/NP chante/VRB une/ART mélodie/NC connue/PART”.

Le terme consacré, en français, pour cette technique, c’est l’étiquetage morpho-syntaxique. Avouez que ça fait bien. Les outils qui réalisent ce traitement s’appellent des étiqueteurs grammaticaux, ou “POS tagger” en anglais. Autant il en existe beaucoup pour la langue anglaise, autant ils sont difficiles à trouver pour notre langue. Il y a celui du LIA de l’Université d’Avignon.

Ces étiqueteurs grammaticaux prennent donc en entrée un texte brut pour produire en sortie un fichier d’annotations où chaque mot du texte d’entrée est associé à deux entités : son lemme et sa catégorie syntaxique, selon une classification donnée.

Pour continuer dans Wikipedia en français, mais l’article anglais est plus fouillé encore.

Chunking (shallow parsing) ou parsing par morceaux (morcellement)

Il s’agit, avec cette technique, d’identifier les principaux constituant d’une phrase. On ne cherche pas à reconnaître la structure de la phrase ni interne (dans le morceau), ni externe (entre les morceaux). Le morcellement peut donc laisser certaines parties du texte non analysées.

Un morceleur (chunker) est un algorithme qui détermine des séquences de mots, souvent en utilisant le texte étiqueté comme entrée. Les règles de morcellement peuvent être aussi simples que les expressions régulières – d’ailleurs on compare souvent les chunker au analyseur lexicaux des compilateurs. Les chunkers peuvent réaliser des encapsulations, mais en général, sans remonter de beaucoup de niveau. L’article de référence est celui de Steven P. Abney, en 1994 ; il est très compréhensible.

En conclusion

Ces techniques sont abordables, vous en conviendrez. Vous les avez déjà rencontrées, sans le savoir, dans les chat bots, ces programmes capables de dialoguer avec un usager en langue naturelle sur des sujets de nature générale ou bien sur des sujets ayant trait à un domaine particulier. Le premier chat bot, ELIZA, a été réalisé par J. Weizenbaum en 1965. Aujourd’hui, on les trouve dans des applications socio-ludiques sur l’Internet, comme les agents de conversation dans des sites où ils répondent à des questions dans un domaine bien spécifique.

Ils peuvent être utilisés dans des applications très ciblées où le vocabulaire et la syntaxe sont très contraints : commande vocale de machine outils ; commande de téléphone mobile ; langage militaire, etc. Un autre usage vient aussi de ce qu’il s’agit aussi d’un moyen simple permettant de faire un premier profilage. A vous de trouver votre cas d’usage !


Du statut de la langue et de la traduction dans les médias

Lorsqu’une personne s’exprime dans sa langue – une langue autre que la nôtre – et que les médias nous en rendent compte, il nous est donné une traduction. Pour le lecteur, il y a alors une quasi absence de conscience d’un original. Pour l’auditeur ou le téléspectateur, il en va un peu différemment. Il entend souvent un petit quelque chose de ce que dit la personne mais sa voix est couverte par la traduction avec un niveau sonore supérieur.

Nous ne pouvons, trop souvent, accéder aux différences entre le dire original et sa traduction (à l’exception de quelques mentions et notes de traduction laissées intentionnellement en bas de page dans les journaux ou revues). Pour celui à qui l’on donne une traduction, la parole, la voix, l’expression ne sont pas celles de celui qui s’exprime mais celles du traducteur. Il les reçoit avec le statut d’original et pourtant, nous savons bien qu’il n’en est rien. Si bonne soit la traduction, elle fait écran.

Dans notre espace mondialisé, pourquoi les médias ne donnent-ils pas un accès à l’original et à la traduction ? Nous sommes de plus en plus nombreux à parler plusieurs langues, a minima l’anglais imposé dans nos écoles. Je rêve qu’un jour, au moins sur France Culture, on puisse entendre les personnes s’exprimer dans leur langue et qu’après – et non en simultané – on ait la traduction. Nous pourrions alors entendre cette tension irréductible entre nos langues, cette tension si riche et enrichissante.


  • Catégories

  • Calendrier

    December 2014
    M T W T F S S
    « Mar    
    1234567
    891011121314
    15161718192021
    22232425262728
    293031  
  • Archives

  • Copyright © 1996-2010 Blogabriel. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress