Le Machine Learning Blog

Comment faire un classificateur d'images sans coder. Partie 1

no coding

Dans cet article, j'expliquerai comment créer un classificateur d'images sans coder, en utilisant les outils existants disponibles sur le marché. Ce tutoriel est destiné aux débutants dans les domaines du machine learning et aux passionnés d’intelligence artificielle qui n’ont pas de compétences informatiques.

Pourquoi j'ai décidé d'écrire ce tutoriel?

Il y a beaucoup de personnes dans le monde qui pourraient bénéficier du Machine Learning mais qui ne savent pas comment coder. Ma mission est de rendre l'intelligence artificielle accessible à tous et je pense que cela pourrait être un bon moyen de faire les gens mieux comprendre le sujet!

power to the data

Dans ce tutoriel, nous utiliserons un nouveau service incroyablement puissant de Google Cloud, appelé Auto ML Vision, qui est actuellement en version bêta (ce qui signifie que vous ne devriez l'utiliser que pour des tests, jamais en production, car le produit pourrait changer sans aucun avertissement).

Pour construire un classificateur d'images, vous aurez besoin de trois choses:

  1. Une bonne idée de ce que vous voulez réaliser
  2. Un dataset d'images
  3. Un compte Google Cloud

Ce tutoriel est divisé en trois parties. La première partie de ce tutoriel se concentrera sur l'explication de c'est que c'est qu'un classificateur d'images et sur ce que vous pouvez en faire. Allons-y!

lets get it on

Qu'est-ce que la classification des images?

En tant qu'êtres humains, nous pouvons facilement dire ce que nous regardons en le regardant moins d'une seconde.

Nous acquérons cette compétence dès le plus jeune âge, car elle est essentielle à notre survie.

Un bébé de deux mois est capable de classer les visages qu'il voit en trois catégories: «maman», «papa» et «autres personnes».

Au moment où ils ont un an, ils sont déjà en mesure de traiter les informations qu'ils voient et décident avec un niveau élevé de confiance et d'exactitude parmi des milliers de catégories et de sous-catégories telles que "animaux", "fruits", "personnes", " couleurs ", etc.

 

baby image classification

Un bébé est capable de distinguer un chien d'un chat même si c'est la première fois qu'il voit l'image en question.

Ceci est la classification d'images. La possibilité de regarder une image et de décider ce que c'est ou en d'autres termes, quelle "étiquette" lui attribuer.

Dans la vraie vie, il y a des millions et des millions d'étiquettes, organisées en différentes catégories et sous-catégories.

Elle est où la difficulté?

En tant qu'êtres humains, nous pouvons apprendre et mémoriser des millions d'étiquettes et classer les objets en un instant. Les ordinateurs, par contre, ne voient pas les objets dans leur ensemble. Les machines ne comprennent pas les concepts, elles ne voient que les pixels dans une image et leurs valeurs correspondantes.

 

human vision vs computer vision

 

 

Si nous voulons apprendre à une machine ce qu'est qu'un objet, nous devons le lui expliquer en termes compréhensibles.

Prenons l'exemple d'une pomme. Au début, on pourrait dire qu'il est facile d'expliquer ce qu'est qu'une pomme. C'est rouge et c'est rond, n'est-ce pas? Mais que se passe-t-il si la pomme a une autre couleur, une forme différente ou même s'il y a d'autres objets dans l'image?

apple image classification

Ce n'est pas une bonne idée de faire des règles et des exceptions aux règles, mais plutôt d'essayer de comprendre quelle est "l'empreinte numérique" d'un objet.

Il s'avère que si nous avons suffisamment d'exemples d'un objet, nous pouvons calculer la fonction mathématique qui définit cet objet.

La classification des images dans le contexte de l'apprentissage automatique est l'art de traiter plusieurs images d'un objet et de calculer la fonction mathématique qui définit cet objet. C'est ce que l'on appelle plus communément "l'entraînement d'un modèle" et c'est ce que font les professionnels du machine learning pour gagner leur pain.

Une fois qu'un modèle a été entraîné, il peut être utilisé pour prédire si une nouvelle image est un objet déterminé ou non.

Inutile de dire qu'un modèle peut être entraîné pour classifier plusieurs étiquettes.

image classification

Quelles sont les utilisations pratiques de la classification des images?

Maintenant que nous savons c'est que c'est que la classification des images, nous pouvons apprendre à un ordinateur à reconnaître plusieurs étiquettes sur les images. Voici quelques utilisations courantes de la classification des images:

 

Reconnaissance des nombres et des caractères:

C'est la possibilité de reconnaître des caractères sur une image (même s'ils sont manuscrits). Ceci est utilisé par les services postaux du monde entier, mais il est également utilisé dans les systèmes de sécurité (numérisation de badges, numéros d'immatriculation de voitures, etc.).

number recognition

La reconnaissance faciale:

Les systèmes de sécurité du monde entier pourraient être améliorés s’ils apprennent à classer les visages dans une image. Il est actuellement utilisé par Apple sur l'iPhone X. Il y a même un projet visant à aider les policiers à retrouver les personnes disparues en comparant les visages dans la rue à une base de données de personnes disparues.

face recognition

 

Reconnaissance des produits:

Les supermarchés et les magasins de détail du monde entier pourraient tirer parti de cette technologie. Cela pourrait aider les entreprises à avoir une meilleure idée de leur marché, à mieux gérer les étagères et à suivre leurs produits.

product classification

Aider les médecins.

Un modèle a été récemment entraîné pour lire des images et dire s'il y a un cancer ou non. Les applications dans le domaine médical sont énormes!

cancer recognition machine learning

Identifier les interactions humaines et prédire l'avenir

En 2016, des chercheurs du MIT ont entraîné un modèle avec des images provenant de séquences vidéo, afin d'essayer de prédire ce que les gens sur l'image étaient sur le point de faire. Ils ont entraîné un modèle pour voir une image avant l'action et comprendre si les gens étaient sur le point de s'embrasser, de se donner un câlin ou de se toper la main. C'est un exemple incroyable d'apprentissage automatique utilisé pour prédire l'avenir.

future prediction with machine learning

Identifier des concepts abstraits

Les ordinateurs ne sont pas seulement capables de reconnaître des objets simples tels que les "chiens" et les "chats", mais nous pouvons également leur apprendre à reconnaître des concepts abstraits tels que "cubisme", "expressionnisme" et "impressionnisme" et même fusioner les concept avec une image existante. Les résultats sont incroyables!

machine learning art

 

Avec suffisamment de données, nous pouvons entraîner une machine à identifier ce que nous voulons sur une image. Les possibilités sont infinies! Avant de vous lancer sur ce tutoriel, vous devrez décider de ce que vous voulez en faire. Je vous suggère de commencer simplement par définir deux étiquettes.

Êtes-vous en mesure de voir une image et de l'etiquetter en moins de deux secondes? Si vous ne pouvez pas le faire, votre modèle ne pourra pas non plus le faire.

Dans ce tutoriel, je vais créer une application qui pourra dire si mes enfants joueraient en sécurité autour d’un objet et je l’appellerai "est-ce que je peux le prendre?".

can i hug it

Avec un peu de chance, je pourrai vendre ma technologie aux fabricants de caméras de surveillance pour bébés afin qu'ils puissent alerter les parents lorsque des enfants tentent de jouer avec leur hache médiévale.

Continuez à lire la deuxième partie de ce tutoriel.

Intelligence Artificielle
Apprentissage profond
Transformation digitale
Apprentissage supervisé
Apprentissage automatique