Qu’est-ce qu’une donnée sèche ?

C’est une donnée numérique ou symbolique dont on ne communique pas la précision.

Lorsque l’on rencontre un ingénieur en mécanique, en électricité, ou professionnel d’une autre technique et qu’on lui dit qu’une grandeur vaut 1 mètre par exemple, il réagit immédiatement en demandant « plus ou moins combien ? ». Il veut connaitre l’incertitude sur la mesure.

C’est un réflexe pour lui car la façon dont il traitera cette grandeur sera différente selon cette précision. La prise en considération, la recherche d’une solution, ses propositions, ses alertes, sa démarche, tout son travail sera impacté par cet intervalle d’incertitude.

Si on lui indique une précision élevée, il ira jusqu’à demander des renseignements sur l’appareil utilisé pour effectuer la mesure, son étalonnage, sur les conditions de température lors de la prise de mesure etc…

Si on ne lui indique pas de précision, soit il refera la mesure lui-même si cela est possible afin d’en obtenir une, soit il estimera l’intervalle d’incertitude en le majorant pour ne prendre aucun risque.

En physique la donnée sèche n’existe pas. Heureusement, sinon les ponts s’écrouleraient.

Mais paradoxalement les experts de la donnée que sont les datascientists sont très peu nombreux à avoir conscience de la nécessité d’associer à chaque donnée son incertitude. Et cela a des conséquences dont la plupart sont malheureusement masquées … un certain temps.

Incertitude et plausibilité

Dans le monde réel, la donnée n’est jamais certaine. Elle a été produite par un système amont dont on ne connait généralement rien ou par un individu qui a pu interpréter certains phénomènes à sa façon.

On peut définir deux notions autour de la donnée, qu’elle soit numérique ou symbolique :

  • Son incertitude, c’est-à-dire la plage de valeur dans laquelle elle se situe réellement
  • Sa plausibilité, c’est-à-dire le niveau de confiance qu’on peut lui accorder

Par exemple, un policier reçoit un témoignage sur un accident au cours duquel l’auteur s’est enfui au volant de sa voiture, le témoin indique que la voiture était vert foncé. Il s’agit d’une donnée sèche, le témoin ne laisse aucun doute sur la couleur du véhicule. A ce moment, le policier peut estimer la plausibilité de cette donnée (il faisait sombre, la scène s’est déroulée très vite, le témoin présente une mauvaise vue, …). Une incertitude est alors la bienvenue afin de ne pas exclure de l’enquête les voitures bleues, noires ou grises qui pourraient apparaitre vert foncé sous la lumière des éclairages publics.

Autre exemple, un professeur de français affecte à la copie d’un élève une note de 14. C’est une donnée sèche. Est-ce qu’un autre jour, dans un contexte différent il n’aurait pas mis 13 ou 14,5 à cette même copie ? Est-ce qu’un autre professeur n’aurait pas lui aussi mis 13,5 ou 15 ? quelle est la précision de la note ? Est-ce que la précision de la note sur une copie de français est la même que sur une copie de maths ? Est-ce qu’une note établie par un remplaçant du prof de math a la même précision que celle du titulaire ?

Pour chaque donnée il faut connaitre ou évaluer sa plausibilité et son incertitude si l’on veut faire un travail correct. Il faudra alors faire varier cette donnée sur tout son domaine d’incertitude pour voir si les conclusions sont les mêmes ou si un doute apparaît.

Quelles conséquences ?

Si le policier n’évalue pas la plausibilité des indications qu’on lui communique, s’il ne relativise pas les récits des témoins en leur affectant une incertitude bienveillante, il peut commettre des erreurs d’analyse. En supprimant le doute on peut laisser en liberté des assassins et condamner des innocents.

Si l’enseignant n’affecte pas une incertitude a sa notation, en fin d’année certains élèves seront lésés, on leur refusera l’accès à un enseignement supérieur, leurs vies basculeront littéralement à cet instant, juste pour une copie notée plus durement que les autres ce jour-là. Juste pour un datascientist qui n’aura pas fait son travail correctement.

Ce phénomène touche toutes les professions, le refus de voir la réalité en face peut avoir des conséquences dramatiques pour certains individus, quel que soit le domaine concerné.

Dans les cas le plus graves, des processus sont mis en place pour analyser la plausibilité du résultat après coup. Des comités, des assemblées, des tribunaux apportent leur avis et peuvent contester les conclusions. Ces processus sont très onéreux et toujours imparfaits, car les investigations non faites n’ont pas fourni les informations qui permettraient d’éclairer la décision efficacement et légitimement.

A-t-on le droit d’ignorer la plausibilité et l’incertitude sur les données par inconscience, incompétence, insouciance, voire paresse ? c’est une question fondamentale d’éthique.

Quelle est la différence entre plausibilité et probabilité ?

Lorsque j’emploie le terme de « plausibilité », mes interlocuteurs le substituent fréquemment par le terme « probabilité ».

Une probabilité représente un ratio défini sur un ensemble de possibilités. Pour pouvoir la calculer il faut que ce champ des possibles soit dénombrable, ce qui n’est pas toujours le cas dans la pratique.

Dans un champ des possibles ouvert et en expansion, d’après le théorème de Gödel il y a indécidabilité, donc pas de probabilité. On a recours alors à la plausibilité.

Si l’on considère un dé non pipé, la probabilité que le dé affiche le chiffre « 4 » par exemple, est de 1/6. En revanche la plausibilité d’afficher un « 4 » est de 1, celle d’un « 7 » est 0. Pour un ensemble dénombrable, sur lequel une probabilité est calculable concernant un phénomène parfaitement défini, la plausibilité est binaire, égale à 1 si la probabilité est non nulle et à 0 dans le cas contraire. De fait dans ce cas calculer la plausibilité est superflu.

La plausibilité est liée à l’ambiguïté d’une donnée ou l’imprecision d’un phénomène, par exemple l’interprétation d’un terme. Si l’on capte un message mentionnant une commande de « 200 fraises » et que l’on ne connait rien de l’émetteur ou du destinataire, il est alors plausible qu’il s’agisse de fruits ou bien d’outil de dentiste. Certains indices peuvent faire penser qu’une des deux conjectures est plus plausible que l’autre, on peut alors définir une grandeur relative entre 0 et 1 caractérisant ces deux alternatives, sans oublier qu’il peut en exister d’autres auxquelles nous n’avons pas pensé. La plausibilité est donc une notion relative permettant de comparer plusieurs conjectures alors que la probabilité est une fonction de pondération d’un espace de possibilités.

Qualité des données

Lorsque l’on évoque l’incertitude ou la plausibilité des données, certains datascientists parlent de qualité des données, ce sont deux sujets disjoints.

Des jeux de données, notamment ceux utilisés pour apprentissage d’un algorithme, peuvent contenir des données aberrantes ou non représentatives, qu’il faut supprimer afin de ne pas biaiser l’apprentissage. On parle alors de nettoyage des données.

J’attire l’attention sur le fait qu’un nettoyage des données peut avoir des effets pervers et supprimer des signaux faibles porteurs d’informations sur des exceptions annonciatrices d’un changement ou d’un défaut dont la détection précoce serait bien utile. Il ne faut donc pas prendre à la légère cette opération.

Mais le fait que des données soient « propres », n’indique rien quant à leur incertitude. On ne peut pas réduire l’intervalle d’incertitude, celui-ci est dû à la source de la donnée et à son traitement antérieur à notre réception. Nous sommes obligés d’en tenir compte dans les analyses.

Précision des algorithmes

D’autres data-scientistes m’objectent régulièrement le fait que leur algorithme fétiche contient un paramètre « précision » qui est selon eux « là pour ça ».

Il s’agit d’une confusion, le paramètre de précision d’un algorithme est utilisé pour arrêter le processus d’affinement des résultats. Il ne prend pas en compte l’incertitude sur les données entrantes, mais celle générée en supplément par l’algorithme lui-même.

Comment faire ?

En premier lieu il est nécessaire d’affecter aux données reçues une incertitude. Si elles en sont dépourvues il faut en estimer une en se positionnant sur un majorant. L’incertitude dépend de la donnée, de sa source, de l’émetteur, des traitements amonts, … en conséquence il s’agit généralement d’une approximation majorante.

Chaque donnée doit disposer de son incertitude, prendre une incertitude globale serait trop pénalisant pour les algorithmes, sauf si les données sont produites par le même processus à partir de données elles même equi-incertaines, ce qu’il faut démontrer.

Il faut ensuite savoir quel est l’effet de cette incertitude sur les résultats. Plusieurs cas peuvent se présenter :

  • Lorsqu’une donnée se trouve dans une zone périphérique d’une catégorie, en fonction de sa valeur dans son intervalle d’incertitude, elle peut faire basculer d’une catégorie à l’autre. Il est alors nécessaire de calculer la plausibilité de chaque cas et de donner en résultat les deux (ou plusieurs) conjectures avec leur plausibilité.
    • Si la fonction de transformation de l’algorithme est monotone, il suffit de calculer une fois pour la valeur basse et une fois pour la valeur haute pour constater si le résultat change ou non
    • Si la fonction n’est pas monotone, il faut en plus tester avec les valeurs ou la dérivée de la fonction de transformation s’annule sur l’intervalle d’incertitude
  • Lorsqu’une donnée se trouve proche du barycentre d’une catégorie et que celle-ci est suffisamment distante des autres, alors toutes les valeurs de l’intervalle d’incertitude donneront le même résultat. Il est alors facile de calculer la composition des incertitudes pour le démontrer et ce n’est donc pas nécessaire de faire varier la donnée sur son intervalle d’incertitude

On le voit, introduire l’incertitude nécessite de mieux connaitre la donnée ainsi que l’algorithme et augmente le nombre de passages de l’algorithme dans les zones d’ambiguïté. Cela change aussi le type de réponse puisqu’il y aura soit une seule catégorie identifiée, soit plusieurs.

Bien évidemment, l’incertitude sur les données peut avoir une conséquence sur les apprentissages, il faut également s’assurer que la distribution des données en présence couvre tous les intervalles d’incertitude sur les données. Il faut également introduire l’incertitude de l’apprentissage dans la restitution de la catégorisation effectuée.

Lutter contre les faux positifs

Bien des algorithmes de machine learning fournissent des résultats sans tenir compte des incertitudes sur les données. En réalisant un test par rapport a des catégories pré-identifiées par un autre moyen, on détermine un taux de succès, par exemple 95%. Ce taux signifie que lorsque l’algorithme effectue une catégorisation il y a 5% des cas où il se trompe. Mais bien sûr on ne sait pas lesquels.

Lorsque l’on travaille sur des masses sans conséquence grave (par exemple une sélection de cibles pour une campagne marketing) qu’il existe 5% de faux positifs peut ne pas être gênant. Cela a un impact financier mais qui doit être comparé au surcoût engendré par un travail plus approfondi au niveau de l’algorithmie pour tenir compte de l’incertitude des données.

En revanche, quand on est utilisateur individuel, on supporte mal de recevoir une information présentée comme certaine qui n’est vraie que dans 95% des cas, sans savoir si l’on est dans les « bons » ou dans les « faux ». Imaginez annoncer à quelqu’un « prenez ce médicament » tout en sachant que dans 5% des cas il peut être nocif, inacceptable !

Introduire l’incertitude et la plausibilité dans les calculs, supprime les faux positifs et faux négatifs en les remplaçant par une présentation des ambiguïtés afin que chacun puisse se positionner en connaissance de cause. Pour illustrer, un algorithme catégorisant des cas selon 4 catégories pourrait prédire :

  • Vous êtes dans la catégorie A avec une plausibilité de 100%
  • Vous êtes dans la catégorie A avec une plausibilité de 77%, ou dans la B avec une plausibilité de 48%, mais ni dans la C ni dans la D (plausibilité à 0).

Avec la seconde réponse, on voit au passage que la somme des plausibilités n’est pas égale à 1, contrairement aux probabilités.

Le traitement peut alors être par exemple de faire intervenir un expert humain pour prendre la décision, ou simplement présenter les deux alternatives à l’usager du service.

Voir le processeur catis de notre fond technologique m8-ai qui met en oeuvre des algorithmes de machine learning et deep learning en intégrant les incertitudes sur les données d’entrées et en fournissant des résultats pouvant être multiples et disposants d’une plausibilité. Ce processeur est distribué par la société Cleverm8.

Jean Pierre MALLE