Le deep learning pour les nuls

Au pif, en 3s sur twitter.
Des exemples comme ca, yen a plein.

3 « J'aime »

Ha je suis trop con….

Quand tu regardes codex , ils parlent d’un problème de mapping et pas de génération… je me suis fais avoir par Wikipedia. Rien à voir avec de la génération.

Du coup, c’est presque un problème de classification classique : un input va te mapper la solution la plus fréquente… et si plus personne ne documentent ses codes, copilot sera bien dans la sauce…

J’ai pas vraiment l’impression que Codex soit juste un bete systeme de mapping entre un input et une soluton. C’est, de ce que je comprends, vraiment de la génération.

Mais si effectivement tu lui mets en input la doc string d une fonction qu’il a vu des 100ene de fois dans son dataset d’entrainement il y a de grande chance que suite à cette doc string il génere cette meme fonction.

On voit d’ailleurs dans l’exemple d’ @AnA-l que le code est tres ressemblant mais pas identique. C’est pas un simple copier/coller de la fonction telle qu’elle etait dans le repo mais bien une version qui a été regenerée.

Selon moi le proibleme vient plutot du dataset utilisé pour l’entrainenement qui ne contenait pas que du code libre plutot que du fonctionnement du modele.

Apres pour le :

Je suis pas sur que des humains ne font pas ca aussi sur stackoverflow (volontairement ou pas) sur les reponses à certaines questions.

Les outils de ce type ont pas vocation à remplacer les devs, juste a etre plus efficace à l’aide d’un systeme d’autocompletion sous steroide. Mais ca reste toujours la responsabilité du dev de savoir ce qu’il fait quand il utilise un outil de ce type, de la meme maniere qu’il ne copie/collle pas directement la premiere solution trouvé sur stackoverflow sans se poser auucne question (de qualité, de performance ou de licence)

1 « J'aime »

Ya une difference entre C/C un bout de code sur SO parce que l’API est imbittable, et c/c un algorithme non public, verbatim depuis du code que t’etais pas censé parser et inclure.

3 « J'aime »

Du coup (toujours dans une logique de deep), il faut que ce code soit très très (très) récurent pour ressortir tel quel… ou qu’une supervision l’highlight intentionnellement (ce qui craint).

Ou très spécifique. Aussi bien au niveau du contexte d’utilisation que de la syntaxe par exemple.

Je ne sais pas si il genere du code sans respecter les licences mais les resultats sont quand meme assez impressionnants :

1 « J'aime »

Le fantasme completement déconnecté de la réalité qui ose affirmer que ce qui sort d’un modèle IA c’est « une oeuvre originale », ca serait drole si c’etait pas si ignominieusement intéressé et con. C’est 100% un perroquet qui sait remixer un ou deux trucs ensemble. Mais faut pas s’imaginer que c’est l’ordinateur qui a invente le truc de zero… c’est Moby l’IA: ca sait ressortir un vieux trucs a la nouvelle sauce avec des changements a la marge. Le plus comique c’est les gens qui te sortent sérieux que y a plus besoin de stack overflow si on a chatgpt. Genre on a plus besoin d’oeuf et de lait si on a des gateaux, mais en encore plus idiot.

4 « J'aime »

hum…ok. Pas l’impression qu’on parle ici de conscience ou d’oeuvre ou meme d’originalité. On parle juste d’outils basés sur des nouvelles technques qui permettent d’obtenir des resultats impensables il y a une dizaine d’année.

C’est pas en ca que consiste 90% du developpement logiciel?

Un dev lambda ne passe pas son temps à coder des algo revolutionnaire de multiplication d’une matrice 4x5 par une matrice 5x5 en 76 opérations plutot que 80 (exemple pas choisi au hasard :wink: Discovering novel algorithms with AlphaTensor - Google DeepMind)

Donc bien sur qu’il ne faut pas avoir des attentes disproportionnées vis à vis de ces outils et leur preter des capacités qu’ils n’ont pas mais les résumer à « ca sert à rien, ca fait que copier/coller du code sans aucun sens, c’est de la merde » c’est selon moi passer à coté de beaucoup de choses tres interessantes et utiles.

C’est quoi une œuvre originale?

Prends un lstm des plus classique et entraînes le sur un signal. Change l’input et demande un nouveau signal. Est-ce que tu obtiens un signal « original » ?

:man_shrugging:

Chacun voit une utilité en fonction de ses besoins.

J’ai jamais dit que c’etait de la merde, ou que ca servait a rien, c’est toi qui éditorialise. Merci de pas me prêter des propos que j’ai pas tenu. Je sais pas si 90% est le bon chiffre, mais une grosse partie du dev peut se faire (bêtement) en copier/coller de StackOverflow sans réfléchir ou en repompant un code open source trouve ci et la, en effet. Apres on peut commenter sur la pertinence du code qui s’est fait copier/coller. Pour certains devs, selon la situation, ca sera mieux que ce qu’ils auraient sorti tout seul. Pour d’autre non.

Non, clairement pas. Pas plus que si tu prends une photo et que tu fait +1 a RGB de chaque pixel, t’as une photo originale. Juste parce que la fonction est plus compliquée et plus opaque en fait pas un signal « original ».

Ok? Pourquoi ?
La prévision que tu récupères ne vient pas du dataset, n’a été généré par aucun capteur, etc.

Allez un petit effort de développement s’il te plaît. Ça marche pas avec ton exemple de +1. Et même. Les variations chromatiques de certains grands artistes sont bien considérés comme originales. De même que l’effacement d’un tableau pour le rendre « blanc » est considéré comme une œuvre à par entière et originale (Rauschenberg)

Donc en soit rien n’est original, ni du code, ni un texte, ni une peinture… cool. Je retourne m’amuser :blush:.

Voir ci dessus. [2210.05189] Neural Networks are Decision Trees (arxiv.org)

Que la fonction de transformation soit simplissime ou pas, change rien au problème. Et non « si changer un truc avec une fonction déterministique c’est pas original, rien n’est original », Copium Extra Strength. A d’autres.

Par le meme artiste. Mauvaise foi en barre sinon. Essaye de prendre la photo d’un grand artiste, appuie sur « optimize » sur ton telephone et vas te réclamer du copyright sur la « nouvelle photo ». Bonne chance. Mais comme j’ai dit plus haut, c’est Moby. Cela dit au moins Moby il est créatif et il prend des decisions qui lui sont uniques dans le process. Y en a qui aiment, voir meme qui trouvent ca original. Il se prend quand meme des procès pour plagiat pour sample sauvage. J’ai rien contre le concept du remix, y en a plein très bien, faut juste payer ceux qui se font remixer.

La difference c’est que au contraire d’un remix par un humain qui prend des decision artistique, il n’y a aucune decision créative. C’est un algo déterministique. Mettre le travail des autres dans une moulinette, aussi compliquée soit elle, pour faire sortir un remix automatisé change rien aux problèmes. Personne n’a rien crée de nouveau, une function « boite noire » est sortie d’un modèle mathématique dans lequel on a entassé du code/images/etc volées (en general, pas toujours) aux gens qui ont fourni la créativité qui se fait (ré)utiliser. Le volume de données en input que ca soit une source ou 100 million, change pas le concept. Si j’etais un artiste y a aucun moyen que je laisse un algo utiliser mon taff sans compensation. Pareil pour mon code. Et si le code a explicitement une clause d’attribution pour l’utiliser, c’est du vol de l’ignorer.

1 « J'aime »

Si on part dans le côté artistique on n’est pas sorti de l’auberge : l’exemple des sculpteurs qui jettent dans un puits du métal et un explosif et après ça peut être joli mais est-ce une œuvre d’art ? Mais ça ne répond pas à la question.

Autant l’IA peut servir pour un domaine donné, entraîné, vérifié, etc…

Autant les outils «IA» qui prétendent répondre à tout domaine je suis hyper circonspect, pas seulement dans leur mise en œuvre, mais surtout dans leur utilisation: certaines personnes croient qu’on peut se passer de spécialistes, en informatique ou dans d’autres domaines, mais j’ai peur que ces outils génèrent du gloubiboulga sans cohérence, que l’informaticien (ou autre spécialiste dans d’autres domaines) récupèrent à la petite cuillère.

Depuis des années en informatique il y a des aides et des générateurs de code, mais plus l’interface est censée être proche de l’humain, c’est-à-dire sans code avec des boites reliées de partout, plus ça génère du code spaghetti. En plus l’utilisateur métier se lasse et le file à l’informaticien, qui se retrouve avec un des boites qui s’éloignent de ce qu’est l’informatique. Alors en plus si c’est généré automatiquement par l’IA.

Par contre ça a fait plaisir au dirigeant qui a fait son Power Point et qui le claironne sur LinkedIn ou BFM, mais qui n’a aucune idée du suivi et de la réelle faisabilité.

Ben ChatGpt ou autre Copilot risque d’être utilisé pour génerer le même genre de développement avec des morceaux sans aucune cohérence entre eux, et inmaintenable.

1 « J'aime »

Je comprends pas bien le débat sur l’originalité (particulierement dans le cadre du code). Dans la tres grande majorité des cas on ne souhaite pas qu’un code soit super original. On veut juste qu’il fasse efficacement la tache pour laquelle on l’ecrit. On a d’ailleurs au fill du temps defini des design pattern et concu des framework tres cadrés pour justement entre autre eviter d’avoir à réinventer en permanence du code trop original pour des taches standards. Ca nous a fait gagner du temps pour pouvoir en consacrer plus à d’autres problématiques.

Par leur manière de fonctionner ces modèles vont donc effectivement le plus souvent (il y a des hyper paramètres qui servent à controler ca) génerer la réponse la moins originale, ce qui est en fait selon moi plutot une bonne chose.

Ca c’est un autre probleme et comme dit au dessus c’est lié aux dataset d’entrainement utilisés et la dessus je suis d’accord que c’est encore un peu trop la far west.

Apres pour sortir du code, je nuancerai un peu la fronde dans le milieu artistique parce que meme si certains ont de bons arguments en voir d’autres hurler sur ces modeles alors que leur profil artstation etait composé que de personnage Marvel ou de paysage « à la Ghibli » ca me fait un peu rire.

Effectivement avec ces nouveaux modeles maintenant n’importe qui est capable de generer rapidement une jolie image assez peu orginiale ou du code standard. Ca ne tuera pas les artistes ni les dev par contre ca pourra selon moi leur faire gagner du temps.

C’est quand meme fantastique que juste parce que la fonction est tellement compliquée qu’on ne peut plus l’expliquer en pas a pas, tout d’un coup ca serait « une oeuvre originale » sans lien de parenté direct avec les données sources. Bah… non. Y a rien d’original sans decision explicite dans le but de produire un nouvelle situation. Dit d’une autre façon, la seule créativité dans le process, elle est dans l’ecriture d’un prompt. Que l’humain a fourni. Tout le reste c’est une fonction f(resucé).

Apres, c’est pas moi qui met des jugement de valeur. Je suis parfaitement d’accord que souvent dans le code, il y a zero besoin d’etre original ou créatif. J’ai dit que c’etait mal? Non. Si ca permet d’aller plus vite, j’ai rien contre. Mais encore une fois, c’est pareil que de copier coller ce qu’a fait mon voisin, tant que le voisin est rémunéré pour son taff ou a explicitement dit « tu peux utiliser mon truc sans conditions », j’ai rien contre. Sinon il faut suivre et accepter les conditions. On en est loin.

Autant on peut se poser la question de gagner du temps pour un dév (et encore dans quelle mesure), autant si on enlève le processus de création à un artiste ben on lui enlève tout l’intérêt qu’il a pour son métier. Sauf a minima s’il fait de la sélection à la sortie comme l’exemple du sculpteur et son puit.

Et pour le dév on n’est pas loin selon le niveau d’aide trop poussée qu’on lui enlève à lui aussi tout l’intérêt qu’il a pour son métier…

Des boites avec des mauvais directeurs techniques ca a toujours existé et ca existera toujours. Il y en a effectivement surement qui vont penser qu ils peuvent remplacer leur equipe windev par chatgpt ou copilot…mais ils etaient deja mauvais à la base en ayant une equipe windev.

La recherche de références et d’inspiration fait partie du processus créatif. Ces nouveaux outils peuvent etre utile dans ce cadre. Ils permettent aussi de tester rapidement des idées pour voir si elles fonctionnent avant d’essayer d’aller plus loin.

Mais si ces idées ne viennent pas de lui, qu’il n’a eu aucune réflexion pour y aboutir, ce n’est pas du tout un processus de création, c’est de la délégation, autant dans le domaine technique je suis déjà dubitatif mais alors dans le domaine artistique ça n’a aucun sens.

Vous voulez pas faire un thread : qu’est-ce que la créativité :smiley: ?
Je trouve que la question se rejoint avec la question « est-ce que le libre arbitre existe ? »
C’est un débat sans fin (et complètement subjectif à l’heure actuelle)

2 « J'aime »