Comment Google Deep Dream transforme les photos en art hallucinogène

8

Les ordinateurs ne dorment pas. Ils se contentent de regarder les données jusqu’à ce qu’elles commencent à ressembler à autre chose.

Pendant que nous sommes hors ligne, nos machines sont occupées à réinterpréter d’anciens fichiers et à recracher du nouveau matériel étrange. Le moteur derrière tout ça ? Google Rêve profond. C’est un programme qui recherche des motifs dans les images numériques, les modifie et nous présente les résultats pour que nous puissions en juger. Vous pouvez devenir idiot. Vous pouvez devenir artistique. Ou vous pouvez devenir cauchemardesque. Cela dépend de ce que vous lui donnez et des paramètres définis par les employés de Google.

La seule véritable façon de comprendre ce que fait Deep Dream est de l’essayer. Google a ouvert ses serveurs au public. L’objectif était de comprendre comment le programme classe et indexe les images. Vous téléchargez une photo. Quelques secondes plus tard, vous obtenez un rendu fantastique basé sur cette photo originale.

Le résultat est un hybride bizarre. Imaginez si Salvador Dali, Hieronymus Bosch et Vincent van Gogh organisaient une folle soirée de peinture qui durait toute la nuit. C’est l’ambiance. Les feuilles se transforment en tourbillons colorés. Les rochers deviennent des rectangles répétitifs. Les montagnes se dissolvent en lignes gracieuses mises en valeur.

Un paysage vide ? Deep Dream le remplit. Pagodes. Des voitures. Ponts. Parties du corps humain. Il voit des animaux. Beaucoup d’entre eux.

Téléchargez un portrait de Tom Cruise. Le programme retravaillera les plis et les espaces en têtes de chiens, poissons et autres créatures familières. Ce ne sont pas des animaux normaux. Ce sont des récréations fantastiques croisées avec un kaléidoscope teinté de LSD. Ils sont étrangement évocateurs. Souvent terrifiant.

Google ne fait pas de éloges. Il ne nourrit pas ses serveurs de produits chimiques hallucinogènes. Il guide ces serveurs pour analyser les images puis les régurgiter comme de nouvelles représentations de notre monde.

Son fonctionnement nous renseigne sur la façon dont nous construisons des appareils numériques. Il montre comment les machines digèrent une quantité inimaginable de données dans notre monde obsédé par la technologie.

Neurones en bits

Les ordinateurs sont des machines froides et inorganiques. Ils ne dorment pas. Ils ne rêvent certainement pas. C’est du moins ce que nous pensions.

Deep Dream a changé cette perception. Il ne s’agissait pas de donner un subconscient à un ordinateur. Il s’agissait d’exposer la complexité pure et bizarre qui émerge lorsque vous introduisez des données du monde humain dans un code de plus en plus enchevêtré.

Les développeurs de Google n’ont pas démarré cela comme un projet artistique. Ils ont construit Deep Dream pour le défi de reconnaissance visuelle à grande échelle ImageNet. Ce concours a débuté en 2010. Chaque année, des dizaines d’équipes s’affrontent pour construire les meilleurs classificateurs automatiques d’images. Le but ? Détecter et trier des millions de photos sans aide humaine. Après chaque concours, les perdants (et les gagnants) peaufinent leurs algorithmes. Ils essaient de le faire plus rapidement. Mieux. Plus précisément.

Voici le problème avec cette quête. La reconnaissance d’images est largement absente de notre boîte à outils Internet standard. Les moteurs de recherche ? Ils adorent les mots-clés. Tapez « chat » et vous obtenez des résultats textuels. Tapez “cat.jpg” et vous obtiendrez peut-être un fichier. Mais demander à un moteur de recherche de comprendre ce qu’il y a sur une photo ? Cela lutte.

Nous étiquetons nous-mêmes nos photos. “Maison.” “Tommy.” “Coucher de soleil.” Nous procédons ainsi parce que les ordinateurs ne peuvent pas analyser de manière fiable le fouillis visuel. La vraie vie est compliquée. Ce ne sont pas des vecteurs propres. C’est du bruit. Et jusqu’à récemment, les machines traitaient ce bruit comme des données inutiles.

Deep Dream était une tentative de remédier à cette cécité.

Comment fonctionne le rêve profond

La sauce secrète ? Un réseau de neurones artificiels (ANN).

Ce n’est pas seulement du code. C’est un système calqué sur le cerveau humain. Pensez-y. Nous avons plus de 100 milliards de neurones. Ils déclenchent des impulsions. Ils traitent les entrées sensorielles. Ils nous aident à reconnaître un visage dans une salle bondée.

Deep Dream imite cela. Il utilise des neurones artificiels pour filtrer les données. Il exécute ces données à travers des couches. Et des couches. Et des couches. Encore et encore.

L’architecture d’un rêve

Pour Deep Dream, le réseau comporte généralement entre 10 et 30 couches de ces neurones artificiels. Cela représente beaucoup d’étapes de traitement pour une image.

Le système ne se contente pas de « voir » une image. Cela le décompose. Il recherche des modèles. Bords. Courbes. Textures. Il affine son interprétation à chaque couche. Le résultat final est une image. Mais pas celui d’origine.

Le résultat est une hallucination.

Vous vous nourrissez d’une photo d’un parc. L’ordinateur voit les arbres. Il voit de l’herbe. Mais comme le réseau neuronal est hyper-ajusté pour trouver tout ce qui ressemble à un objet connu, il commence à amplifier les caractéristiques.

L’herbe devient fourrure. Les branches des arbres deviennent des pattes. Le ciel devient un œil géant.

Pourquoi c’est important pour la recherche visuelle

Ce n’est pas seulement un économiseur d’écran trippant. Cela met en évidence un changement dans la façon dont nous traitons l’information.

Pendant des années, nous nous sommes appuyés sur les métadonnées. Nous avons étiqueté nos vies numériques. Mais Deep Dream a montré que les machines pouvaient apprendre à interpréter des données visuelles sans ces étiquettes.

“Deep Dream nous a montré que si vous laissez une machine regarder assez attentivement, elle trouvera des modèles qui n’existent pas, ou plutôt, elle trouvera des modèles que nous ne voyons pas.”

L’ordinateur ne rêve pas au sens humain du terme. C’est optimiser. Il pousse les pixels vers ce à quoi il pense appartenir. Et ce faisant, il révèle les lacunes de sa propre compréhension.

Si une machine peut transformer un vélo en une créature faite de vélos,

Les réseaux de neurones ne sont pas des miroirs magiques qui renvoient simplement des données vers vous. Ils ne commencent pas automatiquement à identifier des modèles à partir de rien. Ils nécessitent une formation. Vous devez leur fournir des ensembles de données à utiliser comme points de référence. Sans ce gros travail, ils passeraient simplement au crible les informations, incapables d’en donner un sens.

Selon le blog officiel de Google, le processus de formation repose sur la répétition et l’analyse. Disons que vous souhaitez entraîner un réseau de neurones artificiels (ANN) pour identifier un vélo. Vous ne lui dites pas simplement « vélo ». Vous lui montrez des millions d’images de vélos. Vous précisez également, dans un code informatique, à quoi ressemble réellement un vélo. Deux roues. Un siège. Guidon.

Ensuite, les chercheurs libèrent le réseau pour voir ce qu’ils trouvent. Cela fera des erreurs. Le programme peut renvoyer une série d’images incluant des motos et des cyclomoteurs. Lorsque cela se produit, les programmeurs modifient le code. Ils précisent à l’ordinateur que les vélos n’ont ni moteur ni système d’échappement. Ils exécutent à nouveau le programme. Et encore. Ils peaufinent le logiciel jusqu’à ce que les résultats soient satisfaisants.

“L’équipe Deep Dream a réalisé qu’une fois qu’un réseau peut identifier certains objets, il peut également recréer ces objets par lui-même.”

L’équipe Deep Dream a remarqué quelque chose d’intéressant. Une fois qu’un réseau peut identifier des objets, il peut les reproduire sans autre intervention. Un réseau qui connaît un vélo à vue peut générer une image d’un vélo à partir de zéro. L’idée est que le réseau génère de nouvelles images créatives simplement parce qu’il a la capacité de classer et de trier les images.

Cela semble impressionnant jusqu’à ce que vous regardiez le résultat. Même après avoir passé au crible des millions de photos de vélos, les ordinateurs commettent des erreurs critiques lorsqu’ils génèrent leurs propres images. Les vélos générés peuvent comporter des mains humaines partielles sur le guidon. Ou les pieds sur les pédales. Cela se produit parce qu’un grand nombre d’images de formation incluent des personnes. L’ordinateur ne peut finalement pas discerner où se terminent les pièces du vélo et où commencent les pièces humaines.

Ce genre d’erreurs se produit pour de nombreuses raisons. Les ingénieurs logiciels ne comprennent pas pleinement tous les aspects des réseaux de neurones qu’ils construisent. Mais savoir comment ils fonctionnent vous aide à comprendre comment ces défauts se produisent.

L’architecture de l’inceptionnisme

Les neurones artificiels du réseau fonctionnent en piles. Deep Dream peut utiliser aussi peu que 10 calques ou jusqu’à 30. Chaque calque reprend divers détails d’une image. Les couches initiales détectent les éléments de base tels que les bordures et les bords. Un autre calque peut identifier des couleurs et une orientation spécifiques.

D’autres calques recherchent des formes spécifiques qui ressemblent à des objets comme une chaise ou une ampoule. Les couches finales réagissent uniquement aux objets plus sophistiqués tels que les voitures, les feuilles ou les bâtiments.

Les développeurs de Google appellent ce processus l’inceptionnisme. Il fait référence à cette architecture particulière de réseau neuronal. Ils ont même publié une galerie publique pour montrer des exemples du travail de Deep Dream. C’est un aperçu de la façon dont la machine voit.

Une fois que le réseau a identifié différents aspects d’une image, de nombreuses choses peuvent se produire. Avec Deep Dream, Google a décidé de demander au réseau de réaliser de nouvelles images. Il ne s’agit pas seulement d’analyser. Cela crée.

L’obscurité à la limite

Les ingénieurs de Google n’ont pas simplement laissé Deep Dream choisir les parties d’une image à identifier. Ils ont essentiellement demandé aux ordinateurs de prendre ces aspects de l’image et de les mettre en valeur.

Si Deep Dream voit une forme de chien dans le motif du tissu de votre canapé, cela accentue les détails de ce chien.

Chaque couche ajoute plus au look du chien. Fourrure. Yeux. Le nez. Ce qui était autrefois un motif cachemire inoffensif sur votre canapé devient une figure canine avec des dents et des yeux.

Deep Dream zoome un peu à chaque itération de sa création. Cela ajoute de plus en plus de complexité au tableau. Pensez chien dans chien dans chien.

Une boucle de rétroaction commence alors que Deep Dream surinterprète et insiste sur chaque détail d’une image. Un ciel plein de nuages ​​passe d’une scène idyllique à une scène remplie de sauterelles spatiales, de formes psychédéliques et de voitures aux couleurs de l’arc-en-ciel. Et les chiens.

Il y a une raison à la surabondance de chiens dans les résultats de Deep Dream. Lorsque les développeurs ont sélectionné une base de données pour entraîner ce réseau neuronal, ils en ont choisi une qui comprenait 120 sous-classes de chiens, toutes classées de manière experte. Ainsi, lorsque Deep Dream part à la recherche de détails, il est tout simplement trop probable qu’il voie des visages et des pattes de chiot partout où il cherche.

Deep Dream n’a même pas besoin d’une image réelle pour créer des images. Si vous lui donnez une image blanche vierge ou remplie de statique, il “verra” toujours des parties de l’image, les utilisant comme éléments de base pour des images de plus en plus étranges.

C’est la tentative du programme de révéler le sens et la forme à partir de données autrement informelles. Cela témoigne de l’idée derrière l’ensemble du projet : essayer de trouver de meilleurs moyens d’identifier et de contextualiser le contenu des images éparpillées sur les ordinateurs du monde entier.

Alors, les ordinateurs peuvent-ils vraiment rêver ? Deviennent-ils trop intelligents pour leur propre bien ? Ou Deep Dream n’est-il qu’une manière fantaisiste d’imaginer la manière dont notre technologie traite les données ?

Il est difficile de savoir exactement ce qui contrôle la production de Deep Dream. Personne ne guide spécifiquement le logiciel pour accomplir des tâches préprogrammées. Cela nécessite des instructions plutôt vagues (trouver des détails et les accentuer encore et encore) et terminer le travail sans assistance humaine manifeste.

Les images résultantes sont une représentation de ce travail. Peut-être que ces représentations sont des œuvres d’art créées par des machines. C’est peut-être une manifestation de rêves numériques, nés du silicium et des circuits. Et c’est peut-être le début d’une sorte d’intelligence artificielle qui rendra nos ordinateurs moins dépendants des humains.

Vous craignez peut-être la montée en puissance des ordinateurs sensibles qui envahissent le monde. Mais pour l’instant, ce genre de projets profite directement à tous ceux qui utilisent le Web. En quelques années seulement, la reconnaissance d’images s’est considérablement améliorée, permettant aux utilisateurs de parcourir plus rapidement les images et les graphiques pour trouver les informations dont ils ont besoin. Au rythme actuel des progrès, vous pouvez vous attendre à des progrès majeurs dans la reconnaissance d’images, en partie grâce aux ordinateurs de rêve de Google.