Derniers journaux de Duncan_Idaho :
- [23/06@10:59] [question] Logiciel de reconnaissance de l'écriture manuscrite libre
- [10/04@19:49] Cherche balladeur numérique de mes rêves
- [15/08@18:55] [solution] Ubuntu et problème de DMA
- [30/05@18:08] Je vous présente mes excuses...
- [16/01@19:08] Sortie de ETF
- [12/01@13:58] Recherche base de donnée lexicale
- [22/12@10:55] Défaçage en série
- [20/07@12:59] Come on baby run Linspire...
- [29/06@09:35] Table ronde : L'accès public aux TICs et leurs usages à Nantes
- [29/04@11:34] Fluxbox Roulaize
- [22/04@23:25] Touche qui ne fonctionne plus sous X
- [09/03@15:58] Un éditeur de texte pratique, léger...
- [16/02@17:08] Peut pu voter ?
- [22/01@19:40] système de courrier et filtrage.
- [18/01@13:40] console a la quake
- [09/11@16:35] conversion Ogg vers MP3
- [10/10@10:11] Indisponibilité de flonix
- [12/09@07:04] \o/ Free Roulaize \o/ Neal Stephenson Roulaize \o/
- [25/08@13:30] Distribution gnu/Linux Simplissime
- [03/07@22:16] Des nouvelles de Nantes
Journal : Google livre ses N-Grammes !
Posté par Duncan Idaho (Jabber id, page perso, ) le 13 août 2006il semble que la question du traitement automatique du langage intéresse quelques personnes ici (correcteur grammaticaux, thésaurus...) alors je me permet de relayer cette information que j'ai reçu il y a quelques jours.
http://googleresearch.blogspot.com/2006/08/all-our-n-gram-ar(...)
All Our N-gram are Belong to You
Si vous n'avez aucune idée de ce qu'est un N-gramme, il y a un article (largement améliorable) sur wikipédia : http://fr.wikipedia.org/wiki/N-gramme
En gros, partant d'une unité textuelle (caractère, mot, phrase) on retient les n-séquences différentes et leur probabilité. Par exemple, on sait qu'en français, le bi-gramme (n-gramme de niveau 2) le plus fréquent est la séquence "de". Ceci informe, lors d'un traitement automatique, sur la lettre la plus fréquente apparaissant après un "d".
Application : vous programmez un logiciel de reconnaissance de l'écriture, vous reconnaissez « mond* », avec « * » un caractère très mal reconnus, le logiciel hésite entre "e" et "l". Muni des n-gramme, il proposera certainement le choix "e" car "dl" est un bigramme très rare (bon, dans la vraie vie le logiciel dispose d'un dictionnaire qui va lui proposer "monde", qui existe, plutôt que "mondl", qui n'existe pas).
Bref, c'est une ressource assez précieuse mais pas nécessairement facile à constituer (il n'est pas évident de récolter des corpus fiable, bien constitué, voir http://fr.wikipedia.org/wiki/Corpus#Le_corpus_dans_la_scienc(...) ). Google propose ici à la communauté scientifique :
We processed 1,011,582,453,213 words of running text and are publishing the counts for all 1,146,580,664 five-word sequences that appear at least 40 times. There are 13,653,070 unique words, after discarding words that appear less than 200 times.
En gros : plus d'un milliards de 5-gramme (énorme !), le tout sur 6 DVD...
> Lire le journal (10 commentaires, moyenne: 3,5).
Sympa.
J'aime beaucoup le
All Our N-gram are Belong to You
Voir http://fr.wikipedia.org/wiki/All_your_base_are_belong_to_us
Blahmatic
J'ai codé recement quelque chose dans cette idée : ça s'appelle blahmatic, et c'est une généralisation du pipotron.
Concrètement: pendant la phase de lecture, après avoir découpé la phrase en mots, il associe à chaque paire de mots consécutifs un troisième.
Ensuite, la phase de génération consiste à prendre deux mots qui étaient en début de phrase et à leur associer l'un des mots qui a suivit le couple, et ainsi de suite jusqu'à une fin de phrase.
Par exemple avec les phrases
"Iksaif aime les vaches.", Iksaif aime les chamos., "Le chat aime les souris." et la regexp [[:space:]]
Blahmatic pourrait générer
Iksaif aime les vaches. (Iksaif aime)->les, (aime les)->vaches
Iksaif aime les souris. (Iksaif aime)->les, (aime les)->souris
C'est sous GPL, y'a une interface SuckingDisplayLibrary, une en ligne de commande et un fichier LisezMoi qui explique tout (notement le principe du wrapper que j'ai utilisé pour ne pas avoir à subir l'API de la susnommée SDL).
Le code se veut lisible et documenté, le coeur du programe (grammar.c) ne fait que 256 lignes, et y'a même un port windows qui va bientôt être ejecté du code source.
Manque plus qu'un corpus adapté, je reconnais n'avoir pas trop cherché...
Mangez-en ! http://vleu.net/blahmatic/blahmatic.tar.bz2 (si y'en a que ça interesse, je peut présenter plus précisement l'implémentation)
J'allais oublier l'exemple :
J'en arrive maintenant au point qui est le même pour la 3D , avec une fenêtre impossible à fermer sans passer par un "Bonjour" , et se terminer par une formule de politesse comme "Merci d'avance" .(généré par ./blahmatic langs/sdz/ --talk)
Respect à RMS.
-
[^]Re: Blahmatic
Posté par chimrod (Jabber id, page perso, ) le 13/08/2006 à 14:06. (lien). Évalué à 4.C'est le principe des chaînes de markov[1] appliquées à la génération de phrases.
Il existe de nombreux projets qui sont basés la dessus, nottamment en ce qui concerne les bots parlant sur IRC, comme par exemple magahal[2] qui est assez avancé ou encore benzo[3] qui est juste un script python illustrant la chose.
Je suis aussi en train de plancher là dessus, puisque je suis en train de reprendre le code de PyBorg[4] et je compte modifier le processus de réponse pour qu'il utilise ce principe... Je n'avais pas connaissance de ton projet, mais je compte aller y faire un tour pour voir comment tu gère tout ça !
Quoi qu'il en soit, c'est assez instructif de voir comment tout cela fonctionne ! :)
[1] : http://fr.wikipedia.org/wiki/Cha%C3%AEne_de_Markov#Exemple:_(...)
[2] : http://megahal.alioth.debian.org/
[3] : http://benzo.sourceforge.net/
[4] : http://rezal404.org/wikini/wakka.php?wiki=PyBorG--
It is no bug, it's future-
[^]Re: Blahmatic
Posté par Nicolas Boulay () le 16/08/2006 à 08:24. (lien). Évalué à 8.Vos boots seraient capables de loguer un chan IRC et de ressortir des réponses donnés à des questions plus anciennes ?
En gros le bot log les chat sur un chan d'aides par exemples, et lorsqu'une question est posé ou lui est posé, il réponds en fonction de phrase donné dans le même contexte dans le passé.-
[^]Re: Blahmatic
Posté par Duncan Idaho (Jabber id, page perso, ) le 22/08/2006 à 11:34. (lien). Évalué à 2.A priori non. Enfin ça n'est pas impossible, mais ça n'est sans doute pas la meilleure approche.
En revanche, l'idée est intéressante (et pas si difficile que ça je pense), le plus dur étant la récolte de questions/réponses.-
[^]Re: Blahmatic
Posté par Nicolas Boulay () le 23/08/2006 à 09:35. (lien). Évalué à 2.Non la récolte est facile. Il suffit que le bot log le chan en cours. C'est souvent toujours les memes question qui reviennent. Cela revient à créer une faq automatique.
-
-
-
-
[^]Re: Blahmatic
Posté par Corentin Chary (page perso, ) le 13/08/2006 à 19:01. (lien). Évalué à 4./me n'aime pas les chamos
--
Vive les Sugus !§
[+] Premières utilisations
Si j'ai bien compris, on va pouvoir accéder à ces n-grammes depuis son nokia-770 et pouvoir commander, sans se tromper, son pain au chocolat en 15 langues !
Autre utilisation : Participer à La Roue De La Fortune et faire parcourir des kilomètres de bonnes réponses à la belle Victoria Silvted !
La mort est un phénomène naturel qui se produit par l'avalement répété de petites quantités de salive au cours d'une grande période de temps. - George Carlin
Licence ?
J'ai rapidement regardé l'annonce, mais je n'ai pas vu de détails sur les conditions d'utilisation.
Ce serait encore mieux si on peux intégrer/utiliser cette base (ou une partie) dans des softs libres.

Les journaux sont destinés à des informations qui ne sont pas suffisamment intéressantes
pour être validées en dépêche (sinon n'hésitez pas à proposer votre information en
dépêche), qui sont sans rapport avec Linux ou le libre, ou simplement pour donner votre
avis. Si vous désirez poser une question, merci d'utiliser 

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.