Laurent Godard a écrit :

Est ce que celà ne vaudrait pas le coup dans ce cas de 'deplier' le dictionnaire, faire une appel à revue systematique par des contributeurs (on pourrait croiser) plutot que de modifier des drapeaux au coup par coups (oui, ca represente 650 000 mots, mais on a pu traiter par le passe les 36 000 entrées du dictionnaire de synonymes, donc je pense que c'est jouable)

Là, je ne sais pas. Je ne vois pas en quoi c'est plus simple de procéder
ainsi. Il faut quand même regarder la dictionnaire à la loupe. Travail de titan! J'espère que mon programme 'Savant' s'avèrera plus efficace quand je l'aurai fini...


Le repliage peut se faire par outil type munch/unmunch (je suis preneur de tout outil contribué au projet lingucomponent pour remplacer ceux qui seraient pas bon :-) )

J'ai écrit un programme munch en Python, en avril 2006.
Il fonctionnait bien si on lui donnait des listes séparées en deux
catégories différentes: une liste de verbes et une autre liste pour tout
le reste.
Quand les verbes et le reste étaient mêlés, le résultat était moins bon,
mais bien plus cohérent que ce que faisait le munch déjà existant, du
moins pour le français.


Agnès Souque a écrit :

J'ai bien utilisé le programme munch que vous citez. Je n'en connais
pas d'autre... D'ailleurs, si quelqu'un a mieux à proposer,
je suis preneuse...

Mon programme n'est pas meilleur. Il est écrit spécifiquement pour le
fichier des affixes français actuel. Il n'est pas adapté à ce que vous
faites (ou avez fait), car j'ai dû inclure dans le code tout un ensemble
de cas particuliers spécifiques au fichier des affixes français.
J'en ai parlé ici:
http://fr.openoffice.org/servlets/ReadMsg?list=dic&msgNo=476

Voilà des tests effectués avec le munch de MySpell:
http://fr.openoffice.org/servlets/ReadMsg?list=dic&msgNo=472
Cf. fin de ce mail pour comparer le résultat des mêmes échantillons avec mon programme.

Je ne me suis pas du tout occupé du dictionnaire entre juin et décembre
2006, et j'avoue que je ne me souviens plus très bien où j'en étais dans
l'écriture de munch, qui reste à affiner, et surtout à optimiser pour
"muncher" des gros fichiers, car c'est une usine à gaz, très lente pour
traiter les 642000 entrées du dictionnaire déplié.

Là, je l'ai lancé munch, pour voir, et il tourne depuis 20 mins sur mon
Athlon XP 2600+ 1Go.
En un quart d'heure, il a placé tous les drapeaux u g v c d w x y z p q
possibles qui servent à la conjugaison des verbes. Il a
trouvé 89777 occurrences.
Depuis lors, le programme cherche à éliminer les drapeaux surnuméraires
(cette méthode n'est pas optimisée, et il lui faudra entre 6 et 9 heures pour finir, j'estime). ça prend du temps, car chaque occurence des drapeaux placés est comparée avec tous les autres pour éviter les redondances. (89777x89777 analyses à faire!)
Ensuite, il s'occupera des préfixes pour les verbes : M j n m t l s
Puis des suffixes pour les non-verbes : F G S X
Puis des préfixes pour les non-verbes : C D N P R O W L Q U
Bref, c'est encore bien trop long.

La raison pour laquelle je segmente ainsi les passages, c'est que ça
permet d'éviter bon nombre de confusions et de redondances dans les
drapeaux.

Je reprendrai le développement de munch quand j'aurai fini Savant.
Je suis certain de pouvoir accélérer son fonctionnement, car je ne me
suis presque pas encore occupé de cet aspect, et je pense qu'il fait des
tonnes de tests inutiles (notamment sur la recherche des drapeaux surnuméraires) qu'on peut probablement éviter avec des
heuristiques.
Mais si les sources vous intéressent dès maintenant, je peux les fournir. Le programme a été écrit avec Python 2.4, j'ignore si c'est compatible avec les versions antérieures. Pas de wxPython cette fois, ça devrait tourner sous Linux.


Olivier


PS.

Résultats de munch (version perso) avec les échantillons sur lesquels j'ai testé munch (version MySpell) :

Résultat avec la liste de noms:
14
actrice/G
ardente/F
astrale/G
chats
cheval/X
fraise/S
gentille/F
grecque/F
moi
sèche/F
toi
vendeuse/G
ventail/X
éventail/S


Résultat avec la liste de verbes:
51
contredirai/x
contredire/y
contredis/gw
contredisais/d
contrefaire/y
contrefais/g
contrefaisais/d
contreferai/x
dédirai/x
dédire/y
dédis/gw
dédisais/d
patinai/w
patinais/v
patine/u
patiner/y
patinerai/x
s'aguerrissait/q
s'aguichait/p
s'aguiche/p
s'aidait/p
s'aide/p
s'aigrissait/q
s'aiguille/p
s'aiguillonnait/p
s'aiguillonne/p
souscrirai/x
souscrire/z
souscris/g
souscrivais/v
souscrivis/w
tordais/vc
tordis/w
tordrai/x
tordre/y
tords/u
trairai/Rx
traire/Ry
trais/Rg
tressaillais/v
tressaille/u
tressaillir/y
tressaillirai/x
tressaillis/w
vomir/y
vomirai/x
vomis/w
vomissais/v
vêtir/z
vêtirai/x
vêtis/w

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à