Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1212 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  Parser du texte dans la langue française.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Parser du texte dans la langue française.

n°2055531
Profil sup​primé
Posté le 09-02-2011 à 16:15:53  answer
 

Bonjour,
Je me suis casser les dents sur ce problème simple à plusieurs reprise.
Je fait appel à la communauté pour m'aider à traiter ce problème.
Je désire traiter des phrases de la langue française un peu réduite.
Selon les conditions suivantes, j'effectue diverses opérations :
 
1)Les mots son séparés par :

  • l'apostrophe ou
  • la virgule + une espace ou
  • une espace ou
  • une espace + un point-virgule + un espace ou
  • un trait d'union

Et
2)Les mots peuvent être construits avec :

  • l'apostrophe ou
  • une espace ou
  • un trait d'union

Et
3)Les phrases commençantes par une majuscule.
Et
4)Les phrases terminent par :

  • un point ou
  • un point d'interrogation ou
  • un point d'exclamation

Et
5)Les groupes de mot commençants par une majuscule sont traiter spécialement.
 
Voilà, je souhaitais votre avis pour traiter ce problème.
Merci à tous.

Message cité 1 fois
Message édité par Profil supprimé le 09-02-2011 à 16:32:04
mood
Publicité
Posté le 09-02-2011 à 16:15:53  profilanswer
 

n°2055585
breizhbugs
Posté le 09-02-2011 à 20:24:57  profilanswer
 

Bonjour,
http://geai.univ-brest.fr/~cardot/ [...] ode52.html
la deuxième partie semble être assez intéressante (les grandes étapes...)
 
aussi en lisant http://alma.univ-nantes.fr/modules/S3IA070 tu trouveras quelque mot clé...
il me semble d'après mes vagues souvenirs de cours que l'on essayait d'abord de définir la grammaire d'une phrase et en lisant les mots on essayait de les caser dans différentes catégories (verbe, sujet complément...) (et ca permet d'écarter certains mots parasites pour ne garder que les mots clef!)
sinon au lieu de dire "les mots sont séparés par des (...)" ont peut aussi se dire que "les mots sont une suite de lettres". Plus facile pour les découper dans une phrase.
ensuite certains mots exceptions comme "aujourd'hui" peuvent être mis dans une base de données qui va nous servir a vérifier si le mot est correct.
enfin dans mes souvenirs, on utilisait aussi beaucoup des statistiques il me semble!


Message édité par breizhbugs le 09-02-2011 à 20:32:10

---------------
Seul Google le sait...
n°2056136
rufo
Pas me confondre avec Lycos!
Posté le 11-02-2011 à 15:12:06  profilanswer
 

Pour info, y'a une base de donnée en GPL qui s'appelle Lexique.org. On y trouve plus de 120000 mots de la langue française avec des stats dessus, leur fonction grammaticale, lemme, phonétique (dans le bon sens et à l'envers)...
 
Je m'en sers pour un algo sémantique de calcul de proximité entre documents basé sur LSA (cf wikipedia) ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2056139
Profil sup​primé
Posté le 11-02-2011 à 15:18:51  answer
 

bonjour breizhbugs, encore merci breizhbugs.
 
je m'attendait plutôt à un "tant que faire" ou un truc du genre pour commencer un dialogue.
 
En fait il me semble que tu me renvois à de la théorie sur la cognicité, alors que je veux juste une boucle pour effectuer d'autre opération, en vue d'un traitement connexioniste.
 
Qu'en penses tu ?

n°2056141
Profil sup​primé
Posté le 11-02-2011 à 15:27:14  answer
 

Bonjour rufo. Merci rufo.

n°2056159
Profil sup​primé
Posté le 11-02-2011 à 16:24:05  answer
 

En fait, c'est tellement un problème pour moi, que je ne sais même pas, a priori, c'est pas possible, faire la différence entre une lettre et un autre caractère.
 
Je suis avec Ada...

n°2056176
antac
..
Posté le 11-02-2011 à 17:16:49  profilanswer
 

Les expressions régulières existent aussi en ADA ;)

n°2056207
Profil sup​primé
Posté le 11-02-2011 à 18:57:24  answer
 

antac a écrit :

Les expressions régulières existent aussi en ADA ;)


 
Ah oui, pas mal comme idée, je vais étudier. Merci antac !

n°2056208
breizhbugs
Posté le 11-02-2011 à 19:03:46  profilanswer
 


 
J'en pense pas grand chose dans la mesure ou quand tu dis "Je désire traiter des phrases de la langue française un peu réduite", le "traiter" est tellement abstrait que je ne savais pas vers quel direction t'envoyer, alors je me suis contenter de t'envoyer vers la présentation des cours que j'ai eu en maitrise (et dont je n'ai plus grands restes!)
Tout ce que je me souviens c'est que l'on cherchait a étiqueter chaque mot d'attribut(genre, nombre, fonction...) de façon a chercher à établir des relation entre les mots et que pour cela on essayais de trouver la grammaire du langage étudié (donc le francais).
 
le traitement connexioniste ne me disant rien, je ne peux t'aider plus!
 http://www.persee.fr/web/revues/ho [...] _11_1_2294


---------------
Seul Google le sait...
n°2056430
Profil sup​primé
Posté le 13-02-2011 à 14:49:05  answer
 

bonjour breizhbugs,  
 
Oui, je comprend que tu ai pu trouver l'expression abstraite.
C'est parce que je n'ai pas su dire quel type de traitement je désire faire.
Techniquement, je suis dans la cat algo, et je veux séparer les lettres des autres caractères, et encore, pas tout le temps ; Je doit ajouter les mots dans un dictionnaire et mettre les phrases avec la ponctuation dans une liste (la ponctuation étant préexistante dans le dictionnaire).
Je ne veux en aucun cas analyser la sémantique du texte ici.
 
Cependant, c'est vrai que vu le nouveau lexique de Lexique.org, je peux éliminer les constructeur.

mood
Publicité
Posté le 13-02-2011 à 14:49:05  profilanswer
 

n°2056440
Profil sup​primé
Posté le 13-02-2011 à 16:40:54  answer
 

En fait j'ai une fonction avec Ada, qui me dit si le caractère est une lettre ou pas.
Je croyais que cette fonction retournais faux pour les caractères accentués au-delà de 127.
Voila, alors, j'avais réduit l'alphabet en entrée.
Du coup je vois les chose en plus grand... Enfin, pas moi... La machine.

n°2056473
breizhbugs
Posté le 13-02-2011 à 20:11:35  profilanswer
 

:hello:  
Mouais, si je te parlais de grammaire, c'est que je faisais l'analogie avec l'analyse d'un langage de programmation et que pour moi un mot en français s'analysait de la même façon qu'un identifiant en C par exemple, c'est à dire avec des règles précises. Et qu'analyser toute une phrase pouvait servir a différencier un nom d'un adjectif d'un verbe pour les mots dont ces formes sont identiques! (Mais peut être que cela ne t'es pas utile!)
Bref si tu es content avec ta fonction, c'est cool  :sol:


---------------
Seul Google le sait...
n°2061156
Profil sup​primé
Posté le 04-03-2011 à 13:00:30  answer
 


 
 
Bonjour finalement, je me retrouve avec le problème initial.
j'ai cru que la base de donnée Lexique avait changée mais il n'en ai rien.
Je me retrouve à devoir vérifier l'orthographe du texte entré dans mon programme grace à un au Lexique mais celui-ci comprend des mot construit avec des séparateur.
 
Je me demande commen procéder.

n°2061167
rufo
Pas me confondre avec Lycos!
Posté le 04-03-2011 à 14:24:05  profilanswer
 


 
Attends, faut pas bosser avec le fichier txt! Moi, j'ai fait un script en php pour importer dans une table Mysql le contenu (j'ai gardé les mêmes colonnes). Comme ça, c'est bien plus rapide pour retrouver un mot, son lemme ou effectuer tout autre traitement ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2061176
Profil sup​primé
Posté le 04-03-2011 à 15:12:45  answer
 

J'ai fait un arbre binaire avec la première colonne du fichier Lexique3.txt.
 
Et je ne sais pas comment faire pour reconnaître, par exemple, le mot "a jeun".
 
Les Lemme et les graphèmes, j'y comprend rien, je sais même pas ce que c'est.

n°2061236
rufo
Pas me confondre avec Lycos!
Posté le 04-03-2011 à 17:28:25  profilanswer
 

lemme = forme "initiale" du mot.
Pour les verbes, c'est la forme infinitive
Pour les noms communs, c'est le masculin singulier
Adjectif -> au masculin singulier
...
 
Si tu travailles sur le traitement naturel des langues, ça serait bien que tu te documentes sur les notions de base de la linguistique (taxonomie, sémantique, ontologie...) ;)


Message édité par rufo le 04-03-2011 à 17:29:31

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2061248
Profil sup​primé
Posté le 04-03-2011 à 19:48:16  answer
 

Merci pour l'info rufo,
 
Donc, oui, je suis un peu hermétique en ce moment. Mais donc, en plus j'ai raison de prendre la première colonne, je veux le lemme accordé ou conjuguer. Tel qu'on l'écrit quoi. Et c'est ce qu'il faut que je reconnaisse.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  Parser du texte dans la langue française.

 

Sujets relatifs
[PHP] Comment parser un XML sans racine ?Parser un fichier BibTex pour l'insérer dans une bdd MySQL
déterminer le nombre de lignes d'un fichier texte[résolu] texte pas affiché après code JavaScript de sous-titrage
Comment appliquer un style de police à du texte contenu dans scriptphpouverture fichier texte
Modifier des capsules de texte sur une image en ligneVBA Excel : Question simple, Textbox stocke des nombres en texte
uControleur PIC export fichier texte[CSS] Texte qui centre après chargement
Plus de sujets relatifs à : Parser du texte dans la langue française.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR