« Il y a trois sortes de mensonges : les mensonges, les gros mensonges et les statistiques. »
Mark Twain
Préliminaire
Les algorithmes, pareillement à d’autres bases de l’informatique comme l’échantillonnage ou, encore, le système binaire dont la première trace remonte au YI-King [1], ont précédé de plusieurs siècles l’invention des machines à calculer et des ordinateurs comme le montre le plus ancien des algorithmes : l’algorithme d’Euclide, créé par ce dernier.
Le terme algorithme est, selon les sources, soit issu du nom du mathématicien Al-Khwarizmi [2] soit un adjectif désignant “Dieu mettant de l’ordre dans le monde” [3].
La pertinence de cette seconde étymologie, même si elle est potentiellement apocryphe, ne peut échapper à l’homme du XXe et du XXIe siècle. En effet, elle illustre parfaitement la manière dont nous remettons notre destin entre les mains des sciences et des mathématiques tout, comme autrefois, nous le remettions entre les mains de Dieu. Toutefois, nous le faisons en oubliant que les sciences comme les religions sont un point de vue sur le monde. À priori, rien de grave, cependant, ce qui rend dangereux ces points de vue, c’est leur absence d’alternative, leur exclusive. Ce qui finalement en fait une histoire de croyance et c’est pour cela qu’il est important de réfléchir à leur construction.
1 Principes
L’algorithmie a été inventé pour trouver par une suite de calculs simples et systématiques un résultat complexe. C’est un ensemble d’instructions élémentaires le plus souvent ordonnées linéairement et conçues pour résoudre un problème. Pour concevoir un algorithme, il est nécessaire de déconstruire l’objectif, le but à atteindre en une succession d’étapes.
Un algorithme est une méthode. Une manière systématique de procéder pour atteindre un résultat : trier des objets, situer des villes sur une carte, multiplier deux nombres, chercher un mot dans le dictionnaire… trouver la valeur d’une constante. Ainsi l’algorithme a+b= c permet de découvrir la valeur de c quelque soit la valeur de a et b.
« Un algorithme, c’est tout simplement une façon de décrire dans ses moindres détails comment procéder pour faire quelque chose. Il se trouve que beaucoup d’actions mécaniques, toutes probablement, se prêtent bien à une telle décortication. Le but est d’évacuer la pensée du calcul, afin de le rendre exécutable par une machine numérique (ordinateur…). On ne travaille donc qu’avec un reflet numérique du système réel avec qui l’algorithme interagit. » Gérard Berry (1948‒)
Les algorithmes ont donc été conçus pour permettre à des exécutants, comme les ordinateurs, de réaliser des calculs complexes sans avoir à réfléchir et sans avoir à comprendre le problème. On en déduira que :
– les algorithmes sont comme les chemins, nombre d’entre eux mènent à Rome et par conséquent, plusieurs algorithmes différents peuvent résoudre un même calcul complexe ;
– qu’un algorithme est un outil de délégation, au mieux, et au pire de sous-traitance d’une tâche. Par conséquent, selon le niveau d’exigence du donneur d’ordre, le résultat de plusieurs algorithmes destinés à obtenir le même objectif ne sera probablement pas identique. Tout comme les chemins différents nous conduisent à Rome mais au prix d’une fatigue, de risques plus ou moins grands..., les algorithmes produisent un résultat plus ou moins différent selon les risques acceptés et la qualité du résultat recherchée. C’est toute la question du cahier des charges et de son éventuelle publication. Celle-ci, destinée a une meilleure compréhension des critères élues par l’administration, permettra une contestation plus étoffée du résultat. Contestation plus étoffée car, non contente de s’attaquer à un problématique cas individuel, elle pourra en démonter et démontrer l’effet sur un plus grand nombre. La contestation devenant alors une force d’inflection de l’effet de l’algorithme sur la société. La contestation sortant alors de sa place contestataire pour devenir force partcipative.
2 Exemples
Une recette de cuisine pourrait être réduite à un algorithme, si on la considère comme une simple liste composées de tâches à exécuter et d’ingrédients précis à intégrer en quantité définie au cours de la réalisation de cette liste de tâches.
Cependant, pour un algorithme, la noix de beurre mélangée à trois œufs est une notion encore plus complexe que pour nous lorsque nous devons l’expliquer. L’évaluation visuelle ou “ à la louche ”, sont des notions indéchiffrables. L’algorithme ne gère que des quantités : durées, longueur ou poids. La noix de beurre se transformera en 10, 15, 23 gr de beurre...
De la même manière, le savoir-faire du cuisinier n’étant pas quantifiable, son intégration à un algorithme est complexe. En effet, la durée de cuisson, la vitesse de la rotation de la cuillère dans la casserole ne se réduisent pas seulement à des chiffres. Ainsi, pourquoi, le cuisinier-saucier décide d’accélérer la rotation de sa cuillère sur un tiers de la casserole puis la ralentira dans les vingt pour cent suivant....
Une recette en algorithme se résumerait ainsi :
– des entrées (les ingrédients, le matériel utilisé : cuillère, plat, four...) ;
– des instructions élémentaires simples tel mettre 50 gr de sucre, faire bouillir 4 secondes, ... dont l’exécution amène au résultat voulu ;
– un résultat : le plat préparé.
L’algorithme du marathon [4]
Prenons l’exemple d’un coureur qui souhaite courir le marathon en moins de 3h30, un entraîneur pourrait lui conseiller l’entraînement suivant :
– alterner des séances courtes et rapides, des séances longues et lentes ainsi que des jours de repos, ce programme pourrait se résumer sous la forme de l’algorithme suivant :
Marathon en 3h30, l’objectif
Pour semaine de -12 à 0
Si semaine = - 6 : repos
Pour jour de 1 à 7
Si jour = 3 ou 6 : repos
Si jour = 1 ou 5
Pour série de 1 à 20 courir 40 s à 15 km/h, repos pendant 20s
Si jour = 2 ou 4 : courir 50 mn à 11 km/h
Si jour = 7 courir 1h30 à 11 km/h et courir 30 mn à 13 km/h
La syntaxe de cet algorithme est construite sur des structures de contrôle, c’est-à-dire des instructions qui permettent de décider l’ordonnancement des autres instructions.
Selon l’ouvrage cité précédemment, « Cet algorithme est une sorte de promesse que, si, toutes les instructions élémentaires sont exécutées correctement, l’objectif sera atteint : on sera en mesure de courir le marathon en moins de 3h30. En effet, si l’on arrive pas à courir 40 s à 15 km/s, il y a peu de chance d’y arriver. » On remarquera la précision des instructions et l’inutilité de comprendre le pourquoi du comment, si l’on suit les instructions le but sera atteint. L’essentiel est : des experts en entraînement au marathon ont éprouvé l’efficacité de ce rythme d’entrainement. [...] Pour le coureur amateur, il suffit de faire confiance à l’algorithme et d’en exécuter machinalement les instructions dans l’ordre stipulé. »
– Des algorithmes généralistes s’appliquent à toutes les données numériques ou non. Par exemple les algorithmes liées au chiffrement, ou ceux qui permettent de mémoriser une information ou de la transmettre ; ces algorithmes de chiffrement ont notamment donné naissance à la théorie de l’information sous-divisée en transmission, stockage... Cette théorie est appelée théorie de la communication de Shannon.
Un algorithme est une sorte de contrat impliquant trois parties :
– l’utilisateur qui propose une valeur d’entrée et souhaite récupérer une valeur de sortie : le résultat courir le marathon en moins de 3h30,
– l’exécutant des instructions, dans le cas du marathon, l’exécutant et l’utilisateur sont une seule personne,
– le concepteur de l’algorithme.
3 L’algorithme, un point de vue sur le monde ?
Comme le précise Gérard Berry, avec un algorithme, « On ne travaille donc qu’avec un reflet numérique du système réel avec qui l’algorithme interagit. » L’algorithme est bien une image du monde car il est le reflet d’une conception du monde. Cette image notamment considère qu’un exécutant n’a pas besoin de comprendre sa tâche.
Cette conception est une vision du monde connectée à une autre vision du monde : une tâche peut-être réduite à un ensemble de tâches plus simple. Curieux, cela ressemble étrangement au fordisme qui, tout aussi curieusement était pensé à la même époque !
4 FaceBook et Google seraient-ils les Narcisses modernes ?
Selon un article du Monde [5], les algorithmes de Google s’appuieraient sur 57 “ signaux ” différents pour sélectionner les réponses à une question posée à cette nouvelle Pythie. Ainsi, pour prendre des “signaux simples” selon l’importance donnée aux pouces bleus, au j’aime, où j’en pleure, votre algorithme ne va pas sélectionner les mêmes publications. Illustration : un algorithme de sélection peut choisir les publications qui ont plus de 20% de j’aime, 30 % de je déteste les autres commentaires n’étant pas considérés comme pertinents. Cette sélection sera totalement différente de celle produite par un autre algorithme qui donne la préférence aux publications ayant 20 % de j’aime, 20 % de je pleure et 10 % de je déteste.
Outre la définition de ces signaux, parfois plutôt vague, parmi ces critères, certains semblent d’une pertinence douteuse... Il en est ainsi du navigateur utilisé pour faire la requête ou encore de la définition de l’écran de l’ordinateur employé pour émettre cette requête. Comment ces critères peuvent-ils être les garants de la qualité d’une réponse ? Cela reste un grand mystère.
D’autres comme l’âge, la géolocalisation ou le sexe, selon la question, devraient avoir un poids variable. C’est-à-dire que leur importance devrait être pondérée en fonction de la question. On peut tout autant s’interroger sur les liens entre la pertinence d’une réponse et la fréquence de clics ou du recours aux raccourcis. En effet, un bon informaticien ou un utilisateur rodé à l’usage de FB n’est pas nécessairement un bon cuisinier ou un bon philosophe pas plus qu’un bon bricoleur. Par conséquent, ce n’est pas parce qu’une personne émet des réponses pertinentes dans un domaine que toutes ses réponses sont pertinentes.
D’autres critères sont tout aussi spécieux. Ainsi, la corrélation entre la régularité de mes visites sur un site et la validité de ses réponses est toute relative même si cette question appartient au champs sémantique de ce site. De plus, rien ne m’interdit de désirer d’autres réponses parce que je commence à bien maîtriser ce sujet et que je souhaite le creuser ou encore parce que, suite à un échange, je commence à m’interroger sur les réponses apportées par les sites que j’avais coutume de consulter..
Quand FaceBook considère que la publication d’un de mes amis FB est plus pertinente parce que j’apprécie 90 % de ses publications, cette société a recours, sous couvert d’utiliser un critère numérique -fiable parce que numérique- à un critère complètement subjectif. En effet, il se peut que que j’apprécie ses publications dans le domaine scientifique et déteste ses prises de position politique. L’inintérêt de ses publications politiques ne réduit pas l’intérêt de ses publications scientifiques. Par ailleurs, ce n’est pas parce que les publications d’une personne sont épisodiques que celles-ci ne sont pas pertinentes. Ces deux définitions de la pertinence d’une publication repose sur le hasard des statistiques d’autant plus que cette personne ne peut poster que des histoires drôles
Ce type de critères me rappelle étrangement le mythe de Narcisse. En effet, Google ou FaceBook partent du principe que c’est dans la contemplation de soi-même que réside le bonheur en oubliant que l’on risque de se noyer dans ce comportement frisant l’autisme. A trop se regarder, on oublie de se remettre en question. Simultanément, ils obèrent un critère de satisfaction essentiel pour toutes les personnes curieuses : le plaisir de la découverte qui, engendre parfois, le plaisir de mieux comprendre. En bref, le plaisir de rencontrer la différence même si c’est au prix d’une déstabilisation temporaire.
5 L’algorithme, une croyance
Comme le montre la cuisine à l’algorithme, l’algorithme est une croyance. En l’occurrence, une croyance en une cuisine scientifique où le coup de main du chef ou le hasard n’interviendraient pas. Ainsi, imaginer que pour battre les œufs, la vitesse de rotation du fouet puisse varier en fonction de leur fraîcheur ou de leur texture sont des hypothèses inexistantes pour un algorithme car ces évaluations sont très difficilement modélisables. En effet, la fraîcheur ne dépend pas que de la date de ponte, elle dépend aussi de critères comme la saison, les variations de l’alimentation de la poule ou encore des conditions de stockage, de transport... Et même en équipant chacun des œufs d’une puce RFID (bonjour les problèmes de recyclage), ces informations resteront parcellaires.
En fait, la méthodologie pour concevoir un algorithme est non seulement une croyance mais aussi un point de vue sur le monde comme le montrent les algorithmes de FaceBook ou de Google car pour créer un algorithme, il faut adopter un point de vue, faire des choix de pondération des éléments de l’algorithme, voir éliminer certains éléments. Avoir une confiance aveugle dans les algorithmes pour prendre des décisions politiques, c’est adhérer à une croyance : les problèmes seraient uniquement économiques et/ou techniques. Par conséquent, c’est croire que ces problèmes sont uniquement rationnels et donc rationalisables ce qui ne laisse aucune place aux désirs, aux rêves de la société comme de l’individu. C’est en ce sens que l’on peut considérer que les algorithmes sont des images. D’ailleurs la croyance dans la rationalité des algorithmes a tout de la nouvelle idole toute puissante.
Un outil discriminatoire
Les algorithmes sont des outils discriminatoires dans le sens d’outils séparateurs puisque ce sont des outils de tri. Ainsi, imaginons que nous concevions un algorithme pour rechercher sur le web tous les articles parlant du cheval. Immédiatement, se pose une question : faut-il intégrer chevaux, le pluriel de cheval, ou encore le cheval d’arçon voire le mot dada.
Si l’on exclut le cheval d’arçon, on exclut de la thématique tous les articles parlant de gymnastique. De même, si l’ont récuse le mot dada, on écarte toutes les définitions enfantines du cheval ainsi que le mouvement artistique. Ces différents choix du champ d’action de l’algorithme sont donc bien discriminatoires. Discriminatoire n’implique pas nécessairement une injustice ou une justice d’ailleurs. Dans le cas présent, cela implique la création de champ sémantique différent et par conséquent la production de réponses différentes. Cependant, les algorithmes et par conséquent, les statistiques ont une objectivité aveugle ce qui peut rendre profondément injustes leur résultat.
Le diable réside dans les détails surtout dans la collecte des données gérées par les algorithmes. Selon la méthode de collecte, les résultats produits par le même algorithme peuvent générer des résultats très différents. Différence problématique s’il agit du résultat d’une enquête sur l’efficacité d’un médicament mais pour les algorithmes prédictifs le danger est encore plus grand. Ainsi, si cet algorithme est construit pour prédire les comportements dits à risque. Dans ce cas là, le danger d’être jugé ou de voir sa peine aggravée par la potentialité de ce comportement s’accroit tandis que la chance d’être jugé sur un comportement réel s’amenuise.
Ces discriminations nous amènent à la photonumérique qui, nous rappelle elle aussi, que les algorithmes sont eux aussi sujet à des interprétations diverses. Ainsi, un fichier RAW généré par un appareil photo doté d’une optique précise, c’est-à-dire généré par la même suite d’algorithmes, sera lue et donc interprétée différemment non seulement par Bridge, Aperture, Photivo, Rawtherapee ou le logiciel de DXO mais aussi par les différentes versions de chacun de ces logiciels.
6 Note finale ?
Un algorithme est donc une interprétation d’une question. Cet algorithme, selon les logiciels qui l’exécuteront fournira des réponses-résultats différents et, cette interprétation, il est possible de plus ou moins y souscrire. La preuve ? Tous le logiciels d’interprétation des fichiers RAW comportent des fonctions de réglages manuels.
Quand aux CD audio, l’algorithme de compression-décompression Reed Salomon considère, parfois, lors de la décompression d’un fichier, que certains pics sonores ou encore certains silences sont des erreurs de décodage. Ces choix le conduisent à lisser l’enregistrement sonore là où il ne le devrait pas. Ce sont ces écrétages qui provoquent certaines pertes de dynamique dans un enregistrement numérique.
Comment ose-t-on parler de la rigueur scientifique des algorithmes ? Comme toutes images, les algorithmes sont des capteurs de rêves. Le premier d’entre eux étant celui d’une société efficiente grâce ou par la technique. Une société sans faille. Cependant refuser la faille, c’est non seulement refuser le risque mais aussi refuser la différence et la découverte. Ainsi, la découverte du vaccin par Pasteur est issue d’une faille dans sa recherche.
7 Algorithme et biais, en guise de conclusion
Bien que scientifique, un algorithme comporte un biais, ne serait-ce que celui du poids accordé à chacun de ses éléments. Il est donc essentiel d’identifier ce biais. Il pourrait même être intéressant de le publier lorsqu’il s’agit de décisions publics.
Ainsi, indiquer qu’un sondage est fait auprès de personnes de 7 à 77 ans, c’est indiquer l’un de ses biais. Mais, il en existe d’autres (ce ne sont que des exemples parmi d’autres) :
– le nombre de personnes de plus de 50 ans peut-être proportionnellement plus important que pour les autres tranches d’âges ;
– la proportion homme-femme peut ne pas être respectée ;
– sonder une personne par année ou deux, ou cinq est un autre biais, car ce type de proportion ne respecte pas la pyramide des âges ;
– faire un sondage dans la rue peut entraîner des biais très insidieux : les sondeurs auront inconsciemment tendance à interroger les personnes les plus avenantes.
– un algorithme, pour prédire l’avenir, se base notamment sur les résultats d’événements similaires qui se sont produits dans le passé. Ce biais là, très insidieux explique la difficulté à prédire des ruptures.
Un algorithme ne peut être exact et le pire biais des algorithmes, c’est de penser que parce c’est mathématique, c’est exact. Cependant, la conscience du biais amène une autre question :
– Faut-il utiliser ou éviter ce biais ?
Finalement, on est libre d’accepter ou de récuser (totalement ou partiellement) les conclusions tirées des résultats produits par un algorithme. En effet, celui-ci n’a aucun pouvoir sur notre libre arbitre hormis celui que l’on veut bien lui accorder. La preuve, vous l’aller trouver ci-dessous.
Addentum du 20 juillet 2018
Lors du passage de Donald Trump au Royaume-Uni, des manifestants l’ont accueilli avec la chanson “American Idiot de Green Day”. Cet événement a amené Google Image à associer le visage de Donald Trump avec le terme « idiot ».
Profitant de cette situation, certains utilisateurs de Reddit ont coordonner leurs efforts afin de renforcer cette association initiée par l’algorithme de Google. Ils ont donc publié une photo du président américain avec le titre « idiot » et cette photo a été taggée par des votes positifs.
Google se base sur la popularité d’une photo et sur les mots-clés qui y sont associés sur Internet pour déterminer les résultats de recherche, la photo de Donald Trump a progressé au point d’être la première image présentée sur Google Images. D’autres photos de M. Trump ont été depuis contaminée.
8 Postface
« Avec le Big data, on fait de l’anticipation basée sur la corrélation. Cette anticipation repose sur un axiome de régularité : ce qui s’est passé dans le passé doit se reproduire. » [6] La corrélation, c’est le « rapport existant entre deux choses, deux notions, deux faits dont l’un implique l’autre et réciproquement. [...] Rapport de dépendance dû à un lien de cause à effet ou un lien créé par une cause commune, [...] Ensemble des influences qu’exercent les uns sur les autres les éléments d’un même organisme ou les organismes vivant dans un même milieu.(Husson 1970) » [7]
La corrélation ne permet donc de penser que les liens. Hors, les grandes découvertes, les grands changements sociaux sont des ruptures de ces liens. Le big data s’appuie sur la corrélation, la régularité. “ Ce qui s’est déjà passé repassera ” est le fondement du big data. Cette anticipation régulière ne permettra donc probablement pas de prévoir les grandes irrégularités voire les ruptures. En effet, un changement de paradigme est un tel bouleversement des points de vue qu’il ne peut être corréler aux évènements le précédant. Toutes les prévisions sont déduites d’un modèle. Hors la rupture de paradigme est par essence antinomique au concept de modèle.
9 En guise d’épilogue, que nous espérons provisoire
Le psychanalyste Roland Gori [8] rappelle qu’à force de comparer, hiérarchiser, normaliser, quantifier, on supprime le lien social en niant la singularité des êtres. L’action qui s’opère sans considération du désir individuel, en prenant en compte les seules lois, statistiques ou formes de régulation, n’est qu’une volonté de contrôle par une rationalisation abstraite qui caractérise le capitalisme comme le fascisme. Nous ne sommes pas des fiches produit.
© Hervé Bernard 2016-2018
- Les sondages et les statistiques sont-ils une image ? À propos de l’absolument relatif 1/2 V2.0
- Les sondages et les statistiques sont-ils une image ? À propos de l’absolument relatif 2/2 V2.0
- Ne confondons pas échantillonnage et marchandage ! (1)
- La faille de la théorie de l’information V4
Algorithme et image 1/2, entretien avec Frédéric Guichard, directeur scientifique de DXO, réalisation Hervé Bernard—Jean-Louis Poitevin, suite en bas de l’article.