Prédire les longueurs de pétale des fleurs d’Iris

Dans un précédent article, nous avons expliqué ce qu’est l’intelligence artificielle, ou plus précisément les algorithmes d’apprentissage qui y sont associés.
Aujourd’hui, nous allons revisiter les principes des algorithmes d’apprentissage, dans un cas concret, où nous allons apprendre à prédire les longueurs des pétales et des sépales de fleurs d’Iris.

Les sépales sont des feuilles spécialisées qui supportent et protègent la fleur tandis que les pétales sont chargées de protéger la fleur et de la rendre attrayante pour les butineurs. Crédit: Sauvages du poitou

 

Imaginons, un groupe d’amis fascinés par les plantes qui s’en va observer des fleurs d’Iris.
Ils se rendent vite compte que toutes les fleurs sont différentes les unes des autres. Et pourtant, la forme des pétales est similaire pour chacune d’elle. C’est à dire que, même si certaines sont plus longues ou plus étroites, de couleur plus sombre, ou un peu fanée, il est relativement facile de reconnaître un iris.

Détail de fleur d’Iris. Le sépale ressemble ici à un pétale mais plus grand. Crédit D. Dubreuil

 

Pour en avoir le cœur net, quelques jours plus tard, notre groupe d’adolescents décide de visiter les jardins et les prés, avec des règles et une idée un peu folle : mesurer et noter les largeurs et les longueurs des sépales et des pétales.
Ils sont 5 et réussissent à mesurer trente Iris chacun, cela fait 150 fleurs.

Un sacrée bouquet ! Mais ils ont bien pris soin de ne pas abîmer les fleurs.

Sur ce graphique, on peut voir les longueurs de sépale selon les longueurs de pétale. Chaque point violet correspond à une fleur et la position du point nous donne les longueurs de pétale et de sépale. Ainsi, le point tout en bas à gauche correspond à une fleur qui a un pétale de longueur 3.3 cm et un sépale de longueur 4.9 cm.

Après avoir réuni toutes les mesures, nos jeunes amis sont allés voir Léa, la grande soeur informaticienne de Jules. Elle leur a demandé de noter tous les chiffres dans un fichier et puis elle a utilisé un logiciel qui permet d’afficher ces points automatiquement, sans qu’ils aient eux-même à dessiner point par point. C’est grâce à elle qu’ils ont pu avoir cette jolie image.

 

Apprentissage

Elle a aussi voulu leur faire un petit jeu. Parmi les 150 fleurs récupérées, elle n’en a affiché que la moitié, 75. Nous verrons plus tard pourquoi. Et puis, elle leur a demandé ce qu’ils pensaient de ces fleurs.
De grandes discussions suivent où ils n’arrivent pas à trancher. Les fleurs ne sont décidément pas toutes pareilles et pourtant elles se ressemblent. Qu’est ce qui ne change pas ? Néanmoins, ils s’aperçoivent que le sépale a tendance à être plus long si le pétale est long. Comme si une fleur plus grande gardait à peu près les mêmes proportions.

Ca c’est une trouvaille, leur dit Léa ! Comment la valider ?

L’hypothèse à valider, est ce qu’on appelle le modèle. Il s’agit de montrer que la longueur du sépale dépend de façon linéaire de la longueur du pétale pour chaque fleur. Plus précisement, on suppose que longueur_sépale = a × longueur_pétale +b.
C’est à dire que si, par exemple, a=2 cm et b =1 cm, alors une fleur avec un pétale de longueur 1 cm aura un sépale de 5 cm, (2×2 +1)  2 fois plus grand que 1 cm auquel on ajoute 1 cm. Et une fleur avec un pétale de 3 cm aura un sépale de 2×3+1 =  7 cm.

Quand on regarde le graphique de points, cela revient à trouver une droite qui passe au plus près des points, et qui permet de décrire le comportement des sépales et pétales en le simplifiant. D’où le mot linéaire (comme une ligne, donc une droite).

Il faut maintenant trouver l’équation de la droite, c’est à dire trouver les deux nombres a et b, aussi appelés paramètres, pour lesquelles longueur_sépale = a × longueur_pétale +b est le plus proche de la réalité.
Pour cela, Léa les aide. Elle leur explique qu’on peut choisir une valeur de a et de b au hasard et tracer une droite, comme sur le graphique ci-dessous. Ensuite, on nomme longueur_sépale_estimée, la variable égale à  a × longueur_pétale +b.
Et on mesure la différence, nombre toujours positif, entre longueur_sépale_vraie et longueur_sépale_estimée. Ce qui revient à mesurer la distance, indiquée par une flèche, entre la droite et le point violet tout à droite du graphique. Cette distance est de à 0.5 cm.

Et puis, il faut faire ce calcul de distance pour chaque point et additionner toutes les distances. Cela nous donne une mesure de l’erreur du modèle, pour une valeur de a et de b donnée.

Léa leur explique alors que l’on peut calculer les valeurs de a et de b qui donnent la plus petite erreur possible. Cela peut se calculer à la main, grâce à ce qu’on appelle en mathématiques l’optimisation et surtout grâce à la résolution d’équation. Mais Léa affirme que l’ordinateur est bien pratique pour faire rapidement tous ces calculs sans se tromper et leur montre la solution trouvée.

Les meilleurs paramètres avec le modèle linéaire sont donc a =0.81 et b = 2.5 cm. Et le modèle est longueur_sépale_estimée = 0.81  ×  longueur_petale + 2.5 cm.
Avec ce modèle, l’erreur moyenne est de 0.3 cm.

Chouette, ça a l’air de coller pas trop mal. Les fleurs d’Iris ont un comportement similaire. A quelques variations de la nature près, on sait comment la longueur du sépale varie par rapport à la longueur du pétale.

Léa dit alors aux jeunes qu’ils viennent d’effectuer la phase d’apprentissage. En utilisant 75 des mesures de fleurs et une hypothèse de modèle linéaire, ils ont ensuite appris les paramètres qui donnent un modèle le plus proche de la réalité. Maintenant, on peut l’utiliser pour prédire les longueurs de sépale !

 

Prédiction

La deuxième étape est l’étape de prédiction. Et bien oui, tant qu’à faire, maintenant qu’on a appris un comportement, et décrit de façon générale la forme des fleurs, on peut l’utiliser sur d’autres fleurs pour vérifier que cela fonctionne encore.

Le modèle n’a été appris que sur la moitié des fleurs, 75. Il en reste encore 75 à tester.
Léa en ajoute d’abord 15, en rouge sur le graphique ci-dessous.  On peut voir en violet, les premières fleurs et en rouge, les fleurs qui viennent d’être ajoutées. Les 15 nouvelles longueurs de sépales estimées par le modèle sont représentées en vert sur la droite. Par exemple, pour le point rouge en bas tout à gauche, la valeur estimée correspond au point vert du dessous, elle est plus petite que la réalité.

Même si ce n’est pas parfait, cela fonctionne encore pas trop mal. Léa ajoute alors les 50 autres fleurs restantes en bleu.

Cette fois-ci, il est évident que cela ne fonctionne pas. Pour ces 50 fleurs bleues, la droite estimée ne convient pas.

Les ados reprennent alors leurs règles et s’en retournent dans les jardins pour retrouver les fleurs aux formes pas si similaires que ça. Heureusement le jardinier n’est pas très loin, il leur explique que le groupe de fleurs représentées par les points bleu correspond en fait à une espèce d’Iris, Iris setosa. Et que toutes les autres fleurs sont des Iris versicolor ou des Iris virginica.
Il semblerait que les formes des fleurs des Iris setosa ne se comporte pas de la même façon que les deux autres.

Crédit inconnu

 

Récapitulatif

A partir de mesures de fleurs, on a fait une hypothèse de modèle linéaire. Puis on a calculé l’équation de la droite la plus proche de la réalité : c’est la phase d’apprentissage. Enfin on a prédit la longueur des sépales des autres fleurs à partir de leurs longueurs de pétale et du modèle : c’est la phase de prédiction.

Ces principes sont les mêmes pour tout algorithme d’apprentissage. Celui-ci que nous venons de voir s’appelle régression linéaire. Tous les autres fonctionnent de manière similaire mais avec des modèles plus compliqués, avec plus de données et plus de variables.
Nous retrouvons ces principes dans de nombreux problèmes de modélisation du réel, en physique, en chimie, en biologie, en économie. Pendant tes études, tu les rencontreras sûrement de nouveau.

Auteur: Emilie Neveu / Sense the science

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *