Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Programme] Création d'une IA

Création d'une intelligence artificielle

5 mars 2017 à 21:30:22

Bonjour à tous,

j'ai comme projet personnel de créer une intelligence artificielle apprenant évolutive. J'ai consulté  quelques sujets d'openclassrooms et j´essaye de ne pas reproduire les erreurs que j'ai pu voir. Tout d'abord, je tiens à préciser que je n'ai aucune compétence en codage, un niveau de mathématiques convenable et que je suis en première.

Mon objectif serait de créer une intelligence artificielle capable de comprendre des phrases écrites, d'en analyser le sens et d'essayer d'y répondre le mieux possible. De plus j'aimerais que cette IA soit capable de "raisonner" en essayant d'élargir son socle de connaissance et de compétence.

Je travaille donc en ce moment sur la schématisation d'un arbre de décision qui pourrait me servir de base à la création de cette IA. 

Là où j'ai besoin de vous, c'est que je n'ai aucune connaissance en IA et que plus je cherche, plus je me perds. Pourriez-vous me donner des conseils pour mon arbre ainsi que pour la programmation de mon IA ?

Je vous remercie d'avance

-
Edité par AlexandraMinerve 5 mars 2017 à 21:34:06

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2017 à 22:45:42

Salut,

Tu veux la créer comment si tu ne connais aucun langage ? Tu veux apprendre le langage en même temps ?

Avec les compétences que tu cites ça me parait assez dur de réaliser ce que tu décris.

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2017 à 23:28:41

Oui, je suis encore au lycée, avec quelques facilités, je pense que je pourrais apprendre les bases d'un language rapidement, la maîtrise de ce dernier viendra elle, avec le temps et l'expérience je pense.

Et puis je me creuse déjà tellement la tête pour mettre mon idée sur papier et faire un schéma assez clair que je me dis que le codage peut attendre un peu, ai-je tort ?

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2017 à 23:38:03

Tu peux très bien créer ton concept d'IA sans savoir coder.

Mais si tu veux mettre tes idées en pratique, selon leur complexité, il va falloir une bonne connaissance du langage pour concrétiser tout ça.

Je pense que le mieux est que tu continues à développer tes idées et commence à apprendre un langage. Ca te permettra de faire tester tes idées au cours de ton apprentissage.

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2017 à 23:40:36

AlexandraMinerve a écrit:

Pourriez-vous me donner des conseils pour mon arbre ainsi que pour la programmation de mon IA ?


Alors pour ton arbre, il faut unsol profond pour satisfaire son enracinement plongeant, drainé (l'humidité stagnante est source de maladies), frais ( et non calcaire pour les poiriers greffés sur cognassier.. ) hmm.. désolé...

Sinon, ce que tu essaye de faire est un chat-bot ? ( tu as pas mal de sujet qui en parle sur le forum )  Tu as pensé à regarder du coté des réseaux de neurones ? 

-
Edité par edouard22 5 mars 2017 à 23:41:59

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2017 à 23:45:59

Merci pour toutes vos réponses, je me penche là dessus le plus tôt possible et je vous tiens au courant. Un conseil pour le language ? J'ai vu que ça n'influençais pas grand chose mais au cas où, on ne sait jamais.

A très vite

  • Partager sur Facebook
  • Partager sur Twitter
6 mars 2017 à 0:24:09

Pour le langage va du coté de Python, c'est simple à apprendre et c'est le plus adapté pour démarrer un projet d'IA.

  • Partager sur Facebook
  • Partager sur Twitter
6 mars 2017 à 18:08:47

Bon, j'ai regardé tout ce qui est chat-bot et réseaux de neurones. Je ne sais pas si c'est ce qu'il me faut mais en attendant il me manque des tutoriels, je ne comprends pas comment est codé un réseau de neurones, est ce que quelqu'un aurait des liens pour m'aider ? Sinon j'ai commencé à apprendre Python, je vous tiens au courant de mon avancée.
  • Partager sur Facebook
  • Partager sur Twitter
7 mars 2017 à 15:27:48

Les tutoriels sur ce genre de sujets ne sont que très rares, en effet, dans ces domaines, les implémentations ont bien moins d'intérêt que les concepts qui permettent de les réaliser. C'est pourquoi on ne trouve pas sur le net de tuto intitulé "Comment créer un algorithme génétique qui accomplit telle tâche" ou "Comment programmer une intelligence artificielle comme Skynet".

Par contre, si le domaine t'intéresse, il existe de très bons bouquins traitant de sujets comme l'optimisation, le machine learning ou encore les métaheuristiques. Y a aussi un super outil, que les gens ne pensent pas souvent à utiliser: Google Scholar. On y trouve pas mal de thèses, d'articles scientifiques et autres documents intéressants.

Bon courage!

  • Partager sur Facebook
  • Partager sur Twitter
do { Hardwork(); } while (You.Fail == true);
7 mars 2017 à 17:33:47

Le problème c'est que la 1ére c'est un peu juste niveau maths pour aborder ce genre de concepts : algèbre linéaire, matrices, probabilités, etc. Encore plus si c'est des ressources en anglais (on parle rarement bien anglais en 1ére, sauf cas assez rares). Donc ça me semble difficile de trouver des tutos adaptés à ton niveau malheureusement. Le plus "simple" serait d'essayer de trouver un "mentor" qui s'y connait bien et qui t'aiderait à trouver des ressources adaptés à ton niveau et à progresser. Car si on te balance un boucain de base sur le sujet tu risques de partir en courant assez vite.

  • Partager sur Facebook
  • Partager sur Twitter
7 mars 2017 à 19:47:50

De fait, je n'avais pas vu que tu étais en première. Les bouquins dont je parlais sont certes moins faciles à lire que des romans, mais je trouve qu'ils ont l'avantage de fournir de bonnes bases sans pour autant nécessité un haut degré de compréhension des sujets connexes.

Je pense notamment au livre "Apprentissage artificiel - Concepts et algorithmes" de Antoine Cornuéjols et Laurent Miclet aux éditions Eyrolles (et de manière générale les ouvrages de cette édition car ils sont très clairs, fournissent une grande bibliographie et représentent de bonnes entrées en matière).

Sinon, je pense que le Python dispose de modules permettant d'implémenter rapidement (et sans forcément comprendre comment les fonctions sont écrites) des programmes de machine learning et autres joyeusetés. En tout cas, si ce sujet t'intéresse, je ne peux que t'encourager à approfondir tes recherches, c'est un domaine passionnant et en pleine expansion depuis plusieurs années.

  • Partager sur Facebook
  • Partager sur Twitter
do { Hardwork(); } while (You.Fail == true);
7 mars 2017 à 23:27:05

Hello,

Je travail dans l'intelligence artificielle (recherche et application). Autant te dire que ce que tu veux faire est impossible avec les technolohies dont on dispose aujourd'hui. Les AI peuvent faire ce que les humans font en moins de une seconde (reconnaissance faciale, vocale) avec quelques exceptions bien sur.

Les maths de 1er (enfin si on peut appeler ca des maths) sont très insuffisant pour comprendre la théorie. Je te conseil de regarder du côté de Keras et TensorFlow pour des librairies Python.

Le gros problème etant que 99.99% des tutos et resources en AI sont en anglais.

Bon courage!

  • Partager sur Facebook
  • Partager sur Twitter
https://base.run est une base de données postgres gratuite pour ton vos projects.
15 mars 2017 à 19:37:38

Petite avancée !

J'avance désormais parallèlement entre mon apprentissage de python et mon arbre de "raisonnement" (c'est le nom qui me parait le plus approprié). Je maîtrise désormais la base base de python (boucles, listes...) et je pense avoir réussi à faire un début de système d'apprentissage. Je n'ai qu'une question: comment puis-je faire en sorte qu'un programme (A nous dirons) en démarre un autre (B), qu'il lui donne une entrée à traiter, puis que ce dernier (B) lui réponde (A), le programme A doit alors traiter l'information recueillie, me la partager et donner une nouvelle entrée au programme B. On peut imaginer par exemple que les entrées données par le programme A soient les entiers naturels de 0 à 1000,

j'attends votre réponse avec impatience, 

à la prochaine

  • Partager sur Facebook
  • Partager sur Twitter
16 mars 2017 à 14:31:08

Par souci de claireté, je préfère découper un programme en plusieurs sous-programmes et puis c'est le genre de manip qui pourra me servir plus tard
  • Partager sur Facebook
  • Partager sur Twitter
16 mars 2017 à 15:00:23

theo_ a écrit:

Les maths de 1er (enfin si on peut appeler ca des maths) sont très insuffisant pour comprendre la théorie. Je te conseil de regarder du côté de Keras et TensorFlow pour des librairies Python.


Oui c'est ce qui m'a sauté aux yeux quand j'ai lu le topic... Le soucis ici n'est pas le code, on s'en fout complètement pour une IA (enfin, du moins à ton stade du projet), mais le problème c'est que tu ne maîtrises aucun outil mathématique :/

Après je suis d'accord avec les autres, commences a apprendre le python par exemple, et essaie de t'appuyer sur des lib déjà existantes. Tu ne comprendras peut être pas 100% de ce que tu fais, mais ça sera déjà très bien pour un début.

  • Partager sur Facebook
  • Partager sur Twitter

Mon projet: SpotRoom. N'hésites pas à passer dire ce que tu en penses !

16 mars 2017 à 15:48:38

Tu peux déjà découper en fonction / fichier / module, pourquoi découper en programmes ?
  • Partager sur Facebook
  • Partager sur Twitter
16 mars 2017 à 15:50:16

Je peux découper comment ? Je n'ai pas encore vu ça
  • Partager sur Facebook
  • Partager sur Twitter
16 mars 2017 à 16:34:01

AlexandraMinerve a écrit:

Je peux découper comment ? Je n'ai pas encore vu ça


Je pense que tu devrais apprender a programmer avant de faire ton projet et revenir consulter la communauté.
  • Partager sur Facebook
  • Partager sur Twitter
https://base.run est une base de données postgres gratuite pour ton vos projects.
2 avril 2017 à 16:44:00

Bonjour,

Je pense que je peux t'aider pour ton IA.

  • Partager sur Facebook
  • Partager sur Twitter
Ghost le vénéré,adulé,trés respecté et absolument inconnu !
4 avril 2017 à 18:48:54

Je suis toute ouïe, ça serait génial
  • Partager sur Facebook
  • Partager sur Twitter
5 avril 2017 à 13:20:12

Pour l'intelligence artificielle commence par le debut, qu'est ce qu'un agent ? les etats d'un environement, les stategies de recherches sur un arbre de decision (deep first, breath first, greedy, A*, etc), la theorie. Celle la ne necessite pas des connaissances monstrueuse en maths, simplement les notations sont parfois un peu obscures mais en s'aidant d'exemple c'est plutot limpide.

Quand tu maitriseras ca tu pourras commencer a penser programme.

  • Partager sur Facebook
  • Partager sur Twitter
HOPE
6 avril 2017 à 22:27:57

Ok je me penche là dessus désormais
  • Partager sur Facebook
  • Partager sur Twitter
3 mai 2017 à 19:21:39

Apprendre à un ordinateur c'est minimiser les erreurs dans le résultat des calculs de l'ordinateur. Autrement dit, une IA parfaite n'existe pas (pour le moment), la seule chose que tu peux faire c'est créer un programme qui tente d'échouer le moins possible. L'idée qui se cache derrière les grands principes de l'IA c'est d'utiliser des outils mathématiques (langage machine) pour modéliser des problèmes concrets (langage humain). Cette étape de traduction a 2 effets : le premier c'est qu'il permet à l'ordinateur de "comprendre" ce que tu attends de lui, le second c'est qu'en traduisant à l'ordinateur celui ci peut tout de même mal comprendre ou bien la traduction peut perdre une partie de son sens (exemple avec l'anglais et le français, il existe like et love en anglais alors qu'il n'existe que le verbe aimer en français).

Une des branches de l'IA propose comme concept de ne pas faire d'étape de traduction et de demander à l'ordinateur; toujours avec des outils mathématiques poussés; de faire lui même la traduction.

En aucun cas l'ordinateur sera "intelligent", il aura simplement réussi à traduire une suite d'octet (0101010100101011010) en une autre suite d'octet correspondant à l'action que l'on attend de lui avec un risque d'erreur non null.

  • Partager sur Facebook
  • Partager sur Twitter
22 juillet 2017 à 2:29:41

L'intelligence artificielle consiste en programmation a donner a l'ordinateur tous les faits, de donner ensuite les regles que subissent les faits et de laisser l'ordinateur de trouver le ou les solutions. 

Un exemple : supposons que nous ayons 9 cases en carre. Nous voulons placer dans ces 9 cases tous les chiffres de 1 a 9 sans que 2 cases consecutives ou adjacentes contiennent des chiffres dont la difference soit egale a 1.

Les faits sont : les chiffres de 1 a 9. Les regles : 2 cases consecutives doivent avoir une difference superieure a 1.

Le programme ecrit en PROLOG est tres facile et ne necessite aucune programmation en terme d'organigramme comme dans les programmes ordinaires.

Il travaillera en terme de recherche d'arbre par son propre langage. 

J'espere que ca ta aide.

  • Partager sur Facebook
  • Partager sur Twitter
17 août 2017 à 23:42:09 - Message modéré pour le motif suivant : Message complètement hors sujet


18 août 2017 à 10:08:20 - Message modéré pour le motif suivant : Réponse à un hors sujet.


Mon projet: SpotRoom. N'hésites pas à passer dire ce que tu en penses !

Anonyme
10 novembre 2017 à 18:03:18

Commencer un projet comme ça sans maitriser convenablement un langage est limite de la folie. Apprend avec des petits projets, des trucs classiques, genre plus ou moins, casino, tout ça quoi, avant de te lancer dans un truc un minimum sérieux (genre un jeu), encore avant de faire une "IA"

Je mets IA entre guillemets parce que ce dont tu parles là apparemment, comme tu comptes te baser sur quelque chose de déjà existant (ton arbre), c'est une machine à état fini. Tu peux te tourner vers ceci dans ce cas : https://github.com/google/bottery

Ensuite, comme tu comptes apparemment faire de l'analyse textuelle, te casses pas la tete avec un algorithme non language agnostic pour déduire des contextes, des "types" de phrases, des ressemblances entre mots ... passe par Kadot (python 3, de the new sky) qui est justement language agnostic (en gros ça marchera aussi bien avec de l'espagnol ou du français, de l'espéranto ou de l'anglais ... le seul problème actuellement est lié aux langues à symboles je crois bien).

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
21 novembre 2017 à 12:47:43

AlexandraMinerve a écrit:

Bonjour à tous,

j'ai comme projet personnel de créer une intelligence artificielle apprenant évolutive. J'ai consulté  quelques sujets d'openclassrooms et j´essaye de ne pas reproduire les erreurs que j'ai pu voir. Tout d'abord, je tiens à préciser que je n'ai aucune compétence en codage, un niveau de mathématiques convenable et que je suis en première.

Mon objectif serait de créer une intelligence artificielle capable de comprendre des phrases écrites, d'en analyser le sens et d'essayer d'y répondre le mieux possible. De plus j'aimerais que cette IA soit capable de "raisonner" en essayant d'élargir son socle de connaissance et de compétence.

Je travaille donc en ce moment sur la schématisation d'un arbre de décision qui pourrait me servir de base à la création de cette IA. 

Là où j'ai besoin de vous, c'est que je n'ai aucune connaissance en IA et que plus je cherche, plus je me perds. Pourriez-vous me donner des conseils pour mon arbre ainsi que pour la programmation de mon IA ?

Je vous remercie d'avance

-
Edité par AlexandraMinerve 5 mars 2017 à 21:34:06

Salut,

Si tu ne connais ni le langage de programmation ni les bases de l'IA (c'est un domaine à part entière, je t'invite à te renseigner sur les réseaux de neurones et le deep learning car faire ce type d'IA avec un arbre classique n'est pas envisageable d'après moi), il me paraît vraiment fou de commencer par ce genre de projet (des bots d'analyses sémantiques existent et sont développés depuis des années pour finalement arriver à un résultat mitigé).

Après comme dit plus haut il existe des librairies qui s'occupent de parser du texte pour essayer de le ""comprendre"" mais je pense que c'est pas ton but de reprendre quelque chose déjà fait.

Si tu est intéressée par le thème de l'IA, je t'invite à regarder du coté de leekwars.com qui est un jeu où tu code l'IA de ton personnage, ça sera un bon début du moins pour apprendre à coder.

Bonne chance ;)

-
Edité par Anonyme 21 novembre 2017 à 12:50:47

  • Partager sur Facebook
  • Partager sur Twitter
7 février 2018 à 17:54:44

C'est très bien de vouloir t’intéressé à L'IA. Il parais que c'est l'avenir de l'humanité ou peut être de sa destruction, je ne sais plus... Dans, le deuxième cas la quintessence de l’esprit humain resteras éternel par le biais de l'IA...

Je vois plein de personne qui te répondent des choses complètement stupide ou bien démoralisante. Ce sont, des petits esprits incapable de voir plus loin que leurs petit nez. Je ne pense pas qu'il faille être un dieu de la programmation pour créer de IA. Ou tous autre programme. On parle de programme intelligence artificiel. Je vois que certain ont sont déjà pourvues..

 Je préfère parler d'intelligence pure, que artificiel... Parce que créer est un acte volontaire et désintéressé. Un peut comme un artiste peut créer une oeuvre d'art. Et crée un programme est un acte technique que tous le monde peut apprendre. Donc, la moral à cette question qui sera évidente pour certain. Est que le créateur, n'est pas forcement le technicien qui vas écrire le programme. Mais celui qui vas réussir à mobilisé les techniciens qui vont suivre l'idée.. Comment peut-ont écrire un programme intelligent si l'on s'en trouve dépourvue...

Donc, mon conseille sera de mobilisé les meilleurs technicien en programmation, en chimie moléculaire, ainsi que des bio-neurologues, car le défis est un des plus grand de notre humanité. Ce qui par logique ne peut être créer par un seul cerveau dans sont coin...

Celui qui détiendras l'IA sera le maître du monde futur... 

  • Partager sur Facebook
  • Partager sur Twitter