explosion grande de l'apprentissage approfondi d'entrée, vous devez savoir que quatre des plus populaires cadres

Source: Big Data DT

Auteur: Lu Yu son

Cet article sur 2800 mots Suggestions de lecture 9 minutes.

Il est prévisible que la profondeur de l'apprentissage sera le plus populaire ces dernières années, l'une des méthodes les plus efficaces d'apprentissage de la machine.

Apporter une contribution significative à la profondeur de l'apprentissage Yoshua Bengio, lui et Yann LeCun et Geofrey Hinton, qui, en Mars a remporté le Prix Turing. Ces dernières années, la grande explosion de la technologie de l'apprentissage en profondeur, en plus de percée théorique, ainsi que la percée des infrastructures, celles-ci ont jeté les bases de la prospérité et le développement de l'apprentissage en profondeur.

Il est prévisible que la profondeur de l'apprentissage si un maintenant, ou après une période de temps dans la ville est le plus populaire, les méthodes d'apprentissage de la machine les plus efficaces.

étude approfondie de la contribution de 00

l'apprentissage en profondeur est une idée, un mode d'apprentissage, la profondeur du réseau de neurones est une sorte de modèle, tant en essence est pas la même chose. Mais on croyait généralement que la profondeur du réseau de neurones de l'apprentissage en profondeur.

Avant réseau de neurones de profondeur, une vision d'ordinateur classique, extraction de caractéristiques de reconnaissance vocale et la classification est de concevoir séparément faire, puis lorsqu'ils sont appliqués ensemble à nouveau. Par exemple, si l'image d'entrée est une moto, vous devez d'abord un procédé dans lequel l'expression ou l'extraction de caractéristiques, et ensuite dans les caractéristiques d'expression algorithme d'apprentissage pour apprendre la classification.

Étant donné que les caractéristiques de conception manuelle nécessite beaucoup d'expérience, nous avons besoin d'avoir un aperçu et des données dans ce domaine, et après fonctionnalité conçue nécessite aussi beaucoup de débogage et un peu de chance. Une autre difficulté est que vous avez seulement besoin de concevoir manuellement fonctionnalités, mais aussi un algorithme de classification plus appropriée sur cette base. Si vous voulez faire les caractéristiques de conception et classificateur combinaison de la conception et des résultats optimaux, tâche presque impossible.

Après 2012, la profondeur du réseau de neurones pour faire une percée dans la vision par ordinateur, la reconnaissance vocale, le traitement du langage naturel et d'autres domaines, en particulier la précision de l'application en reconnaissance faciale, la traduction automatique et d'autres zones à proximité ou au-dessus du niveau humain. La profondeur du réseau neuronal représenté sur la figure 1-1.

1-1 profondeur du réseau de neurones de la figure schématique

Le plus important est la profondeur de la capacité du réseau de neurones à apprendre, Vous allez d'un bout des données jetées dans le modèle de l'autre extrémité est sorti Au milieu de toutes les fonctionnalités que vous pouvez être résolus par eux-mêmes l'apprentissage, et non plus besoin d'aller manuellement aux caractéristiques de conception.

Dans cet article, le présent et l'avenir du populaire cadre d'apprentissage profond introduit, si vous avez connaissance de ces cadres, et même pratiqué, qui va bien. Si vous ne connaissez pas ou n'avez pas utilisé ces cadres, ne vous inquiétez pas trop, construire ensemble à partir de zéro.

01 tensorflow

Tensorflow Apache License 2.0 est un protocole basé sur la bibliothèque de logiciels libres pour le calcul numérique de haute performance. Grâce à son architecture flexible, les utilisateurs peuvent facilement déployer sur plusieurs plates-formes (calculs CPU, GPU, TPU) et les périphériques (bureau, en cluster des serveurs, des appareils mobiles, les appareils de bord, etc.).

Tensorflow développé à l'origine par l'équipe Google cerveau des chercheurs et des ingénieurs pour développer et fournir un soutien solide pour l'apprentissage de la machine et l'apprentissage en profondeur, et son noyau numérique souple largement utilisé dans de nombreux autres domaines de la science.

Tensorflow appartenant à la deuxième génération de l'intelligence artificielle, l'apprentissage de la machine est un cadre commun, a une bonne flexibilité et la portabilité, etc. . Tensorflow a une très bonne flexibilité, tout en soutenant parallèle avec le modèle parallèle de données peut être répartie sur la formation de grands groupes.

Et Caffe représente la première génération de moteurs différents d'apprentissage en profondeur, tensorflow offre une fonction différentielle automatique, nous ne possédons pas le code de calcul différentiel et l'écriture lors de l'ajout d'une nouvelle couche de temps, ce qui facilite grandement l'expansion du réseau.

De plus, tensorflow offre beaucoup d'interfaces linguistiques, de C / C ++, Python, Java et même maintenant en JavaScript, Langues prises en charge très large , Et donc très populaire.

Ensuite, nous expliquons en détail la tensorflow Modèle de calcul .

Les tâches informatiques complètes tensorflow sont extraites dans un plan (graphique), chaque étape de calcul est une petite opération (opération), de sorte que toutes les tâches de calcul est une opération composée d'une petite figure.

Ces contraintes peuvent être plus abstraites, nous utilisons un vrai tensorflow graphique pour illustrer ces concepts, représentés à la figure 1-3.

Les figures 1-3 représentent une série de calculs. Nous définissons d'abord une constante d'opération d'utilisation constante, puis divisé en deux chemins, une première constante de chemin a été calculé en additionnant les résultats de l'opération d'ajout 1, et calcule ensuite une DS1 de données de lecture de l'extérieur, et en multipliant le résultat de l'addition, avg Enfin, le fonctionnement et chercher mul ajouter et moyennes opérations.

Une autre façon est d'utiliser la constante de fonctionnement mul multiplié par 2, puis lit la DS2 de données de l'extérieur, et l'addition et les résultats Mul faire, alors le résultat est affecté à un INT_RESULT variable temporaire. Enfin, l'opération d'ajout et le résultat de INT_RESULT avg ajouté pour obtenir le résultat final.

. La figure 1-3 tensorflow exemple de calcul de la Fig.

Cela peut être vu dans la figure 1-3, il y a beaucoup d'éléments, tels que nous serons constant, ajouter, appel mul d'exploitation (En service). Le fonctionnement est le noeud principal de la Fig. De plus, il y aura une opération d'entrée de données, telles que DS1 et DS2. Nous pouvons également enregistrer l'état intermédiaire par la définition des variables (variables), tels que INT_RESULT.

Chaque noeud est responsable de l'établissement d'un processus Tensor (Tensor). Tenseur est un tableau multidimensionnel, représente une mathématique multidimensionnelle de vecteur. Si nous avons affaire à un certain nombre de points de dispersion dans le plan, les données peuvent devoir être traitées comme un vecteur à deux dimensions (x et Y représentent des points), nous pouvons traiter le traitement de l'ensemble des données opération entre les différents noeuds Tensor débit (débit), ce qui explique pourquoi le nom du cadre est appelé tensorflow.

La première étape consiste à utiliser tensorflow tâches de calcul construit une carte. Mais juste ne peut pas décrire le processus de calcul, nous avons besoin d'écrire des tâches exécutables, vous devez créer une session (session). Le rôle de la session est de créer un contexte d'exécution (contexte), tous les chiffres doivent être effectuées lors de la session, la session initialiser et enregistrer une figure de variable nécessaire pour effectuer diagramme d'état, les appareils Exécute de gestion (CPU et GPU) et ainsi de suite.

Ainsi, nous pouvons voir, Tensorflow structure très simple Seulement besoin de construire une représentation de la carte de calcul et la carte pour créer une session pour effectuer, aide tensorflow nous cacher tous les autres détails, donc nous ne pouvons pas calculer l'intérêt de ces menus détails.

02 tensorflow Lite

Tensorflow est le cadre le plus d'apprentissage profond complet et puissant, dans l'industrie du serveur a la profondeur de champ d'étude est une norme indiscutable de fait, mais dans le domaine des plates-formes mobiles et embarquées, tensorflow devient trop grand et encombrant, et la vitesse de calcul ne répond pas aux exigences des plates-formes mobiles. Pour résoudre ce problème, Google a développé tensorflow Lite, Tensorflow pour obtenir la poursuite de l'écosystème de la plate-forme mobile.

Tensorflow Lite est un cadre de profondeur open source d'apprentissage pour le côté dispositif d'inférence, qui est actuellement utilisé comme une version tensorflow du module, mais nous avons besoin de savoir tensorflow Lite et tensorflow près de deux projets distincts, pas de code partagé entre les deux base . Par conséquent, nous pouvons dire tensorflow Lite est un cadre de moteur de calcul avant complet et indépendant.

Utilisez tensorflow Lite besoin de former seuls certains modèles légers pour les plates-formes mobiles, ce qui réduit le nombre de paramètres pour améliorer la vitesse de calcul. En même temps, tensorflow Lite fournit également un outil de conversion de modèle pour les modèles tensorflow directement dans tensorflow modèle Lite La compression et le stockage, mais aussi à réaliser le modèle, mais aussi pour obtenir un des paramètres du modèle quantitatif. Ceci peut être réalisé dans la formation sur le serveur tensorflow, la scène dans les applications de la plate-forme mobile.

De plus, TesnorFlow Lite nous avons besoin de ce paquet dans le fichier converti à tflite App ou le dispositif de stockage cible. Il sera chargé dans les appareils mobiles ou embarqués lorsque tensorflow Lite démarre.

Enfin, TesnorFlow Lite avant de la plate-forme mobile est calculée optimisée pour accélérer les opérations en virgule flottante, dont la moitié précision des opérations à virgule flottante, et le calcul huit quantification de nombre entier, même sur appel applications sur le GPU, soit en mode proxy NNAPI .

03 MXNet

Apache MXNet est un cadre d'apprentissage profond, l'objectif principal est d'assurer la flexibilité et l'efficacité dans la mise en uvre du cadre d'apprentissage en profondeur. Il vous permet de mélanger des symboles et la programmation impérative, Afin de maximiser l'efficacité et la productivité .

Le noyau est une dépendance dynamique MXNet ordonnanceur peut les symboles et les opérations de commande dynamique et automatique parallélisés. La plupart des graphiques importants optimisation LAYER l'exécution symbolique plus rapide et plus efficace mémoire. MXNet portable et léger, peut étendre efficacement le GPU et une pluralité de machines multiples.

MXNet soutien impératif et le mode de programmation symbolique, simple, facile à utiliser, supports en cours d'exécution dans plusieurs terminaux, y compris multi-CPU multi-GPU, les clusters, serveurs, postes de travail, et même les téléphones intelligents mobiles. Et d'autres cadres, MXNet prend également en charge les interfaces multi-langues, y compris C ++, Python, R, Scala, Julia, Matlab et JavaScript.

Enfin MXNet peut être facilement déployé dans le nuage, y compris Amazon S3, HDFS et Azure. Mais ici, il convient de mentionner que, MXNet bien soutenu AWS SageMaker, au moyen d'une série d'outils peuvent être ciblés (plates-formes informatiques, architecture, réseau, etc.) afin d'optimiser le modèle et très directement le moteur de plate-forme mobile de base ML utiliser.

04 PyTorch

PyTorch est ici le plus jeune du cadre de l'apprentissage en profondeur, mais aussi la croissance la plus rapide étude récente par le cadre de l'apprentissage en profondeur, car il est simple à utiliser, flexible, puissant, et maintenant Caffe2 officiellement incorporé dans le PyTorch. Utilisez PyTorch peut très rapidement vérifier la majorité des idées de recherche et les chercheurs.

PyTorch est à un C / C ++ comme la mise en uvre de base pour Python comme langage de la colle, écrite dans le cadre des appels d'interface. Comme tensorflow, en utilisant le module PyTorch Autograd dérivés calculer automatiquement, ce qui évite la dérivation manuelle compliquée. Par conséquent PyTorch très approprié pour l'apprentissage en profondeur.

Editeur: Huang Jiyan

- FIN -

attention Tsinghua - données Académie des sciences de Qingdao plate-forme publique micro-canal officiel " données d'envoi THU  « Sisters et n ° » Les données envoyées THU  « Pour plus de conférences et de bien-être contenu de qualité.

« Lancet »: la propagation potentielle de la prévision des épidémies grandes villes, Wuhan retard de 1-2 semaines épidémie
Précédent
Trente pratiques, suggestions et astuces Python (avec code et lien)
Prochain
Lisez les dix meilleurs algorithmes de tri classiques en Python dans un article (avec démo d'images animées)
Pourquoi Python est l'un des plus scientifiques des données de langage populaire? (Lien ci-joint)
infection nouveau coronavirus épidémie de pneumonie en temps réel système de sensibilisation et d'analyse de la situation construite avec succès
Quelles sont les municipalités a publié de nouvelles données épidémiologiques de l'infection par le coronavirus les plus complets, les plus détaillées, plus standard?
Wuhan nouveau modèle dynamique et prédire la propagation de la pneumonie couronne
Nature a publié un article de prévision nouvelle tendance de coronavirus, les experts ne conduira pas à Armageddon
Qui est fort dans la majeure informatique nationale? La liste de références la plus solide est pressée! (Avec lien)
Vu l'année 2019 marque percée technologique AI
Pékin, Shanghai a dépassé 20.000 yuans salaire mensuel, se abstenir de Tsinghua diplômés des 500000 +
il y a 1 an Bill Gates a prédit qu'une épidémie de virus, la Chine superordinateur forcer le virus à muter prévisions
Racontez une histoire personnelle et assistez au cours glorieux
« Tempête de feu » a frappé! feu de forêt qui fait rage en Australie le feu a continué à améliorer