Comment les agriculteurs japonais ont trié les concombres avec l'apprentissage en profondeur et TensorFlow
Les capacités des systèmes cognitifs modernes sont encore limitées, mais au fil du temps, elles se développent et deviennent plus parfaites. Ils sont déjà utilisés dans de nombreux domaines, y compris l'agriculture. Un exemple frappant de cela est un système créé par un ingénieur japonais. Il y a environ un an, un Japonais du nom de Makoto Koike a décidé d'aider ses parents à cultiver des concombres. Au Japon, les concombres grands et directs sont considérés comme des produits extra-classe, donc tous les agriculteurs cherchent à cultiver ces légumes sous cette forme.C'est assez difficile à faire, et Koike en était convaincu par sa propre expérience. «Chaque concombre est différent des autres - ils se présentent tous sous différentes formes, qualités et fraîcheur», explique l'ingénieur. Pour que le produit final soit vendu en magasin, les légumes doivent être triés. Au Japon, il existe neuf classes de concombres. La classification est faite en fonction de la forme, de la taille et d'un certain nombre d'autres propriétés. Plus la classe est élevée, plus le concombre est cher.
Classes de concombres selon les normes japonaises Letri est une affaire compliquée. Et bien qu'il existe des machines de tri automatique au Japon, elles ne sont pas très populaires, car elles sont assez chères et ne fonctionnent pas parfaitement. L'ingénieur a décidé d'aider les parents à réaliser le tri automatique parfait des légumes en créant leur propre trieur. Afin d'améliorer la qualité et l'efficacité d'un tel système, il a décidé d'impliquer les réseaux de neurones dans le tri. Maintenant, ils sont capables de reconnaître et de classer les images avec un haut degré de précision, dépassant les capacités humaines. Cela s'applique à la fois à la vitesse et à la précision.Le fils attentionné a décidé de prendre le développement de Google, TensorFlow, comme base de son algorithme open-source de tri du concombre. Il y a un an, la société venait d'ouvrir le code source de ce produit pour tout le monde. TensorFlow permet au développeur d'utiliser du code prêt à l'emploi et les capacités des réseaux de neurones, plutôt que de tout créer à partir de zéro. Pour créer votre propre projet, vous devez télécharger le code, lire les instructions et vous pouvez commencer à travailler.En plus du code, vous avez également besoin de matériel. Les Japonais ont décidé d'utiliser Arduino Micro et Raspberry Pi 3. L'électronique a été utilisée comme contrôleur principal pour travailler avec la caméra et envoyer des images à Google Cloud, où les informations ont été analysées. Les cartes contrôlent également les servos du trieur.
À la première étape, l'ingénieur a formé le système à reconnaître les images et à déterminer si un concombre ou quelque chose d'autre est représenté sur la photo. Après avoir vérifié l’opérabilité du système, un algorithme plus complexe a été créé, qui a déjà classé les concombres selon les normes adoptées au Japon.Après cela, un système de convoyage et de tri a été développé. La caméra a pris des photos de concombres passant le long du convoyeur, le réseau neuronal les a classés. Il ne restait plus qu'à distribuer les concombres dans des boîtes, en fonction de la classe de chaque légume. Pour cela, Koike a créé un bras robotique, qui était engagé dans un «travail physique».Afin d'obtenir des photographies de concombres de différentes classes triées par sa mère, les Japonais ont passé environ trois mois. Il a dû faire et télécharger sur le système plus de 7000 photos de concombres. Et cela ne suffisait pas. Lorsque le test a été effectué uniquement avec des images, le système a fonctionné avec une précision de 95%. Mais quand il s'agissait de photographier de vrais concombres, la précision est tombée à 70%. Il s'est avéré que le problème est qu'une base de données de plusieurs milliers de photographies ne suffit pas pour une formation de haute qualité du système.Le deuxième problème est que le système consomme beaucoup de ressources, de temps et d'énergie. Le trieur actuel est un ordinateur de bureau Windows standard utilisé pour former un réseau de neurones. Et bien que l'ordinateur convertisse les images reçues par les caméras en images avec une résolution de 80 * 80 pixels, l'apprentissage d'un système basé sur celles-ci prend 2-3 jours. Le fait est que plusieurs milliers de ces photos sont nécessaires. Et comme les photos ont une faible résolution, ce trieur fonctionne avec des propriétés telles que la forme, la longueur et le niveau d'erreur. Couleur, texture, rayures - tout cela passe inaperçu et ne peut pas être utilisé à ce stade. Si vous augmentez la résolution des photos, cela augmentera la précision du système. Mais en même temps, le temps nécessaire pour former le réseau neuronal augmentera également.Le Japonais prévoit de résoudre son problème avec l'aide d'un autre service Google. Désormais, la société propose à bas prix la plateforme cloud Cloud Machine Learning (Cloud ML). Des milliers de serveurs puissants sont impliqués ici. Ils traitent efficacement les informations et aident à former le système neuronal basé sur TensorFlow.Maintenant, Makoto Koike prévoit d'utiliser Google ML à ses propres fins. «Je peux utiliser le service pour créer un système de formation basé sur de bien meilleures images. Je peux également utiliser différentes configurations, paramètres et algorithmes du système neuronal, ce qui peut aider à trouver une option dans laquelle le système sera le plus précis. "Jusqu'à présent, les résultats du travail de Koyke avec Google ML ne sont pas disponibles, poursuit-il. Mais il est possible qu'en quelques mois, la ferme de concombres des parents japonais fournisse des légumes classés exclusivement. Les Japonais sont toujours perfectionnistes.Source: https://habr.com/ru/post/fr397305/
All Articles