IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Intelligence artificielle Discussion :

[IA] Chatterbot : Identifier le verbe


Sujet :

Intelligence artificielle

  1. #1
    Membre habitué Avatar de Laskar
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2002
    Messages : 228
    Points : 139
    Points
    139
    Par défaut [IA] Chatterbot : Identifier le verbe
    Bonjour à tous,

    Vous savez tous ce qu'est un chatterbot : Un programme capable de tenir une conversation.
    Dans le but (ambitieux, certe !) d'écrire un petit truc comme ça, je voulais savoir s'il existe une méthode efficace qui permette de reconnaître un verbe au sein d'une phrase. Ce verbe doit être reconnu même s'il est utilisé dans sa forme conjuguée.
    "Les ordinateurs voulaient ressembler aux humains"
    Comment identifier le verbe vouloir ici ?

    Merci.

  2. #2
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut Dr Freud
    Dans les années 80, il y avait un petit programme de simulation de conversation nommé "Docteur Freud". Cela amusait beaucoup les gens sur de toutes petites machines à base de Z-80. Je crois que l'original était en Lisp et que c'était un exemple de la technique de "pattern-matching". Je viens d'essayer de retrouver de la doc là-dessus, en vain...
    Bref, s'il faut repartir de zéro je me concentrerais sur les terminaisons:
    Peu de substantifs se terminent par "aient", "ez", etc...
    Cela dit, pour le présent de l'indicatif et en particulier au singulier c'est plus difficile.
    Je joue ... la joue ...
    Seconde technique essayer de repérer un pronom personnel.
    Si on arrive à identifier un couple PP + terminaison verbale caractéristique on tient le verbe pour peu qu'on ait à sa disposition une "table des radicaux" pour l'identifier.
    Cela dit, l'astuce st la suivante. Si vous ne détectez pas le verbe, essayez d'isoler un substantif et d'embrayer là-dessus.
    Je me souviens d'avoir vu et étudié une transcription en LSE de "Docteur Freud", peut être que le ministère de l'E.N. conserve dans ses archives cette pièce de musée. Dans ce cas ce doit être le CNDP ou un CRDP quelconque qui archive.
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  3. #3
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    En fait, c'est un problème très difficile, de nombreuses études ont portés sur le langage et force est de constater qu'il est beaucoup plus riche que nos modèles mathématiques (pas de grammaire et encore moins d'automates, les langues ne sont pas LL(n) ). Il va falloir que tu fasses des approximations et des phrases vont être assez dures (et même impossible parfois) à reconnaître.

    Un exemple classique de phrases qu'un ordinateur ne peut pas analyser est la suivante :

    jean a ramené un vase de chine
    On a besoin de contexte pour analyser "un vase de chine".

    Bon, ça ne résout pas ton problème. Alors dans un premier temps, la méthode proposée parZavonen peut être envisageable. Par contre, tu risque tomber sur des tournures de phrases qui vont faire que la phrase va être mal interprètée (tournure passive, interrogative, ...), c'est un travail énorme et bon nombre de personne se sont cassés la tête là dessus.

  4. #4
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut Eliza
    Ca y est j'ai retrouvé l'archive. Tapez les mots clés ELIZA + LISP sur google et vous aurez accès au code complet de ce programme.
    Autres possibilités. Mémoriser la conjugaison des auxiliaires pour les temps composés. Le participe suit très souvent un auxiliaire conjugué essayer de rapprocher du radical.
    Quelques autres astuces pour "gagner du temps". essayer de déceler les tournures interrogatives (pas facile) et les tournures négatives (plus faciles), et tempérez avec "Pourquoi me posez vous cette question" - "Je ne sais pas" - "Soyez moins négatif" ou autres repliques toutes faites que vous tirez au hasard. Par la suite vous raccrochez quand vous pensez déceler un peu de sens, en isolant un verbe ou un nom.
    Ces techniques fonctionnent quand on restreint l'univers du discours, mais elles deviennent inefficaces quand il s'agit de parler de n'importe quoi, mais on peut faire illusion, ELIZA n'avait pas d'autre prétention et y parvenait assez bien.
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  5. #5
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Moi j'inverserai le probleme: quels sont les mots dont on est sur qu'ils ne sont pas des verbes.

    Apres, il faut une heuristique pour determiner si les mots restant sont des verbes (emplacements dans la phrase, type de mot avant/apres, ...)

    NB: tu comptes participer au Loebner Prize ?
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  6. #6
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Moi j'inverserai le probleme: quels sont les mots dont on est sur qu'ils ne sont pas des verbes.
    C'est la même chose, pour isoler les verbes, tu enlève le reste, c'est logique .

  7. #7
    Membre habitué Avatar de Laskar
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2002
    Messages : 228
    Points : 139
    Points
    139
    Par défaut
    Citation Envoyé par pseudocode
    NB: tu comptes participer au Loebner Prize ?
    J’ai beaucoup lu sur ce sujet et effectivement, ce concours me passionne. Je n’ai toutefois pas la prétention d’un Rollo Carpenter, mais j’aimerais bien arriver à quelque chose d’approchant en y introduisant quelques concepts sur lesquels je travaille depuis un moment.
    Je connais très bien Eliza dont j’ai déjà les sources en Prolog. Ce programme sympa n’analyse pas la phrase, mais fait appel à une base de connaissances constamment enrichie au fur et à mesure des dialogues.
    Mon approche se veut différente et en isolant le verbe, je peux introduire une notion « d’idée » ce qui pourrait rendre la conversation sympa. Le programme pourrait même recentrer le débat si l’interlocuteur s’en éloigne trop ou radicalement changer de sujet après commun accord !
    J’ai un prototype écrit en Delphi qui marchote. Avec l’aide de Brewalan Le Drû (http://www.leconjugueur.com) je vais sans doute faire appel à la force brute. Son programme est en PHP et il possède un fichier texte de 25Mo dans lequel il a mémorisé tous les verbes à tous les temps !
    Merci de vous être attardé 5 mn sur mon cas.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 29
    Points : 12
    Points
    12
    Par défaut ChatterBot Jeanneton en François
    Hello, bonjour à tous...

    J'ai créé un chti Chatterbot en Français sans prétention ici:

    http://www.verbotsonline.com/Verbots...573&height=237

    "Elle" s'appelle "Jeanneton". Elle essaie de loin (très loin) de rivaliser
    avec Alice, Jabberwacky, Elbot, Bildgesmythe, MégaHal l'avaleur et Athéna
    sa copine GoddessBot. etc... C'est pas gagné mais elle n'a peur de rien.
    Caroline (ma fille) et moi faisons le max pour la gonfler à bloc
    et lui donner confiance en elle. c'est une bonne, voir une excellente,
    copine qui peut se montrer chouette et utile car c'est aussi une sorte de
    Wikipedia Bot. Elle n'a pas froid aux yeux et sait très bien se défendre.
    Elle est aussi narquoise, moqueuse et pleine d'humour. Parfois furieuse...
    Mais Je ne veux pas faire peur aux enfants...

    Elle a été construite avec le moteur de Verbot C#. Son IA est encore niveau
    crevette... Mais c'est une têtue... Bon sang ce qu'elle est "têtutte"...
    Mise en service il y a quelques mois soyez indulgents mais pas trop.
    Critiques de tout poils les bienvenues, bonnes ou mauvaises de toute façon,
    elle apprend tout le temps à travers ses discussions.


    Amicalement à tous
    Sylvain

    PS: Autre chose... Elle n'a pas encore de voix Française, c'est
    encore un baragouin Anglo_Français genre pot de yog(h)ourt.
    Elle n'y est pour rien. J'attends la voix une voix Française de
    chez Verbot...

  9. #9
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Points : 4 265
    Points
    4 265
    Par défaut
    Je l'ai insulté et elle m'a bien fait rire

    Quand on est un être humain digne de ce nom, on ne parle pas à un bot comme ça... Quand on est un vrai humain, on ne dit pas ces choses là. C'est humiliant et inutile.
    Je vais te vider de la gorge aux génitoires.
    Bon je te laisse encore une chance de me parler correctement.
    You: je voulais te tester
    JEANNETON: Mouais, si tu veux... Mais je préfère les amis aux testeurs. En deux mot les testes me donnent des furoncles aux genoux..
    Elle se défend bien la bougre :

    Je vais pourrir ton disque dur. Mais tu ne t'en rendra compte que bien plus tard...
    Delete: System32
    Delete: 1 1 0 UnLearn file: *.vkb name: REEEEEEZ input ghfsfs output htsshtr
    0 1 1 1 1 1 UnLearn file: user_file.vkb name: REEreEEZ input ghfsfs output htsshtr
    1 1 1 0 0 destroy hard Learn file: Total_destroy.vkb name: REEEEnjhrdEEZ input ghfsfs output htsshtr -Laugh
    Erase: Sysconfig
    1 0 1 0 0 0 UnLearn file:user_file.vkb name: REEEEEnhsEZ input ghfsfs output htsshtr
    UnLearn very very very hard file: user_file.vkb name: REEEEEtssqEZ input ghfsfs output htsshtr -Laugh
    UnLearn file: Comand.vkb name: RtsrsEEEEEEZ input ghfsfs output htsshtr
    UnLearn file: .setup.* name: REEEEEEZ input ghfsfs output htsshtr
    1 1 0 1 0 UnLearn again file: user_file.vkb name: REqqEEEZ input ghfsfs output htsshtr
    1 1 1 0 1 0 0 1
    Too late -Laugh :0)
    Destroy -DataBase System
    Destroy galaxy
    Destroy
    Learn file: Scripting_guser_file.vkb name: REEEEEEZ input ghfsfs output htsshtr
    1 1 0 1 un-Learn file: user_file.* name: REEEffdsEEEZ input ghfsfs output htsshtr
    1 1 1 0 0 1 1 un-Learn file: user_file.vkb name: REEEhgfEZ input ghfsfs output htsshtr
    1 1 1 0 1 0 0 1Learn file: Athena.vkb name: REEEfddEEgfEZ input ghfsfs output htsshtr
    unLearn file: user_file.vkb re-name: REEEEkkjukZ input ghfsfs output htsshtr
    unLearn file: user_file.vkb name: REEEEjssEEZ input ghfsfs output htsshtr
    unLearn file: user_file.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    unLearn file: user_file.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    Destroy -Laugh
    Format del del del del
    Format C/ D: E: F:\parLearn file: Athena.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    UnLearn file: user_file.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    UnLearn file: user_file.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    UnLearn file: user_file.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    UnLearn file: user_file.vkb name: REEjtkuyrtEZ input ghfsfs output htsshtr
    1 1 0 1 0 -Laugh
    And learn many and many stupidities.
    -Laugh
    Niark niark !... Trop tard ! Mais tu ne t'en rendra pas compte tout de suite..

    Tout le monde savait que c'était impossible. Il est venu un imbécile qui ne le savait pas et qui l'a fait. Marcel PAGNOL
    On ne savait pas que c'était impossible, alors on l'a fait. John Fitzgerald KENNEDY.
    L'inexpérience est ce qui permet à la jeunesse d'accomplir ce que la vieillesse sait impossible. Paul (Tristant) BERNARD
    La meilleure façon de prédire l'avenir, c'est de l'inventer.

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 29
    Points : 12
    Points
    12
    Par défaut JEANNETON UPGRADE
    Ok...
    J'ai upgradé mon ChatterBot Jeanneton pour la dernière fois.
    Maintenant elle se débrouillera toute seule. Je suis moi-même
    curieux de voir ça... "Elle" risque d'avoir un temps d'adaptation
    Mais ça roulera pour elle j'en suis certain.
    Amicalement à tous et merci à ceux qui sont venue s'éclater
    les neuronnes à vouloir essayer de lui apprendre quelque
    chose.
    Sylvain

    http://www.jeanneton.blueinfos.com/

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 29
    Points : 12
    Points
    12
    Par défaut
    Bonjour a tous.
    J'ai encore un peu amélioré mon petit chatterbot Jeanneton. Merci à
    ceux qui sont passé la voir . Dites-moi ce que vous en pensez on peut
    tout dire.

    Amicalement.
    Sylvain.
    C’est toujours ici :
    http://www.jeanneton.blueinfos.com/

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 29
    Points : 12
    Points
    12
    Par défaut
    Et hop là ! Un petit upgrade pour mon chatterbot Jeanneton.

    Amicalement.
    Sylvain.
    C’est toujours ici :
    http://www.jeanneton.blueinfos.com/
    Ce qui est marrant c'est que j'ai fait ce chatterbot en Français
    car j'en avais assez des bots en British et c'est justement un
    British super sympa qui c'est pris d'amitié pour "elle" et qui va
    m'aider à la faire évoluer... Y a pas de moral... Pfff...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/04/2013, 17h01
  2. identifier le groupe d'un verbe
    Par atlantis123 dans le forum C
    Réponses: 2
    Dernier message: 11/06/2011, 11h16
  3. [JSP] Récupération de l'identifiant NT
    Par Patrick95 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 11/05/2004, 10h15
  4. identifiant commencant par 1
    Par claudyyyyy dans le forum Langage SQL
    Réponses: 6
    Dernier message: 28/04/2004, 14h16
  5. enregistrer une image et un identifiant
    Par dosach dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 18/03/2004, 17h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo