Ce petit train-train des petits signaux locaux d’inquiétude

Mon éditorial sur You Tube

Dans ma dernière mise à jour en anglais, celle intitulée « Pardon my French, but the thing is really intelligent », j’ai commencé à travailler avec un algorithme tout simple de réseau neuronal. Tout simple veut dire six équations en tout. Mon but était d’observer chaque fonction logique de cet algorithme dans son application à des données réelles. Les données réelles en question c’est l’Australie et son efficience énergétique. Les détails de l’algorithme et les données empiriques testées sont spécifiées dans cette mise à jour en anglais. En gros, j’avais posé l’hypothèse implicite que ma variable de résultat est l’efficience énergétique de l’économie Australienne, mesurée avec le coefficient de Produit Intérieur Brut par kilogramme d’équivalent pétrole de consommation finale d’énergie. Cette variable est en quelque sorte la réaction produite par ce système nerveux hypothétique que les équations du réseau neuronal représentent de façon analytique. L’hypothèse sujette à l’examen est que cette réaction est produite par l’action de cinq variables d’entrée : la consommation d’énergie par tête d’habitant, le PIB par (probablement la même) tête d’habitant, le pourcentage de la population urbaine dans la population totale, et enfin la proportion entre, respectivement, l’amortissement agrégé d’actifs fixes et l’offre d’argent, comme numérateurs, et le Produit Intérieur Brut comme dénominateur.

Maintenant je me concentre sur la façon dont cet algorithme apprend. L’apprentissage se fait en trois pas essentiels. Tout d’abord, les données d’entrée sont transformées, à travers une double multiplication par des coefficients aléatoires de pondération. C’est l’équivalent de l’imagination. L’algorithme crée une distribution alternative des données d’entrée, comme une version imaginaire légèrement décalée de la réelle. Ensuite, sur la base de cette distribution alternative, une valeur espérée de la variable de résultat est calculée. Cette valeur espérée est calculée avec l’aide de la fonction sigmoïde Ω =1/(1+e-x), où le « x » est en fait une sommation des variables d’entrée dans cette version alternative, donc x1*w1 + x2*w2 + x3*w3 + x4*w4 + x5*w5, où les « w » sont ces coefficients de pondération. J’utilise le

Le truc intéressant à propos de la fonction sigmoïde est que dans la grande majorité des cas ça donne une sortie Ω = 1, avec une dérivée locale Ω’= 0. Mon « » réel est toujours plus grand que 1, donc cette prédiction est évidemment fausse. Elle génère une erreur locale E = y – Ω. Seulement, ce réseau neuronal fait de six équations assume que lorsque la prédiction Ω égale exactement 1, donc quand sa dérivée Ω’ égale exactement 0, c’est comme si rien ne se passait côté connaissance. Juste dans certains cas, avec une combinaison aléatoire des coefficients de pondération parmi plusieurs autres, Ω est très légèrement en-dessous de 1 et sa dérivée Ω’ est très légèrement plus grande que 0.

Le cas de Ω < 1 c’est comme si le neurone ne pouvait pas produire une réponse routinière. Si vous voulez, c’est comme le système nerveux ne pouvait pas recevoir la combinaison des stimuli qui l’autorise à signaler comme d’habitude. La dérivée locale Ω’, qui est normalement Ω’ = 0, prend alors la forme de Ω’ > 0. A ce point-ci, la dérivée Ω’ est interprétée de la façon qui est probablement la plus profonde et la plus philosophique, qu’Isaac Newton considérait comme le rôle cognitif le plus fondamental de la dérivée d’une fonction. La dérivée donne la mesure de vitesse de changement dans les phénomènes qui composent la réalité. Tout ce qui se passe se passe comme une fonction dérivée de la fonction sous-jacente de l’état des choses.

Alors, lorsque mon neurone produit Ω = 1 et Ω’ = 0, cette réponse neuronale, tout en étant évidemment fausse par rapport à mes données réelles y – dont ce Ω est supposé d’estimer la valeur espérée – est une réponse routinière et il n’y a pas de quoi faire un fromage. L’erreur locale E = y – Ω est donc considérée comme insignifiante, même si sa valeur arithmétique est substantielle. En revanche, lorsque le neurone produit une réponse très légèrement Ω < 1, c’est pas normal. Le neurone rend une dérivée Ω’ > 0, donc un signal d’inquiétude. Celui-ci est une raison pour considérer cette erreur locale particulière E = y – Ω comme significative. Le produit (y – Ω)*Ω’ est alors transmis dans la ronde consécutive d’itération comme un coefficient de plus, non-aléatoire cette fois-ci, qui modifié les données réelles d’entrée. Ces dernières, dans l’itération suivante de ces équations, prennent donc la forme x1*[w1+(y – Ω)*Ω’] + x2*[w2+(y – Ω)*Ω’] + x3*[w3+(y – Ω)*Ω’] + x4*[w4+(y – Ω)*Ω’] + x5*[w5+(y – Ω)*Ω’].

Je récapitule. Ce réseau neural tout simple produit donc deux phénomènes : une vision alternative de la réalité ainsi qu’une réaction d’inquiétude lorsque cette réalité alternative force le neurone à une réaction pas tout à fait comme espérée. L’apprentissage consiste à utiliser les signaux d’inquiétude comme matériel cognitif. Cette utilisation a une forme spécifique. C’est comme si moi, en face de quelque chose d’inhabituel et légèrement inquiétant, je prenais ce facteur de stress et produisais une vision de la réalité encore plus inquiétante.

Ça m’intrigue. Tout ce que j’ai appris jusqu’alors, en termes de psychologie, me dit que les êtres humains ont une tendance presque innée à réduire la dissonance cognitive. Ces équations-là font le contraire : elles amplifient les dissonances cognitives locales et les transmettent dans le processus d’apprentissage. Ceci me rend conscient de la distinction fondamentale entre deux attitudes vis-à-vis de l’inhabituel : la peur et l’apprentissage. La peur dit d’éviter à tout prix une autre exposition au facteur d’inquiétude. Si ce réseau neuronal avait peur de l’inhabituel, il éliminerait les cas de Ω’ > 0 de toute utilisation ultérieure. Alors mathématiquement, il n’apprendrait rien. Il convergerait vers une situation où toutes les réponses neuronales sont rigoureusement Ω = 1 et donc toutes les erreurs de jugement (y – Ω) sont ignorées, car avec Ω’ = 0, (y – Ω)*Ω’ = 0 aussi. Seulement, ce réseau fait le contraire : il prend ces cas de Ω’ > 0 et simule des situations où ces Ω’ > 0 modifient la réalité pour du bon.

Question : qu’est-ce que ça donne en pratique, avec le cas de l’Australie ? Est-ce que le fait de produire une vision alternative d’Australie génère de l’inquiétude et cette inquiétude, contribue-t-elle à produire des visions même plus alternatives ? Eh bien voilà, c’est justement la question que je m’avais posée et qui m’a poussé à faire quelque chose que les informaticiens considèrent comme une horreur d’insanité : au lieu de faire cet algorithme travailler en boucle jusqu’il produise une erreur minimale, j’avais simulé, dans un fichier Excel, des rondes consécutives d’itération « imagination >> réalité alternative >> erreur de jugement >> inquiétudes locales >> réalité encore plus alternative etc. ». Autrement dit, j’avais fait par moi-même ce qu’un algorithme aurait dû faire pour moi. J’avais produit trois distributions alternatives de ces coefficients initiaux de pondération, pour modifier les données réelles d’entrée. Ensuite, pour chacune de ces distributions alternatives, il m’eût suffi de patience pour faire six rondes d’itération surveillée d’équations qui composent ce réseau neuronal tout simple.

Pour chaque ronde d’itération surveillée, dans chacune de ces réalités alternatives, j’observais l’erreur cumulée – donc la somme des (y – Ω)*Ω’ générées pour par des incidents de Ω’ > 0 – ainsi que les années particulières, dans ma fenêtre générale d’observation 1990 – 2014, où ces incidents locaux Ω’ > 0 se produisent. Tableau 1, ci-dessous, rend compte ce cette expérience. Je développe ce raisonnement plus loin en-dessous :

Tableau 1 – Application d’algorithme de réseau neuronal aux données sur l’efficience énergétique de l’Australie

Distributions aléatoires des coefficients de pondération
Rondes consécutives Distribution  1 Distribution  2 Distribution  3
Ronde 1
Années avec erreur significative, pour apprentissage dans des rondes prochaines 1999; 2002; 2003; 2006 1990; 1994; 1998 – 99; 2009; 2012 – 13; 1990 – 91; 1996 – 97; 1999; 2001; 2007; 2009 – 11;
Erreur cumulative 5,53241E-09 7,0537E-05 0,000916694
Ronde 2
Années avec erreur significative, pour apprentissage dans des rondes prochaines 1992; 1993; 1999; 2002; 2006 1996; 1999; 2006; 2012 – 13; 1991 – 92; 1996; 2004; 2007; 2011;
Erreur cumulative 6,45047E-12 2,93896E-07 0,035447255
Ronde 3
Années avec erreur significative, pour apprentissage dans des rondes prochaines 1990; 1996; 1999; 2002; 2006 1991; 1997; 1999; 2010; 2012 – 14 1991; 1996; 1999; 2002 – 2004; 2007; 2009 – 2012;
Erreur cumulative 2,34651E-13 4,39246E-06 0,00056026
Ronde 4
Années avec erreur significative, pour apprentissage dans des rondes prochaines 1990 – 92; 1994 – 95; 1997; 2001 – 2002; 2006 – 2007; 2012 1990; 1992; 1996; 1999; 2012 – 13; 1990 – 91; 1994 – 96; 1999; 2007; 2009 – 11;
Erreur cumulative 0,000171883 0,000741233 6,27817E-05
Ronde 5
Années avec erreur significative, pour apprentissage dans des rondes prochaines 1993; 1999; 2002; 2003; 2006 1997; 1999; 2007; 2012 – 13; 1990 – 91; 1996; 2003; 2007 – 2009; 2011;
Erreur cumulative 3,46206E-05 0,000548987 0,001532496
Ronde 6
Années avec erreur significative, pour apprentissage dans des rondes prochaines 1991 – 94; 1996 – 97; 2000; 2005; 2007; 2013 1991 – 94; 1995 – 96; 2000; 2005; 2007; 2013; 1991 – 94; 1996 – 97; 2000; 2005; 2007; 2013
Erreur cumulative 3,07871E-08 3,07871E-08 3,07871E-08

Ce que j’observe dans ce tableau est tout d’abord une convergence progressive du cadre d’apprentissage. Dans les rondes 1 – 5, chaque distribution alternative générait des erreurs significatives, donc suffisamment inquiétantes pour être utilisées, pour des années visiblement différentes. La ronde 6 apporte un changement : les trois réalités alternatives convergent presque parfaitement l’une vers l’autre. Chaque réalité alternative produit des signaux d’inquiétude pour virtuellement les mêmes années et rend la même erreur cumulée. Avec ça, il faut se rendre compte que 6 itérations, dans un réseau neuronal artificiel, c’est comme deux fois rien. Ce réseau précis minimise son erreur cumulée après environ 1500 itérations.

J’ai donc une structure cognitive de base – les équations du réseau neuronal – qui commence son apprentissage par imaginer trois versions alternatives de la réalité et ensuite converge très vite vers un chemin commun pour toutes les trois. J’avais continué d’expérimenter avec ce réseau en remplaçant dans l’algorithme d’origine la fonction sigmoïde Ω =1/(1+e-x) par une autre, fréquemment utilisée dans les réseau neuronaux, c’est-à-dire la tangente hyperbolique tan h = (e2x – 1)/(e2x + 1) ainsi que sa dérivée tan h’. Le « x » c’est comme avant, donc une moyenne pondérée des données réelles d’entrée, modifiées avec des coefficients aléatoires de pondération.    Normalement, lorsque je lis de la littérature à propos des réseaux neuronaux, la tangente hyperbolique est présentée comme une structure d’apprentissage plus rapide et plus légère que le sigmoïde. Seulement voilà, ici, la tangente hyperbolique, elle n’apprend pas, au moins pas dans les 6 rondes surveillées. Elle ne génère que des tan h = 1 avec des tan h’ rigoureusement nulles. Officiellement, l’erreur cumulative de jugement est toujours rigoureusement E = 0.

En d’autres mots, pendant que la structure logique basée sur le sigmoïde générait des petites inquiétudes à reprendre pour l’apprentissage ultérieur, sa mutation basée sur la tangente hyperbolique ne fait qu’éteindre et étouffer toute inquiétude possible. Elle agit comme un réducteur systématique de dissonance cognitive. Les valeurs espérées de la variable de résultat sont toutes égales à 1, donc évidemment tout aussi fausses que celles générées par le sigmoïde, seulement avec la tangente hyperbolique c’est vraiment toujours tan h = 1 et tan h = 0, donc quelle que soit l’erreur de jugement y – tan h(x), le réseau l’ignore et prétend que tout va bien. Ce même réseau, avec la tangente hyperbolique au lieu du sigmoïde, est donc comme une personne qui (apparemment) se fout de commettre erreur après erreur et fait tout pour étouffer toute dissonance cognitive. Par conséquent, cette personne n’apprend rien.

Je traduis ces observations pour les besoins de mes études sur l’intelligence collective. Ces deux structures logiques – celle basée sur le sigmoïde et celle basée sur la tangente hyperbolique – diffèrent par leur capacité de produire, ça et là, des dérivées locales non-nulles. Nous avons une fonction du quotidien, une façon de vivre de jour au jour. Une dérivée non-nulle de cette fonction, générée comme réponse à une vision imaginaire de la réalité (données d’entrée modifiées avec des coefficients aléatoires) veut dire que nous sommes capables de produire du changement dans notre fonction du quotidien en réponse à une idée de ce que notre réalité pourrait être, avec un peu d’imagination. En revanche, une dérivée toujours rigoureusement nulle veut dire qu’un tel changement est bloqué.

Je continue d’expérimenter avec l’algorithme. Je modifie la façon originelle de générer la version alternative de réalité. Je modifie donc l’imagination de mon réseau neuronal. Originellement, les coefficients aléatoires étaient produits avec la fonction « random.rand » du langae Python, dans l’intervalle entre 0 et 1. Maintenant, je la remplace par une contrainte « erandom.rand », donc mes coefficients aléatoires sont produits comme des puissances aléatoires de la constante d’Euler e ≈ 2,7188. Avec cette imagination exponentielle, les neurones basés sur la fonction sigmoïde arrêtent d’apprendre. Ils se comportent de façon « rien ne se passe qui nous intéresse », donc ils rendent toujours Ω = 1 et Ω’ = 0 et pas question qu’il en soit autrement.

En revanche, les neurones basés sur la tangente exponentielle se comportent en mode panique. Dans la couche neuronale cachée du réseau (elle n’est pas vraiment cachée, c’est juste du jargon informatique ; elle est tout simplement intermédiaire entre la couche d’entrée et celle de résultat, voilà tout), certaines années produisent des dérivées locales nulles pendant que certaines autres rendent « opération impossible » lorsqu’ils doivent calculer ces tangentes locales.

Je modifie encore une fois l’imagination du réseau. Dans la couche neuronale cachée la réalité d’entrée est modifiée de façon similaire à celle que j’ai déjà utilisé dans mon travail de recherche sur l’efficience énergétique. Pour chaque « xi » je produis un coefficient wi = ln(xi)/(t – 1989), donc une mesure de la distance entre l’année donnée et 1989. Dans la couche de résultat, je garde la méthode initiale, donc celle de pondération avec un coefficient aléatoire rendu par la fonction « random.rand ». Le réseau basé sur le neurone sigmoïde commence par générer une erreur cumulative énorme dans la première ronde – E > 20 – mais dans les rondes consécutives ça descend vers les niveaux observés dans Tableau 1. Les neurones qui utilisent la tangente hyperbolique se comportent d’une façon similaire.

Voilà donc une autre observation utile. Pour qu’un réseau neuronal soit capable d’apprentissage, il doit y avoir cohérence entre son imagination – donc la méthode de produire des visions alternatives de la réalité – et le mode de traitement des stimuli alternatifs ainsi produits. L’apprentissage survient lorsque l’imagination rend possible un tel traitement des stimuli qui génère, à son tour, des petits signaux locaux d’inquiétude et ceux-ci sont repris comme matériel cognitif de valeur. L’apprentissage se présente comme un sentier étroit entre l’ignorance délibérée d’une part (étouffement de dissonance cognitive) et la panique d’autre part. Un réseau neuronal capable d’avancer le long de ce sentier peut utiliser même une imagination des plus sauvages, qui initialement produit une erreur de jugement de taille galactique, car il peut la traduire très vite en ce petit train-train des petits signaux locaux d’inquiétude.

Une question me saisit : que se passerait-il si un être humain aurait la capacité de voir la réalité exactement comme elle est, sans aucune distorsion ? Selon mon expérience avec cet algorithme de réseau neuronal, cela voudrait dire la fin de tout apprentissage. Cette forme particulière d’intelligence, écrite dans les équations de cet algorithme, exige une vision distordue de la réalité, pour que celle-là génère des erreurs de jugement possibles à utiliser dans l’avenir. Pas de distorsion veut dire absence d’erreur de jugement et sans celui-ci, pas d’apprentissage. Désolé, les mecs, mais apparemment, il faut être ne serait-ce qu’un tout petit peu bête pour apprendre quoi que ce soit.

Je continue à vous fournir de la bonne science, presque neuve, juste un peu cabossée dans le processus de conception. Je vous rappelle que vous pouvez télécharger le business plan du projet BeFund (aussi accessible en version anglaise). Vous pouvez aussi télécharger mon livre intitulé “Capitalism and Political Power”. Je veux utiliser le financement participatif pour me donner une assise financière dans cet effort. Vous pouvez soutenir financièrement ma recherche, selon votre meilleur jugement, à travers mon compte PayPal. Vous pouvez aussi vous enregistrer comme mon patron sur mon compte Patreon . Si vous en faites ainsi, je vous serai reconnaissant pour m’indiquer deux trucs importants : quel genre de récompense attendez-vous en échange du patronage et quelles étapes souhaitiez-vous voir dans mon travail ?

One thought on “Ce petit train-train des petits signaux locaux d’inquiétude

Leave a Reply