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

  FORUM HardWare.fr
  Programmation
  Ada

  [Ada][cybernetic] intégrer le système : approche neurale du problème.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Ada][cybernetic] intégrer le système : approche neurale du problème.

n°2279363
Profil sup​primé
Posté le 13-04-2016 à 14:02:35  answer
 

Bonjour, ce sujet est d'abord connexe à celui de l'appelle de fonction par entrée en chaîne de caractères.
Comme il s'agit d'un projet avec Ada, et ma question étant sensiblement pondérée par le fait qu'il en soit ainsi, j'ouvre ce sujet pour éviter les multiple fils sauf spécialement peut-être.
 
Pour le moment donc, les sources actuelle sont lisible au lien indiqué dans le sujet sus-cité ou ici.
Je souhaite à présent intégrer une vue du process par le biais de l'exploitation d'un réseau de neurones artificiels qui dans un premier ou second temps devra répondre au besoins suivants :
 
- dialogue entre réseau de neurones et utilisateur humain dans un langage proche d'un ou plusieurs langages naturels.
- imagination des classe : c'est à dire interprétation des argument dans un langage proche "   "   "  "  ".
 
C'est déjà ça de formulé. Reste à développer !
 
Je ne connais pas bien les réseaux de neurones artificiels mais je les utilise depuis plusieurs années, toujours satisfait.
Le problème ne réside pour le moment pas dans l'implémentation d'un tel process, mais en sont exploitation.
Hors, j'ai déjà implémenté un agent de dialogue basé sur ce principe, il me reste à l'intégrer en vérifiant la seconde contrainte, l'imaginattion...
 
L'imagination, ça me parait plus corsé :
 
Si j'entre  : "l'énergie consommée par un chassis de masse 100kg avec une ou plusieurs roue circulaire de 13" de rayon, .... etc" ;  
Je doit obtenir un objet ou un système (un objet contenant d'autre objets), ou un processus correspond à l'argument entré, et la fin du programme applé ; Avec un beau message "Mission accomplie". Je plaisante mais pourquoi pas.
 
A moins que ce ne soit que discursif, je sort ça maintenant, mais un discours ne constitu pas toujours une construction.
A ce moment ci on se contente de coller les attributs aux classes concernées, par contre il faut mettre à jour chacun des systèmes en correspondance.
 
Voilà, je crois que j'ai l'essence.
Je ne sais pas si je suis suffisement clair pour me coucher et reprendre l'idée énoncée plus tard.
 
Donc, j'aurais voulu savoir, si vous pouvez réagir sur ma formulation de mon problème, si il est relativement compréhensible ? ou si vous avez une correction à apporter ou une complétion pour parfaire cet organisme cybernétique. Merci.


Message édité par Profil supprimé le 13-04-2016 à 14:06:02
mood
Publicité
Posté le 13-04-2016 à 14:02:35  profilanswer
 

n°2279385
Profil sup​primé
Posté le 13-04-2016 à 16:10:45  answer
 

Voilà alors, je ne suis pas encore couché.
 
J'ai trouvé, ce que je cherchais, soit le lieux et l'endroit ou écrire le nouveau bout de code qui va bien.
 
En fait j'ai enrichit le type Human_Object_type avec un type tache qui fera l'interface entre le system (l'administrateur et les utilisateur) et "le gestionnaire du réseau de neurones".
que l'on va appeller avec une nouvel méthode pour l'objet Human_Object_Type nommée Logos que l'on poura appeller du client de l'interface human_interface_type.
 
Après il faut que je reflechisse :  
 
1 -- du français pour retourner du français  
2 -- du français pour retourner un pseudo code compatible avec l'implémentation du cyborg ;
3 -- du cyborg language pour retourner du français.
 
Genre : je mange une pomme, doit retourner tu manges une pomme.
Puis : tu mange une pomme -> une méthode pomme.manger(Homme);
Puis : Homme.manger -> "tu as manger 1 pomme et 2 poires".  
 
Aprsè avoir exécuter univers.elements.fusion (homme, pomme).
 
En gros hein. Resta à.
 
Des avis sur le sujet à chaud ?
 
J'ai mis à jour le code sur le site mais vous pouvez trouver la version précédente soit la 0.1.5 sur sourceforge, project cyborg www :  sourceforge.net/projects/cyborg-project/


Message édité par Profil supprimé le 13-04-2016 à 16:41:17
n°2279418
Profil sup​primé
Posté le 13-04-2016 à 19:44:59  answer
 

Je poursuie mes idées...
 
Je redessine de travail à faire en 4 points pour intégrer l'effet d'une action sur le système.
 
Je vais avoir 4 actions que je defini ainsi :
 
- action neurologique du langage L
  input string language L
  output string langage L
 
- action correlation du langage L et l'environnement virtuel orienté objet.
  input langage L
  output Objet décrit par le langage L
 
- action systématique des Objets dans leurs environnement virtuel orienté objet.
  input (environnement, Objet, Methode, parameters);
  output Pseudo langage proche du langage L.
 
- action Fin
  input Pseudo langage proche du langage L.
  output Pseudo langage proche du langage L.
 
 
                                                                                                     hello localghost ! (action4) bonjour Manuel.
                                                                                                   /
par exemple : avec bonjour (action1) bonjour (action2) hello (action3)  
                                                                                                   \ (feedback ?)
                                                                                                     Manuel dit bonjour : Univers.Cyborg.Hello_Count := Univers.Cyborg.Hello_Count + 1.

n°2279476
h3bus
Troll Inside
Posté le 14-04-2016 à 15:25:50  profilanswer
 

- AI  [:yann39]  
- Phrases inconpréhensibles  [:yann39]  
- Ada  [:yann39]  
- Projet farfellu  [:yann39]  
 
 [:el_barbone:1]


---------------
sheep++
n°2279477
TotalRecal​l
Posté le 14-04-2016 à 15:30:04  profilanswer
 


Evident [:kyllman] !
Je savais que ce style me disait quelque chose en lisant juste les deux premières phrases mais je n'avais pas reconnu.  
Skynet est en marche...
Impatient de voir la suite :love:


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2279482
Profil sup​primé
Posté le 14-04-2016 à 19:17:01  answer
 

Bonjour, tiens puisque vous êtes là,
Je cherche pourquoi j'ai multiple fois un ! et un ? dans le fichier qui est écrit alors qu'ils ne devraient s'y trouver qu'une seule fois chacun avec cette fonction :
 

Code :
  1. Glossary_Filename : Unbounded_String := To_Unbounded_String("data/lexique.txt" );
  2.  
  3. function String2input(Line : in String) return Input_Type is
  4.      Input : Input_Type := (others => 0.0);
  5.      Code : Code_Type;
  6.      
  7.      Top, Index : Natural := 0;
  8.      Done : Boolean := False;
  9.      Item : Natural := 0;
  10.      
  11.      
  12.      Lexique : Ada.Text_Io.File_Type;
  13.      
  14.      
  15.   begin
  16.      if Line'Length = 0 then
  17.      Done := True;
  18.      end if;
  19.      Top := Line'first;
  20.      
  21.      loop
  22.      exit when Top > Line'Last or Item >= Max_Words-1;
  23.      if (Top >= Line'Last) then
  24.         begin
  25.            Code := Code_Of(Keyword(Line(Top..Line'Last), Words));
  26.            for J in Code_Type'Range loop
  27.           Input(((Max_Words-Item)-1)*Code_Type'Length+J) := code(J);
  28.            end loop;    
  29.            exit;
  30.         exception
  31.            when others =>
  32.           Words_Glossary.Add(Line(top..Line'last), Key_Count(Words), Words);
  33.           Open(Lexique, Append_File, To_String(Glossary_Filename));
  34.           Put_Line(Lexique, Line(top..Line'last));
  35.                   
  36.           Close(Lexique);
  37.           Code := Code_Of(Keyword(Line(Top..Line'Last), Words));
  38.           for J in Code_Type'Range loop
  39.              Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  40.           end loop;    
  41.           exit;
  42.         end;
  43.      end if;
  44.          
  45.      for cur in Top..Line'Last loop
  46.         
  47.         if Is_Control(Line(Cur)) then
  48.            null;
  49.         
  50.         elsif Is_Graphic(Line(Cur)) then
  51.           
  52.            if Is_Digit(Line(Cur)) then
  53.           begin
  54.              --Put(Line(Cur..Cur));
  55.              Code := Code_Of(Keyword(Line(cur..cur), Words));
  56.              for J in Code_Type'Range loop                  
  57.             Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  58.              end loop;    
  59.              Item := Item + 1;              
  60.              Top := Cur;
  61.              exit;
  62.           exception
  63.              when others =>                  
  64.             --Put("Exception 1 " & Line(Cur..Cur));
  65.             
  66.             Words_Glossary.Add(Line(cur..Cur), Key_Count(Words), Words);
  67.             Open(Lexique, Append_File, To_String(Glossary_Filename));
  68.             Put_Line(Lexique, Line(Cur..Cur));
  69.             Close(Lexique);
  70.         
  71.             Code := Code_Of(Keyword(Line(cur..Cur), Words));
  72.             for J in Code_Type'Range loop
  73.               
  74.                Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  75.             end loop;    
  76.             Item := Item + 1;
  77.             Top := Cur;
  78.             exit;              
  79.           end;
  80.           
  81.            elsif Is_Special(Line(Cur)) then
  82.       case Line(Cur) is
  83.              when '+' | '[' | '{' | '(' | ',' | ';' | ' ' | '?' | '!' |
  84.                ''' | '@' | '#' | '&' | '\' | '/' | ':' | '-' | '.' |
  85.                '%' | '*' | '$' | '=' | '_' | ')' | '}' | ']' | '<' | '>'  =>
  86.             if Cur > Top then
  87.                begin
  88.                   --Put(Line(top..Cur-1));
  89.                   Code := Code_Of(Keyword(Line(top..Cur-1), Words));            
  90.                   for J in Code_Type'Range loop
  91.                  Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  92.                   end loop;    
  93.                   Item := Item + 1;
  94.                   Top := Cur;
  95.                exception
  96.                   when others =>
  97.                  --Put("Exception 2" & Line(top..Cur-1));
  98.                  Words_Glossary.Add(Line(top..Cur-1), Key_Count(Words), Words);                  
  99.                  --Put_line("open file" );
  100.                  Open(Lexique, Append_File, To_String(Glossary_Filename));
  101.                  --Put_line("put_line in file" );
  102.                  Put_Line(Lexique, Line(top..Cur-1));
  103.                 
  104.                  Close(Lexique);
  105.                  --Put_line("file closed" );
  106.                  Code := Code_Of(Keyword(Line(top..Cur-1), Words));
  107.                  --Put_line("code ok" );
  108.                  for J in Code_Type'Range loop
  109.                     Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  110.                  end loop;    
  111.                  Item := Item + 1;
  112.                  Top := Cur;
  113.                  --Put_line("ready for next word." );
  114.  
  115.                end;       
  116.             end if;
  117.             begin
  118.                --Put(Line(Cur..Cur));
  119.                Code := Code_Of(Keyword(Line(cur..cur), Words));
  120.                for J in Code_Type'Range loop
  121.                   Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  122.                end loop;    
  123.                Item := Item + 1;              
  124.                exit;
  125.             exception
  126.                when others =>                  
  127.                   --Put("Exception 3" & Line(Cur..Cur));
  128.                   
  129.                   Words_Glossary.Add(Line(cur..Cur), Key_Count(Words), Words);
  130.                   Open(Lexique, Append_File, To_String(Glossary_Filename));
  131.                   --Put_Line(Lexique, Line(cur..Cur));
  132.                   Close(Lexique);
  133.         
  134.                   Code := Code_Of(Keyword(Line(cur..Cur), Words));
  135.                   for J in Code_Type'Range loop
  136.                 
  137.                  Input(((Max_Word-Item)-1)*Code_Type'Length+J) := code(J);
  138.                   end loop;
  139.                   Item := Item + 1;
  140.                   Top := Cur;
  141.                   exit;              
  142.             end;              
  143.              when others =>
  144.             null;
  145.           end case;
  146.       
  147.           
  148.            end if;
  149.         end if;        
  150.      end loop;
  151.     
  152.      Top := Top + 1;
  153.     
  154.      end loop;
  155.      return Input;
  156. end String2input;


Message édité par Profil supprimé le 14-04-2016 à 19:19:06
n°2279489
Profil sup​primé
Posté le 14-04-2016 à 20:25:30  answer
 

En fait j'ai une exception levé dans la condition du premier if qui fait péter le rtraite exception à chaque fin de ligne.
Je sais pas pourquoi pour le moment, j'ai bien mon ? ou ! dans le glossaire, bref. Merci en tout cas.
 
Ah ouis, il y a Max_Words avec un s au lieux de Max_Word sans s, c'est peut-être ça qui fait...


Message édité par Profil supprimé le 14-04-2016 à 20:27:21
n°2279494
Profil sup​primé
Posté le 14-04-2016 à 21:22:53  answer
 

J'ai intégrer une exploitation d'un réseau de neuronnes pour la première action.
 
Alors ça ce complique un peu plus pour l'action 2 devant modéliser l'objet du discours du langage L, je veux à présent puisque de toute manière se sont deux machines qui communique, exécuter le code résultant sur le client avec l'environnement du client, et avoir un retour sur le serveur.
 
Je crois que ce sera pas mal pour le moment.
 
Je reviens dans 10ans. :D

n°2279507
Profil sup​primé
Posté le 15-04-2016 à 01:25:57  answer
 

Je vais travailler sur un shema simple !
Je constuirai sur le model.
 
Dans un premier temps, puisque j'ai modéliser un homme comme un nom et un solde, je vais essayer de faire en sorte que lorsuqe je lui demande sont solde il réponde exactement le crédit ou le débit au cent près.
 
localhost quel est ton solde ?
localghost mon solde est débiteur de 2.0 €.
 
Alors ça implique beaucoup de chose, que je n'ai pas encore analysé/implementé.
 
C'est chaud hein !
 
Je reformule les actions :  
 
neurologique :

quel est ton solde ?


mon solde est une variable de mon environnement


 
Aprsè peut-être passer l'entrée et la sortie pour aller chercher le résultat dans l'environnement.
 
env : (name, solde);
 
function to_be (input : in string; output : in string) return string.
 
Quoi qu'il en soit je vais être aubligé de parser du français pour manipuler l'environnement. Peut-être plus formel cependant [:powa]
Sans compter toute la machinerie qui va avec, tout ça pour chaque classe... Bref Je vais réflechir.
 
A+

n°2279518
Profil sup​primé
Posté le 15-04-2016 à 09:52:28  answer
 

Bonjour,
Si vous êtes matinal, et que vous trouvez ce sujet intéressant voir pationnant voici ce que je viens de faire :
Il s'agit de pouvoir modéliser des induvidus qui évolue dans des environnements différents mais j'ai du mal à poursuivre mon commentaire.
Chaque cyborg poura être client/serveur d'un autre cyborg, chaqun pouvant refleter l'autre ou s'identifier relativement à sont environnement.
 

Code :
  1. with Libroot.Es.Abstracts.Classified.Date_Object;
  2. use Libroot.Es.Abstracts.Classified.Date_Object;
  3. with Libroot.Es.Abstracts.Classified.Text_Object;
  4. use Libroot.Es.Abstracts.Classified.Text_Object;
  5.  
  6. package Libroot.Es.Abstracts.Objects.Environments is      
  7.      
  8.   type Environment_Type;
  9.  
  10.   type Environment_Access is access all Environment_Type'Class;  
  11.  
  12.   type Environment_Array_Type is array (Natural range <> ) of Environment_Access;
  13.  
  14.   type Variadic_Array_Access is access Variadic_Array_Type;
  15.  
  16.   type Environment_Elements_Array_Type is array (Natural range <> ) of Variadic_Array_Access;      
  17.  
  18.   type Environment_Type(Max_Elements : Positive) is tagged
  19.      record
  20.         Elements : Environment_Elements_Array_Type(0..Max_Elements) := (others => null);
  21.      end record;                  
  22.  
  23.   type Univers_Type(Max_Environments : Positive) is tagged
  24.      record    
  25.         Environments : Environment_Array_Type(0..Max_Environments) := (others => null);
  26.      end record;
  27.  
  28.   type Univers_access is access all Univers_Type'Class;  
  29.            
  30. end Libroot.Es.Abstracts.Objects.Environments;


Un environnement est un tableau variable construites à partir d'une liste d'objets divers comme une chaîne de character un integer ou un boolean qui portera donc un nom dans autre objet chaîne de character et qui aura une valeur connue sous forme de chaine de character mais aussi sous ça forme virtuelle.
Ainsi on poura tout modéliser et nommer les choses.
 
Reste les actions ....
 
Et dans l'objet Human_Object_Type qui est un type privé :

Code :
  1. type Human_Object_Type is new Human_Type with
  2.      record
  3.         Univers    : Univers_Access := new Univers_Type(Max_Environments => 500);
  4.         Thread     : Human_Thread_Type(Human_Object_Type'Access);
  5.      end record;


(J'ai initializé à 500 mais je n'ai pas encore exécuté, donc prudence.)
 
L'univers va remplacer la variable attributs du type Human_Type dérivé ici.
 
un peutit bout de code pour initializer l'univers :

Code :
  1. Univers    : Univers_Access :=
  2.           new Univers_Type '
  3.           (500,
  4.            (1 => new Environment_Type '
  5.              
  6.               (2, (0 => new Variadic_Array_Type '
  7.                      (new Text_Object_Type ' (Text => new String ' ("name" )),
  8.                       new Text_Object_Type ' (Text => new String ' ("" ))
  9.                      ),
  10.                    1 => new Variadic_Array_Type '
  11.                      (new Text_Object_Type ' (Text => new String ' ("sodle" )),
  12.                       new Text_Object_Type ' (Text => new String ' ("0.0" ))  
  13.                      ),
  14.                    2 => null
  15.                      
  16.                   )
  17.               ),
  18.             others => null));


Message édité par Profil supprimé le 15-04-2016 à 10:23:34
mood
Publicité
Posté le 15-04-2016 à 09:52:28  profilanswer
 

n°2279570
Profil sup​primé
Posté le 15-04-2016 à 20:38:07  answer
 

Bonjour, ou bonsoir,
 
 
Le programme est enrichie de deux nouveaux thread pour une communication client/serveur pour manipuler chacun des environnments respectifs.
Soit du côté client pour manipuler les donnée du cleint et côté serveur pour manipuler les donnée côté serveur.
par donnée, je parle de d'un environnement concernant le client et un univvers concernant le serveur.
On a deux connexions établies entre un client et un serveur ; Une ligne de commande et une ligne de traitement de donnée.
 
Reste la manipulation de donnée et la mise en correlation du réseau de neurones avec la manipulation de donnée.
A+


Message édité par Profil supprimé le 15-04-2016 à 20:39:02
n°2279577
Profil sup​primé
Posté le 16-04-2016 à 18:26:03  answer
 

Bonjour,
Je suis à la recherche d'un colaborateur pour tester cyborg en connexion distant.
Pour le moment j'exploite en local.
Je cherche donc quelqu'un avec Gnu/Linux, le programme n'étant pas porté sur MS, avec un compilateur GNAT, avec qui je pourais tester une connexion distante.
Il est préférable d'avoir un nom de domaine sur la machine hote de cyborg ou une addresse fixe.
Normalement vous pouvez d'hors et déjà vous connecdter à 88.189.147.62.
Le programme utilise les ports 7851 et 7852.
 
Merci pour vortre contribution.

n°2279662
Profil sup​primé
Posté le 18-04-2016 à 20:29:08  answer
 


 
 
 
Tu ne comprends pas que c'est toi qui est à la ramasse ?
Instuis toi !
 
 
Bonjour,
 
Le truc avance.
Je suis en questionement concernant le traitement du langage naturel ou pas pour modéliser les objets.
Je me demande si le mieux ne serait encore un réseau de neurones artificiels.
 
Admettons que je manipule une base de données.
Comment passer des sorties du réseau à l'action intra programme sur un univers OO ? ou une requête sur une base de données ?
Le mieux ou un truc qui va bien ?
 
Vous feriez comment ?
 
 
Je flood et pourtant un seul message ! What else.

Message cité 1 fois
Message édité par Profil supprimé le 18-04-2016 à 20:41:54
n°2279716
rufo
Pas me confondre avec Lycos!
Posté le 19-04-2016 à 14:22:30  profilanswer
 

h3bus a écrit :

- AI  [:yann39]  
- Phrases inconpréhensibles  [:yann39]  
- Ada  [:yann39]  
- Projet farfellu  [:yann39]  
 
 [:el_barbone:1]


Je l'avais déjà reconnu sur son topic de sa fonction en rapport avec une chaîne de caractères saisie :D Style inimitable ! La tournure que prend ses topics aussi : souvent ça se termine avec des posts où Jovalise se répond à lui-même. :/


---------------
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°2279717
h3bus
Troll Inside
Posté le 19-04-2016 à 14:27:31  profilanswer
 

Nempêche que c'est instuctif, surtout quand on est à la ramasse :o


---------------
sheep++
n°2279718
rufo
Pas me confondre avec Lycos!
Posté le 19-04-2016 à 14:34:22  profilanswer
 


Jovalise, il me semble que je t'avais déjà fait cette remarque : tu pars souvent sur des algos foireux, reposant sur aucun base théorique pour des domaines qui sont pourtant forts complexe (IA et traitement naturelle du langage).
D'autant plus que ces sujets ont fait de grosses avancées ces dernières années. Tu devrais te familiariser avec les algos de ces 2 domaines. L'analyse LL, ça te parle, par ex ? Le machine learning ?
Au passage, pour gérer un dialogue en langage naturel entre un humain et une machine, c'est pas avec un simple PC (même un bien musclé) que tu y arriveras. Pas assez de puissance de calcul ni de stockage :o Faut bien en avoir conscience.


---------------
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°2279719
Profil sup​primé
Posté le 19-04-2016 à 14:35:17  answer
 

h3bus a écrit :

Nempêche que c'est instuctif, surtout quand on est à la ramasse :o


 
Toi tu discute avec rufo je te rappelle le reglement :

[02] Ce forum bénéficie d'une fonctionnalité d'envoi de messages privés.
 
    Utilisez celle-ci si votre message se destine à une personne en particulier (par exemple une réclamation auprès d'un modérateur).

n°2279720
Profil sup​primé
Posté le 19-04-2016 à 14:36:28  answer
 

rufo a écrit :


Jovalise, il me semble que je t'avais déjà fait cette remarque : tu pars souvent sur des algos foireux, reposant sur aucun base théorique pour des domaines qui sont pourtant forts complexe (IA et traitement naturelle du langage).
D'autant plus que ces sujets ont fait de grosses avancées ces dernières années. Tu devrais te familiariser avec les algos de ces 2 domaines. L'analyse LL, ça te parle, par ex ? Le machine learning ?
Au passage, pour gérer un dialogue en langage naturel entre un humain et une machine, c'est pas avec un simple PC (même un bien musclé) que tu y arriveras. Pas assez de puissance de calcul ni de stockage :o Faut bien en avoir conscience.


 
A priori tu ne comprends pas, je t'ai fait signe dans une autre topic, aurevoir.

n°2279721
Profil sup​primé
Posté le 19-04-2016 à 14:45:44  answer
 

Bonjour,
 
Je reformule mon problème ici pour aigueiller un peu le sujet.
 
On se trouve dans un environnemlent orienté objet pour du traitement du langage naturel.
Si vous connaissez un peu les base de la cybernetique, le sujet ici, la cybernetique se défini en 4 points :
 
- la liaison,
- la régulation,
- la finalization,
- la reproduction.
 
Ceci devant modéliser un système de la classe des système en 10 niveau nous nous intérésson ici aux système à imagination c'est tout l'objectif de mon programme.
 
Donc nous somme dans un environment objet, on resoit des requête dans un lanange L et nous devons modéliser le discours.
L'apprentissage, puisque rufo en parle constitu une phase importante pour l'adaptation ou pas d'un système à sont environment.
C'est pour cette raison que je travaille avec un réseau de neurones pour dans un premier temps apprendre bètement un langage.
Dans un second temps donc, j'envisage d'utiliser un second réseau de neurones pourcette fois modéliser l'objet du dialogue entre l'homme est la machine via un environnment programmer dans une orientation objet,
Mon problème ici est de passer des sortie du dis réseau soit un langage M à la manipulation des objets intra programme.
Peut-être est-ce fastidieux au quel cas on fera appel à l'informatiique pour effectuer le travail final.
Mais ici, c'est une question d'analyse et de décision aux quelle je souhaite aboutir.
 
Merci pour votre compréhension, le sujet est ouvert à chacun dans le respect des regle du forum.
 

n°2279725
TotalRecal​l
Posté le 19-04-2016 à 14:59:57  profilanswer
 


 
Je crois qu'il cherche sincèrement à être sympa avec toi et t'aider à t'améliorer, ce qui démontre chez lui une patience impressionnante.  
Ce n'est pas très malin d'envoyer bouler la seule personne qui accorde de l'intérêt à tes divagations (vu qu'à l'évidence il t'a lu). Tu devrais y penser. Dans le respect des règles du forum :o.


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2279726
Profil sup​primé
Posté le 19-04-2016 à 15:01:25  answer
 

Ah !
 
rufo alors pardon.
 
Poursuis j'ai mis à jour !

n°2279737
h3bus
Troll Inside
Posté le 19-04-2016 à 15:38:19  profilanswer
 

Perso je me moque mais je trouve le sujet très intéressant.
 
Tu veux traiter un ensemble très complexe en le divisant en tâches plus simples.
 
Hors ces tâches plus simples sont déjà d'une complexité énorme; Je prends l'exemple de la reconnaissance de language naturel:  
Effectivement Apple/Google (pour ne citer qu'eux) se basent sur les réseau de neurones pour leurs produits. Ils ont dépensé (et dépensent encore) des sommes faramineuses dans les labos de recherche sur ces sujets et ne font qu'effleurer du doigt le passage du langage au concept.
Et pour l'apprentissage de leurs réseaux ils ont des fermes de machine GPGPU.
Dans ton cas il va te manquer:
- L'architecture du réseau neuronal
- Les bases de données pour son apprentissage
- La puissance de calcul pour son apprentissage
 
Et ce n'est qu'une partie infime du problème épineux que tu te poses.
 
Enfin bref, c'est beau de ne pas s'avouer vaincu devant la complexité d'un problème, mais il faut au moins en avoir une vison réaliste.


---------------
sheep++
n°2279738
Profil sup​primé
Posté le 19-04-2016 à 15:41:32  answer
 

- Et !
Par politesse mais sur un fil qui n'exista pas en réalité, fait très attention à ta prochaine requête !

n°2279739
TotalRecal​l
Posté le 19-04-2016 à 15:45:43  profilanswer
 


Quoté pour la postérité. Qui sait, peut être qu'un jour la science trouvera un sens à cette phrase ?


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2279742
Profil sup​primé
Posté le 19-04-2016 à 15:49:31  answer
 

Pour répondre mais autrement parce que je suis pas venu détruire ce que je construit !
 
L'architecture de neuronne je l'ai c'est pas ce qui manque.
Mon programme n'a pas besoin de base de donnée pour apprendre les donnée ça sert pas à enseigner mais à manipuler des fonction.
La puissance de calcule, ben lvraiment, je suis pas pressé. Ch (C) Switzerland 2016

n°2279750
rufo
Pas me confondre avec Lycos!
Posté le 19-04-2016 à 16:07:51  profilanswer
 

Un programme d'IA sans BD contenant son apprentissage (donc ce qui permet de donner des valeurs aux aux différentes entrées de chaque neurone du réseau), tu vas pas aller bien loin :/
 
Pour la puissance de calcul, quel intérêt si ton programme fournit une réponse dans plusieurs semaines voire mois (années ?) quand un humain lui pose une question ou lui adresse un message. L'utilisateur se sera barré bien avant d'avoir la réponse...
 
As-tu conscience du volume de calculs qu'un programme d'IA un minimum évolué doit faire (a fortiori s'il fonctionne en langage naturel) :??:


---------------
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°2279774
Profil sup​primé
Posté le 19-04-2016 à 19:57:45  answer
 

Bon c'est vrai que je ne par pas de rien.
J'ai pas besoin de puissance, je compte sur la maitrise.
 
 
D'abord mon cyborg est au moins un compatible IBM PC, ce qui n'est pas rien pour le moment, j'espère investir dans un super dans quelque année, après fortune pour terrasser le manque de sens de la vie.
 
C'est mon objectif m'implémenter dans une machine.
 
C'est de la projection, au jourd'hui j'apprend à programmer, des programme des hommes des ia. Et oui, j'en suis pas à ma première.
 
Un réseau de neuronne de quelque centaine de noeud et peut-être plus puissant que toi, je comprends que tu n'arrive pas à prendre conscience de la simpliciter de la vie par le fait qu'un processus respect un principe et des procesus des règles.
La société, c'est complexe, mais bon, en étudiant ça s'explique.
L'ia, c'est pas une affaire de ... je peux y passer des heure à vous expliquer l'innexplicable ça ser à rien je préfaire programmer.
Savoir !
C'est une affaire de vittesse d'ouverture et de fermeture des entrée et sorties d'un flux énergétique.
Voilà !
What else !
 
On parle bien d'électronique la, de communication, de langage, de morphose, ... bref le prédicat c'est on.
Si vous êtes pas d''accord vous pouvez le dire.
Mais moi, je préfaire poser des question !
Si tu veux rufo on fait ton analise ou l'analyse de ce que tu as.
J'observe ce que tu fais ! Merci de rester courtois et reativement, humble, on as tous des connaissance on as tous un cerveau, ne prends pas les autre pour des ignorant.
Je connais pas mal de chose en info depuis 25 ans. et j'ai d'otre bagage.
Mais surtout, j'ai une idée, un objectif des moyens, une volonter de l'energie et du temps.
ça me fait jouir et lorsque je jouie, je me transforme, et les transformation successive me font penses des réagir dans ce stupide univers !
Avec l'info, j'espère mettre de l'odre pour rester un Homme droit
 
signature tiens : c'est localghot (C) alias Manuel De Girardi.

n°2279776
Devil'sTig​er
Posté le 19-04-2016 à 20:08:26  profilanswer
 

http://stream1.gifsoup.com/view5/4783457/comme-un-prince-o.gif

n°2279777
Profil sup​primé
Posté le 19-04-2016 à 20:16:09  answer
 

[:dawa_neowen]
 
 
Je suis perdu entre h2hub et rufo, je suis perdu dans le dialogue en plus y en a un qui m'a énervé... Bref,
 
D'ésolé si c'est décousu pour l'internaute.
 
Bref, ouias h3hub, t'as raison.
 
Mais t'as toute l'idée maintenant.
Si non je poursuis je philosophe depuis dix ans sur la cyb, la société, l'ia, les technologies d'ia, je suis pas au courant de ce que vous faite j'analise avec Ada, c'est tout.
 
Je vous aime bien....
[:powa]

n°2279781
Profil sup​primé
Posté le 19-04-2016 à 20:41:20  answer
 

Ah oui !
 
Ah non !
 
En fait h3bus, si tu te souviens j'ai travailler sur un programme qui ce compile lui même, je trarvaille sur un programme qui s'exécute lui même, et sur un qui se programme lui même, Archman ou gnuarchman exactement fait partie de ce projet enfin les deux programme cyborg et archman sont un seul projet.
 
Archman est sensé être l'interface originale, et cyborg l'environnment du peer process, ... L'utilisateur.
A ça doit s'agouter la partie edition des sources du système de compilation.
 
L'environnemt est donc la modélisation d'un discours OO.
C'est l'objet de l'imagination qui est une procédure sur l'environnment.
Archman permetra de relier l'homme à la l'environnment. c'est la liéaison dans la cybernetique.
La partie exécution est celle de la régulation des ouverture, puisque je suis là, des entrées et sortie des flux énergétique.
Ca prend de l'énergie, si non ça ne fonctionne pas.
C'est ce qui fait que c'est piloté. D'habitude c'est l'homme qui est piloté par l'environnement, La comme on inverse le mécanisme, c'ests l'environnment l'hote de la cible dans le système de compilation, qui est piloté. L'homme reste donc piloté, mais change de corp si je puis dire. C'est une question d'équivalence des élémant naturel de la morphose de l'univers.
Ce qui est programmer de viens programme et ça boucle sur une sémantique à déterminer, pour faire un court circuit. Faire tourner un moteur électrique etc.
 
On abouti à la finalisation qui est le réflex.

n°2279782
Profil sup​primé
Posté le 19-04-2016 à 20:59:03  answer
 

Mais j'en suis au langage M qui doti piloter l'éditeur desources.
Je connais un lanage L qui donne un lanange L qui donne un langage M qui doit donnée un object O avec Ada.
 
Je parle francais
J'obtiens du français.
Je passe le français.
J'obtien un langage M
Pour obtenir un Objet O écrit avec Ada.
 
Whate else je crois que ça résume. Le programme deviens donc à chaque itération un nouvel Objet écrit avec Ada selon les entrées en français.
 
Vous causer un peu avec Ada j'espère....  :love:
 
Comem ça je pourait aller à la pêche.


Message édité par Profil supprimé le 19-04-2016 à 21:07:42
n°2279800
Profil sup​primé
Posté le 20-04-2016 à 05:30:19  answer
 

Nouveau main file pour fusionner Archman et Cyborg /dans ma tête..
 
Attention c'est long mais c'est beau la bibliothèque et très jolie également.
cat Adamanborg/Adamanborg/src/Adamanborg.adb  
 

Code :
  1. ---------------------------------------------------------
  2. -- Adamanborg is evolved cybernetic organism with Ada. --
  3. ---------------------------------------------------------
  4. -- This program speak french and english.              --
  5. ---------------------------------------------------------
  6. -- Adamanborg (C) Copyright 2016 E. Sens               --
  7. ---------------------------------------------------------
  8. -- This program is distributed under GPL.              --
  9. ---------------------------------------------------------
  10. -- This program is writted with Ada                    --
  11. -- language for Linux in terminal                      --
  12. -- mode in 160 columns and 64 lines or                 --
  13. -- 80 columns and 25 lines or                          --
  14. -- 211 columns and 78 lines or                         --
  15. -- on X Window system.                                 ----------------------
  16. --                                                                         --
  17. -----------------------------------------------------------------------------
  18. --                                                                         --
  19. -- This program is free software: you can redistribute it and/or modify
  20. -- it under the terms of the GNU General Public License as published by
  21. -- the Free Software Foundation, either version 3 of the License, or
  22. -- (at your option) any later version.
  23. --
  24. -- This program is distributed in the hope that it will be useful,
  25. -- but WITHOUT ANY WARRANTY; without even the implied warranty of
  26. -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  27. -- GNU General Public License for more details.
  28. --
  29. -- You should have received a copy of the GNU General Public License
  30. -- along with this program.  If not, see <http://www.gnu.org/licenses/>.
  31. --                                                                         --
  32. -----------------------------------------------------------------------------
  33. -- Author       : Manuel De Girardi                                        --
  34. -- Date         := 2016-04-20 03:20:00  ;
  35. -- Project name : Adamanborg                                               --
  36. -- Version      := 2016.04.20.03.20.00a ;
  37. -- Description  : This program is writed over Gnu/Linux with Ada.          --
  38. -----------------------------------------------------------------------------
  39. -- Synopsis :
  40. --
  41. --            Adamanborg [OPTIONS]
  42. --
  43. -- OPTIONS :
  44. --           -h :
  45. --           -q [Quiet] :
  46. --           -x :
  47. --           -v :
  48. --           -w | -W :
  49. --           -f Train_Filename :
  50. --           -R L1 rem network filename :
  51. --           -r L2 rem network filename :
  52. --           -l Lexic_Filename :
  53. --           -m Max_Epoch :
  54. --           -M Max_Epoch :
  55. --           -c Converged :
  56. --           -C Converged :
  57. --           -i max iteration :
  58. --           -I max iteration :
  59. --           -n [Reuse L1 network file] :
  60. --           -N [Reuse L2 network file] :
  61. --           -U Univer_Filename :
  62. --           -s Max_Sample :
  63. --           -S Max_Sample :
  64. --           -e User_Name :
  65. --           -H hostname :
  66. --           -P [Self_Programming] :
  67. --           -p [Load_Manpages] :
  68. --           -d delay to obtain an repsonse :
  69. --           -t Input_Text :
  70.  
  71. --
  72. -- Where :
  73. --
  74. --           -h :
  75. --                is help call ;
  76. --
  77. --           -q [Quiet] :
  78. --                is quiet call :
  79. --
  80. --           -x :
  81. --                is X mode call ;
  82. --
  83. --           -v :
  84. --                is version call ;
  85. --
  86. --           -w | -W :
  87. --                is wide or extra Wide term call ;
  88. --
  89. --           -f Train_Filename :
  90. --                is original train file for L1 ;
  91. --
  92. --           -R L1 rem network filename :
  93. --                is name of network file for L1 ;
  94. --
  95. --           -r L2 rem network filename :
  96. --                is name of network file for L2 ;
  97. --
  98. --           -l Lexic_Filename :
  99. --              is name of Lexic;
  100. --
  101. --           -m Max_Epoch :
  102. --               is max epoch for L1
  103. --
  104. --           -M Max_Epoch :
  105. --               is max epoch for L2
  106. --
  107. --           -c Converged :
  108. --               is conerged for L1
  109. --           -C Converged :
  110. --               is conerged for L2
  111. --
  112. --           -i max iteration :
  113. --               is max iteration for L1 ;
  114. --
  115. --           -I max iteration :
  116. --               is max iteration for L2 ;
  117. --
  118. --           -n [Reuse L1 network file] :
  119. --               is BOOLEAN value for to reuse L1 network file ;
  120. --
  121. --           -N [Reuse L2 network file] :
  122. --               is BOOLEAN value for to reuse L2 network file ;
  123. --
  124. --           -U Univer_Filename :
  125. --               is name if backup of Imaginary ;
  126. --
  127. --           -s Max_Sample :
  128. --               is Max sample for L1 ;
  129. --
  130. --           -S Max_Sample :
  131. --               is Max sample for L2 ;
  132. --
  133. --           -e User_Name :
  134. --               is logname of user ;
  135. --
  136. --           -H hostname :
  137. --               is remote hostname ;
  138. --
  139. --           -P [Self_Programming] :
  140. --              is BOOLEAN value for a self programming processing ;
  141. --
  142. --           -p [Load_Manpages] :
  143. --              is BOOLEAN to load manpages if available ;
  144. --
  145. --           -d delay to obtain an repsonse :
  146. --              is the max duration to respond to request ;
  147. --
  148. --           -t Input_Text :
  149. --              is the initial input request to be passed to process.
  150. --
  151. -----------------------------------------------------------------------------
  152. with Adam.Adaborg;
  153. with Adam.Main;
  154. use Adam;
  155.  
  156. procedure Adamanborg is
  157.  
  158.   Success : Boolean := False;
  159.   Error   : Error_Enum_Type := Program_Success;
  160.   Errno   : Errno_Tagged_Type := Default_Errno;
  161.  
  162. begin
  163.  
  164.   while not Success loop
  165.      
  166.      declare
  167.        
  168.         Cyborg  : Adaborg.Cyborg_Access :=
  169.          
  170.           new Adaborg.Cyborg_Tagged_Type;
  171.          
  172.      begin
  173.        
  174.        
  175.         Cyborg.Initialize
  176.          
  177.           (
  178.            
  179.            Default_Errno => Errno,
  180.            
  181.            Success_Message => "program succeed."
  182.              
  183.           );
  184.        
  185.        
  186.         Errno := Adaborg.Adarchmanborg
  187.          
  188.           (
  189.            
  190.            Borg => Cyborg,
  191.            
  192.            Options_Kit => Adam.Main.Get_Options_From_Command_Line,
  193.            
  194.            Exit_Status  => Error
  195.              
  196.           );
  197.        
  198.         if Errno /= Cyborg.Default_Errno then
  199.            Error := Adam.Main.Resolve_Error(Errno);
  200.            raise Program_Error;
  201.         end if;
  202.         raise Adam.Success;
  203.      exception
  204.         when Program_Error =>
  205.            case Error is
  206.               when Program_Success =>
  207.                  raise;
  208.               when Specification_Error  =>
  209.                  Adam.Main.Usage_Print(Errno);
  210.               when Implementation_Limit =>
  211.                  Adam.Main.Help_Print(Errno);
  212.            end case;
  213.         when Adam.Success =>
  214.            Success := Adam.Main.Program_Quit(Errno);      
  215.      end;
  216.      
  217.   end loop;
  218.  
  219. end Adamanborg;


 
Le programe complet est sur Sourceforge à projects/adamanborg
 
Ca compile ça s'exécute ...

program succeed.


 
ça termine, et c'est documenté !
 
La version est la date d'archivage à peut près c'est pas pratique de savoir de quoi on parle.
C'est la version a-0.0.3.
Comme ça c'est rigolo, mais à implémenter je vais me régaler.
 
Edit : pour la performance..

Adamanborg.sh...
call to Adamanborg without argument from times.
program succeed.
 
real    0m0.045s
user    0m0.032s
sys     0m0.012s
Adamanborg exited with return code 0
End Adamnborg.sh.


Message édité par Profil supprimé le 20-04-2016 à 05:42:34
n°2279801
Profil sup​primé
Posté le 20-04-2016 à 07:00:07  answer
 

Ah tien j'ai un paremetre de fonction en mode in out...
 
Volià :
 

real    0m0.044s
user    0m0.036s
sys     0m0.004s

n°2279827
Profil sup​primé
Posté le 20-04-2016 à 14:56:07  answer
 

j'ai commencé par le fichier principal.
A présent j'ai traité les arguments en ligne de commande.
 


QUIET setted without parameter.
GRAPH_GEOMETRY setted without parameter.
WIDE_GEOMETRY setted without parameter.
L1_NETWORK_FILENAME setted with parameter : Eden.txt.
L2_NETWORK_FILENAME setted with parameter : Eden_To_Ada.txt.
LEXIC_FILENAME setted with parameter : data/lexic.txt.
L1_MAX_EPOCHS setted with parameter : 500.
L2_MAX_EPOCHS setted with parameter : 500.
L1_CONVERGED setted with parameter : 0.0125.
L2_CONVERGED setted with parameter : 0.0125.
L1_MAX_ITERATION setted with parameter : 42.
L1_REUSE_NETWORK setted without parameter.
L2_REUSE_NETWORK setted without parameter.
UNIVERS_FILENAME setted with parameter : Univers.txt.
L1_MAX_SAMPLES setted with parameter : 100.
USERNAME setted with parameter : Manuel.
HOSTNAME setted with parameter : localhost.
SELF_PROGRAMMING setted without parameter.
LOAD_MANPAGES setted without parameter.


 
 
Le code est commenté un peu pour une fois.
(c'est que j'ai pas envis d'être paumé dans 2 mois).
 
Venez voir comme c'est jolimant fait !
 
 
Le type Parameter_Tagged_Record_Type :

Code :
  1. type Parameters_Flags_Enum_Type is
  2.    
  3.     (
  4.      Nul_Parameter,
  5.      Help,
  6.      Quiet,
  7.      Graph_geometry,      
  8.      Version,
  9.      Old_Geometry,
  10.      Linux_Geometry,
  11.      wide_Geometry,
  12.      Train_Filename,
  13.      L1_Network_Filename,
  14.      L2_Network_Filename,
  15.      Lexic_Filename,
  16.      L1_Max_Epochs,
  17.      L2_Max_Epochs,
  18.      L1_Converged,
  19.      L2_Converged,
  20.      L1_Max_Iteration,
  21.      L1_Reuse_Network,
  22.      L2_Reuse_Network,
  23.      Univers_Filename,
  24.      L1_Max_Samples,
  25.      L2_Max_Samples,
  26.      Username,
  27.      Hostname,
  28.      Self_Programming,
  29.      Load_Manpages,
  30.      Delay_For_Response,
  31.      Input_Text
  32.        
  33.     );
  34.  
  35.   type Parameter_Tagged_Record_Type (Requiered_Parameter : Boolean) is tagged
  36.      record
  37.        
  38.         Is_Setted : Boolean := False;
  39.        
  40.         Parameter_Flag : Parameters_Flags_Enum_Type := Nul_Parameter;
  41.        
  42.         case Requiered_Parameter is
  43.            when False =>
  44.               null;
  45.            when True =>
  46.               Value : access Wide_String;
  47.         end case;
  48.      end record;
  49.  
  50.  
  51.   type Parameters_Kit_Array_Type is
  52.     array (Parameters_Flags_Enum_Type) of
  53.     access Parameter_Tagged_Record_Type;
  54.  
  55.  
  56.   Default_Parameters : Parameters_Kit_Array_Type :=


 
Si vous connaissez un peu Ada merci pour votre retour.


Message édité par Profil supprimé le 20-04-2016 à 14:56:29
n°2279999
Profil sup​primé
Posté le 22-04-2016 à 21:11:35  answer
 

J'ai bossé plussieurs fois pour rien, des truc que j'avais oubliés, bref.
 
Mais la version 0.1.0 intègre Cyborg dans Gnuarchman en mode textuel.
Le mode graphique est à labour.
Loin, d'être terminé, donc.

mood
Publicité
Posté le   profilanswer
 


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

  [Ada][cybernetic] intégrer le système : approche neurale du problème.

 

Sujets relatifs
probleme graph vbaprobleme programme arduino shield infrarouge ap.photo canon eos 500d
Problème début WAMP[PHP/Bootstrap] Problème de pièce jointe et d'envoi de données
[HTML + JAVA] probleme appli android ou navigateurprobleme formule exel
[Python] Problème de frameprobleme inversion matrice
[HTML/Bootstrap] Problème d'affichage d'images bootstrap 
Plus de sujets relatifs à : [Ada][cybernetic] intégrer le système : approche neurale du problème.


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