Maison  >  Article  >  Périphériques technologiques  >  Extension de la technologie d'application TensorFlow : classification des images

Extension de la technologie d'application TensorFlow : classification des images

王林
王林avant
2023-04-18 16:07:031710parcourir

1. Expansion des opérations de déploiement de l'environnement de la plateforme de recherche scientifique

Pour la formation de modèles en apprentissage automatique, je vous recommande d'apprendre davantage de cours ou de ressources TensorFlow officiels, tels que les deux cours du MOOC de l'université chinoise​《Introduction à TensorFlow pratique Cours d'opérations》​​et​《Cours d'introduction à TensorFlow - Déploiement》​​. Pour la formation distribuée de modèles impliqués dans la recherche ou le travail scientifique, une plate-forme de ressources peut souvent prendre beaucoup de temps et ne pas être en mesure de répondre aux besoins individuels en temps opportun. Ici, je vais faire une extension spécifique de l'utilisation de la plateforme Jiutian Bisheng mentionnée dans l'article précédent "Compréhension préliminaire de l'apprentissage du framework TensorFlow"​​pour permettre aux étudiants et aux utilisateurs d'effectuer plus rapidement une formation sur modèle. Cette plate-forme peut effectuer des tâches telles que la gestion des données et la formation de modèles, et constitue une plate-forme pratique pratique et rapide pour les tâches de recherche scientifique. Les étapes spécifiques de la formation du modèle sont les suivantes :

(1) Inscrivez-vous et connectez-vous à la plateforme Jiutian Bisheng. Étant donné que les tâches de formation ultérieures nécessitent la consommation de beans de puissance de calcul, le nombre de beans de puissance de calcul pour les nouveaux utilisateurs est limité, mais ils peuvent le faire. être obtenu grâce à des tâches telles que le partage avec des amis. Achèvement de l'acquisition de beans de puissance de calcul. Parallèlement, pour les tâches de formation de modèles à grande échelle, afin d'obtenir plus d'espace de stockage de formation de modèles, vous pouvez contacter le personnel de la plateforme par e-mail pour mettre à niveau la console, répondant ainsi aux exigences de stockage de formation requises à l'avenir. Les détails des beans de stockage et de puissance de calcul sont les suivants :

Extension de la technologie d'application TensorFlow : classification des images

(2) Entrez dans l'interface de gestion des données pour déployer les ensembles de données utilisés par le modèle de projet de recherche scientifique et complétez les ensembles de données requis pour la formation du modèle en empaquetant et télécharger les ensembles de données nécessaires aux tâches de recherche scientifique Déploiement sur cette plateforme.

Extension de la technologie d'application TensorFlow : classification des images

(3) Ajoutez une nouvelle instance de formation de projet dans la fenêtre de formation du modèle, sélectionnez l'ensemble de données précédemment importé et les ressources CPU requises. L'instance créée est un fichier modèle unique qui doit être formé pour la recherche scientifique. Les détails de la nouvelle instance de projet sont présentés dans la figure ci-dessous :

Extension de la technologie d'application TensorFlow : classification des images

Extension de la technologie d'application TensorFlow : classification des images

(4) Exécutez la nouvelle instance de projet, c'est-à-dire exécutez l'environnement de formation du projet. Une fois l'opération réussie, vous pouvez choisir l'instance. éditeur jupyter pour créer et modifier le fichier de code requis.

Extension de la technologie d'application TensorFlow : classification des images

Extension de la technologie d'application TensorFlow : classification des images

(5) L'écriture ultérieure du code et la formation du modèle peuvent être effectuées à l'aide de l'éditeur jupyter.

2. Expansion de la technologie de classification d'images

La classification d'images, comme son nom l'indique, consiste à juger les catégories de différentes images en fonction des différences entre les images. Concevoir un modèle discriminant basé sur les différences entre les images est une connaissance qui doit être maîtrisée en apprentissage automatique. Pour les connaissances de base et le processus opérationnel de classification d'images, vous pouvez vous référer au « Cours pratique d'introduction à TensorFlow » sur le MOOC de l'Université chinoise pour comprendre rapidement l'application de base et les idées de conception de TensorFlow. . ​https://www.php.cn/link/b977b532403e14d6681a00f78f95506e

L'objectif principal de ce chapitre est de fournir aux utilisateurs une compréhension plus approfondie de la classification d'images en développant la technologie de classification d'images.

2.1 A quoi sert l'opération de convolution ?

Quand il s'agit de traiter ou de classer des images, il y a une opération incontournable, et cette opération est la convolution. Les opérations de convolution spécifiques peuvent essentiellement être comprises à travers des vidéos d'apprentissage, mais davantage de lecteurs peuvent seulement rester au niveau de la façon d'effectuer des opérations de convolution, et pourquoi la convolution est effectuée et à quoi servent les opérations de convolution. Un peu de connaissances. Voici une extension pour tout le monde pour vous aider à mieux comprendre la convolution.

Le processus de convolution de base est illustré dans la figure ci-dessous. En prenant une image comme exemple, une matrice est utilisée pour représenter l'image. Chaque élément de la matrice est la valeur de pixel correspondante dans l'image. L'opération de convolution consiste à obtenir les valeurs propres de ces petites zones en multipliant le noyau de convolution par la matrice correspondante. Les caractéristiques extraites varieront en raison des différents noyaux de convolution. C'est pourquoi quelqu'un effectuera des opérations de convolution sur différents canaux de l'image pour obtenir les caractéristiques des différents canaux de l'image afin de mieux effectuer les tâches de classification ultérieures.

Extension de la technologie d'application TensorFlow : classification des images

Dans la formation quotidienne du modèle, le noyau de convolution spécifique n'a pas besoin d'être conçu manuellement, mais est automatiquement formé à l'aide du réseau en utilisant l'étiquette réelle de l'image donnée. Cependant, ce processus n'est pas propice à la compréhension du noyau de convolution. Et le processus de convolution, ou pas intuitif. Par conséquent, afin d’aider chacun à mieux comprendre la signification de l’opération de convolution, voici un exemple d’opération de convolution. Comme le montre la matrice ci-dessous, les valeurs numériques représentent les pixels du graphique. Pour faciliter le calcul, seuls 0 et 1 sont pris ici. Il n'est pas difficile de voir que les caractéristiques de ce graphique matriciel sont supérieures. la moitié du graphique est lumineuse et la moitié inférieure du graphique est noire, donc l'image Il y a une ligne de démarcation très claire, c'est-à-dire qu'elle a des caractéristiques horizontales évidentes.

Extension de la technologie d'application TensorFlow : classification des images

Par conséquent, afin de bien extraire les caractéristiques horizontales de la matrice ci-dessus, le noyau de convolution conçu doit également avoir les attributs d'extraction de caractéristiques horizontales. Le noyau de convolution utilisant les attributs d'extraction de caractéristiques verticales est relativement insuffisant dans le degré évident d'extraction de caractéristiques. Comme indiqué ci-dessous, le noyau de convolution qui extrait les caractéristiques horizontales est utilisé pour la convolution :

Extension de la technologie d'application TensorFlow : classification des images

Il ressort de la matrice de résultats de convolution obtenue que les caractéristiques horizontales des graphiques originaux sont bien extraites et que les lignes de séparation des graphiques sera plus évident, car les valeurs de pixels des parties colorées des graphiques sont approfondies, ce qui extrait et met en évidence les caractéristiques horizontales des graphiques. Lors de l'utilisation d'un noyau de convolution qui extrait les caractéristiques verticales pour la convolution :

Extension de la technologie d'application TensorFlow : classification des images

Il peut être vu à partir de la matrice de résultats de convolution obtenue que les caractéristiques horizontales du graphique original peuvent également être extraites, mais deux lignes de démarcation seront générées et la les changements graphiques sont les suivants : De particulièrement clair à clair puis au noir, la situation reflétée sur les graphiques réels passe du clair au foncé puis au noir, ce qui est différent des caractéristiques horizontales des graphiques originaux réels.

Il est facile de savoir à partir des exemples ci-dessus que différents noyaux de convolution affecteront la qualité des caractéristiques graphiques finales extraites. Dans le même temps, les caractéristiques reflétées par différents graphiques sont également différentes. différents attributs de fonctionnalités graphiques ? Il est également particulièrement essentiel de mieux apprendre et concevoir les noyaux de convolution. Dans les projets réels de classification de cartes, il est nécessaire de sélectionner et d’extraire les caractéristiques appropriées en fonction des différences entre les images, et des compromis doivent souvent être pris en compte.​​​​​​​

2.2 Comment envisager la convolution pour une meilleure classification des images ?

Comme vous pouvez le voir sur le rôle des opérations de convolution dans la section précédente, il est particulièrement important de concevoir un modèle de réseau pour mieux apprendre le noyau de convolution qui s'adapte à l'image. Cependant, dans les applications pratiques, l'apprentissage et la formation automatiques sont effectués en convertissant les étiquettes réelles des catégories d'images données en données vectorielles que la machine peut comprendre. Bien entendu, il n’est pas totalement impossible de s’améliorer via des réglages manuels. Bien que les étiquettes de l'ensemble de données soient fixes, nous pouvons choisir différents modèles de réseau en fonction des types d'images de l'ensemble de données. La prise en compte des avantages et des inconvénients des différents modèles de réseau donnera souvent de bons résultats de formation.

Dans le même temps, lors de l'extraction des caractéristiques de l'image, vous pouvez également envisager d'utiliser la méthode d'apprentissage multitâche. Dans les données d'image existantes, utilisez à nouveau les données d'image pour extraire certaines caractéristiques d'image supplémentaires (telles que les caractéristiques de canal et les caractéristiques spatiales de). l'image, etc. ), puis complétez ou remplissez les caractéristiques précédemment extraites pour améliorer les caractéristiques de l'image extraite finale. Bien entendu, cette opération entraînera parfois une redondance des caractéristiques extraites et l'effet de classification obtenu est souvent contre-productif. Par conséquent, il doit être pris en compte sur la base des résultats réels de la classification de la formation.

2.3 Quelques suggestions pour la sélection du modèle de réseau

Le domaine de la classification d'images s'est développé depuis longtemps, du modèle de réseau classique original AlexNet au modèle de réseau ResNet populaire ces dernières années, la technologie de classification d'images est relativement complète. , la précision de la classification de certains ensembles de données d'images couramment utilisés a tendance à atteindre 100 %. À l'heure actuelle, dans ce domaine, la plupart des gens utilisent les derniers modèles de réseau, et dans la plupart des tâches de classification d'images, l'utilisation des derniers modèles de réseau peut en effet apporter des effets de classification évidents. Par conséquent, de nombreuses personnes dans ce domaine ignorent souvent les modèles de réseau précédents et y vont directement. pour découvrir les modèles de réseau les plus récents et les plus populaires.

Ici, je recommande toujours aux lecteurs de se familiariser avec certains modèles de réseau classiques dans le domaine de la classification des graphiques, car les mises à jour technologiques et les itérations sont très rapides, et même les derniers modèles de réseau pourraient être éliminés à l'avenir, mais les principes de fonctionnement. Les modèles de réseau de base sont à peu près les mêmes. En maîtrisant les modèles de réseau classiques, vous pouvez non seulement maîtriser les principes de base, mais également comprendre les différences entre les différents modèles de réseau ainsi que les avantages et les inconvénients du traitement de différentes tâches. Par exemple, lorsque votre ensemble de données d'image est relativement petit, la formation avec le dernier modèle de réseau peut être très complexe et prendre beaucoup de temps, mais l'effet d'amélioration est minime, donc sacrifier votre propre coût de temps de formation pour un effet négligeable ne vaut pas le gain. . Par conséquent, pour maîtriser le modèle de réseau de classification d'images, vous devez savoir de quoi il s'agit et pourquoi il existe afin de pouvoir véritablement être ciblé lors du choix d'un modèle de classification d'images à l'avenir.

Présentation de l'auteur :

Porridge, rédacteur en chef de la communauté 51CTO, a déjà travaillé dans le département de technologie Big Data d'un centre de recherche et développement sur l'intelligence artificielle pour le commerce électronique, en créant des algorithmes de recommandation. Actuellement engagé dans des recherches dans le domaine du traitement du langage naturel, ses principaux domaines d'expertise comprennent les algorithmes de recommandation, le PNL et le CV. Les langages de codage utilisés incluent Java, Python et Scala. Publication d'un document de conférence de l'ICCC.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer