Le deep learning, ou apprentissage profond, à Cap 2020

Dernière mise à jour : 16 août 2021

Nouveauté de cette année CapTrap Vision évolue et améliore la fiabilité de son comptage de ravageur grâce au deep learning !

Le deep learning, ou apprentissage profond, est une discipline théorisée au cours des années 2010, et qui permet la création d’intelligences artificielles. Différents facteurs ont contribué à son essor :

  • L’existence d’une théorie des réseaux de neurones artificiels développée en continu depuis les années 50 ;

  • La possibilité récente d’entraîner ces réseaux de neurones grâce à la puissance de calcul des machines modernes ;

  • La disponibilité de bases de données colossales pour « nourrir » le modèle, notamment des photos ;

  • Et bien sûr les applications pour lesquelles ces intelligences artificielles sont vitales : robotique, conduite autonome, médecine, traduction automatique, et qui ont largement contribué au financement des recherches dans cette discipline.

C’est en 2012 lors du challenge ImageNet que l’apprentissage profond a montré son intérêt. Le défi consistait alors à déterminer le contenu d’une image et ainsi la classer parmi 1000 catégories (chat, chien, voiture, etc…). L’utilisation de l’apprentissage profond a drastiquement fait baisser l’erreur de classification lors du challenge.

L’image suivante illustre l’exercice : à une image d’entrée correspond une prédiction pour chaque catégorie. Par exemple, dans le cas du léopard, celui-ci est bien reconnu, mais le réseau de neurones considère aussi la possibilité que ce soit un guépard, avec une probabilité moindre.

Crédit : https://blog.acolyer.org/2016/04/20/imagenet-classification-with-deep-convolutional-neural-networks/



Plus modestement, chez Cap 2020 nous utilisons l’apprentissage profond et les réseaux de neurones pour déterminer l’espèce d’un insecte : nous avons les outils pour coder le réseau de neurones, nous avons le matériel pour l’entraîner, mais notre expérience (et le consensus scientifique) ont montré que le plus important pour avoir une bonne performance reste la qualité du jeu de données avec lequel le réseau de neurones va apprendre “en profondeur”.

Un jeu de données de qualité ici, ce sont de belles images d’insectes correctement labellisées.


L’acquisition : la première étape pour constituer un jeu de données de qualité !

Nous prenons soin d’acquérir un jeu de données en conditions réelles, au champ, avec le CapTrap Vision, c’est-à-dire le même matériel qui servira ensuite aux déploiements opérationnels chez nos clients. En effet, inutile d’avoir une fiabilité irréprochable… en labo. Nous avons de plus beaucoup travaillé sur la qualité et la robustesse de la prise d’image et obtenons avec CapTrap vision des images d’insectes de qualité nous permettant d’entrainer de façon efficace les réseaux de neurones.



La labellisation, ou pourquoi il faut toujours un humain expert dans la boucle

Vous avez déjà cliqué sur des photos pour prouver que vous n’êtes pas un robot ? Vous avez donc certainement participé à l’entrainement d’une IA en labellisant des images… à votre insu ! (https://www.techradar.com/news/captcha-if-you-can-how-youve-been-training-ai-for-years-without-realising-it)

Pour le sujet qui nous intéresse, la labellisation consiste pour un « expert » à étiqueter les insectes par espèce afin de créer une base de données d’apprentissage pour le réseau de neurones. Ce dernier va alors « apprendre » : il va extraire de lui-même les caractéristiques communes à une espèce, et ainsi pouvoir reconnaître de nouveaux individus.


Errare humanum est

La labellisation est faite par un humain, qui peut se tromper, mais quelles sont les conséquences d’erreurs de labellisation sur l’entrainement et la performance d’un réseau de neurones ?

Plaçons-nous dans le cas de la classification du ver de grappe eudémis. On se place dans un cas de figure relativement simple où notre jeu de données a été labellisé avec 2 classes : eudémis et non-eudémis. Cette seconde classe contient d’autres insectes comme des mouches ou des cicadelles. Sur les images prises par le piège, les cicadelles peuvent être source d’erreurs de labellisation pour un œil non avisé, car elles sont de taille et de forme semblables à certains eudémis selon la façon dont elles peuvent se coller sur la feuille de glue.

Avec un jeu de données d’entrainement « parfait » c’est-à-dire sans aucune erreur de labellisation, notre réseau de neurones atteint une fiabilité de 96.5%. La fiabilité de notre réseau à reconnaitre les cicadelles est autour de 90 %.

1. Prédiction = 0.448 à Non-eudemis ; 2. Prédiction = 0.999 à Eudemis ; 3. Prédiction = 0.998 à Eudemis


Sur le terrain le piège va faire comme ci-dessus. Il extrait une vignette pour chaque insecte, puis réalise une prédiction sur sa classe. Plus la prédiction tend vers 1, plus il y a de chances que l’insecte soit un eudémis.

Ici on constate que tout se passe bien. Les Eudémis (objets 2 et 3) sont bien reconnus avec une bonne confiance. En revanche le réseau de neurones rejette bien la cicadelle (1) en non eudémis.


Sabotage ?

Que se passe-t-il lorsque nous « sabotons » notre jeu de données ? Pour cela nous allons mal labelliser seulement 10 cicadelles du jeu d’entraînement, soit moins de 1% du jeu d’entraînement. Nous nous plaçons ainsi dans le contexte d’une erreur d’attention lors d’une labellisation utilisant les images du piège (il est plus facile pour un opérateur de distinguer cicadelles et eudémis en regardant directement une plaque).

La précision finale du réseau de neurone diminue alors à 93.9% avec une fiabilité à distinguer les eudémis et les non eudémis qui reste correcte mais une incapacité à reconnaitre les cicadelles avec une fiabilité passant de 90 % à 30 %. Cela signifie que le piège saura toujours correctement distinguer les eudémis et les mouches ou autres papillons mais qu’un vol de cicadelle occasionnera de nombreux faux positifs qui pourraient être critiques pour la prise de décision.


En conclusion

Ainsi, l’étape de labellisation est une étape cruciale dans la création d’un réseau de neurones destiné à reconnaître des insectes. Certains ravageurs comme eudémis ne nécessite pas forcément de faire appel à un spécialiste pour classer le jeu de données, mais ce n’est pas pour cela qu’il faut prendre cette étape à la légère car quelques erreurs peuvent être lourdes en conséquences sur la fiabilité d’un dispositif qui sera ensuite la pierre angulaire du conseil pour nos clients.