MoXing: la solution d'apprentissage en profondeur de Huawei

publié il y a  2020-2-11 10:02:35 23 0 0 0

MoXing: la solution d'apprentissage en profondeur de Huawei

 

[Résumé] Ce document décrit les avantages de MoXing, MoXing API et la structure de base du programme MoXing.

 

Concept de MoXing

MoXing est l'API de développement de modèle de réseau fournie par le service d'apprentissage en profondeur HUAWEI CLOUD. Par rapport aux API natives telles que TensorFlow et MXNet, l'API MoXing simplifie l'écriture de code pour les modèles. Les utilisateurs n'ont qu'à se soucier de l'entrée de données (input_fn) et du code de construction de modèle (model_fn) pour implémenter l'exécution haute performance de n'importe quel modèle dans plusieurs GPU et systèmes distribués.

 

MoXing-TensorFlow prend en charge les API natives TensorFlow, Keras et slim, qui peuvent être utilisées pour construire plusieurs modèles tels que la classification d'images, la détection d'objets, la confrontation de génération, le traitement du langage naturel et l'OCR.

 

Avantages de l'API MoXing

Le service d'apprentissage en profondeur HUAWEI CLOUD intègre les technologies hybride parallèle, compression de gradient, accélération de convolution et EASGD. En outre, le framework MoXing peut distribuer automatiquement le code système à un seul nœud et effectuer une formation distribuée à grande échelle, améliorant considérablement la vitesse de formation et l'efficacité du modèle.

 

Voici les données expérimentales basées sur le service d'apprentissage en profondeur HUAWEI CLOUD.

Moxing 1

Débit multicarte à nœud unique


Moxing 2

Ratio d'accélération multicarte à nœud unique

 

 

 

La comparaison montre que le débit et le rapport d'accélération du MoXing GPU = 1 ne sont pas évidents. Cependant, dans GPU = 4, le débit et le rapport d'accélération ont dépassé TensorFlow. Dans GPU = 8, le débit est nettement supérieur à celui des autres API.

 

Ce qui suit utilise deux exemples pour décrire les performances du MoXing.

 

1. Prenez le MoXing pour implémenter la formation LARS ResNet-50 comme exemple.

 

LARS permet à un batch_size ultra-large de former le réseau neuronal. L'avantage est que la précision de convergence n'est pas affectée lorsque la taille du lot est augmentée. L'augmentation de la batch_size signifie que plus de nœuds distribués peuvent être utilisés pour former le réseau, de cette manière, la durée totale de la formation est réduite. (Lorsqu'un nœud à grande échelle est utilisé dans une méthode traditionnelle, une grande taille de lot peut entraîner un échec de convergence.)

 

L'optimiseur LARS dans MoXing peut être utilisé pour implémenter la formation distribuée batch_size = 32k ResNet-50.

 

 

Moxing 3

Courbe de valeur de perte

 

 

Moxing 4

Courbe de taux correcte

La ligne verte est la courbe de convergence ResNet-50 de la version autonome. Quatre GPU sont utilisés.

 

La ligne grise est la courbe de convergence lorsque le FP-16 est utilisé dans les mêmes conditions que la ligne verte. La précision n'est presque pas affectée.

 

La ligne orange indique la courbe de convergence d'un modèle ResNet-50 qui est entraîné à l'aide de MoXing.

 

La ligne rouge est la courbe de convergence ResNet-50 de batch_size = 32k implémentée en utilisant la fonction LARS dans MoXing.

 

 

Paramètre d'exécution : https://github.com/huaweiyun7759/backup/tree/master/Using MoXing to train resnet-50 with LARS

 

2. MoXing Utilisez DGC pour former ResNet-50.

 

DGC réduit le trafic de la formation distribuée, réduit efficacement le goulot d'étranglement causé par la bande passante du réseau et augmente le taux d'accélération de la formation distribuée sans affecter la précision de convergence.

 

Par rapport à la formation traditionnelle resnet_v1_50 et à la formation DGC: précision de convergence traditionnelle: top-1 = 74,4, top-5 = 91,7, précision de convergence DGC: top-1 = 74,5, top-5 = 91,8. Comme le montre la figure suivante, le rapport d'accélération du TF natif est de 0,4147, le rapport d'accélération du DGC est de 0,8670 et le rapport d'accélération est le double de celui du TF natif.

 

 

Moxing 6

Courbe de taux correcte


Moxing 7

Courbe de variation du gradient de densité

 

Comme le montre la figure, la rareté du gradient de la compression du gradient profond passe de 75% à 99,9% au cours des cinq premières époques. Par conséquent, au cours des cinq premières époques, le rapport d'accélération distribué n'est pas nécessairement supérieur à celui de la formation distribuée commune. Cependant, après la cinquième époque, le rapport d'accélération augmente considérablement, de plus, la précision du modèle ne diminue pas. Le rapport d'accélération du DGC en fonctionnement distribué après la cinquième époque est le suivant:

Moxing 8

 

Paramètre d'exécution : https://github.com/huaweiyun7759/backup/tree/master/Using MoXing to train resnet-50 with DGC

 

Structure de base du programme MoXing

Le framework Moxing est simple et facile à utiliser. Le code peut être exécuté directement sur le service d'apprentissage en profondeur HUAWEI CLOUD.


  • x
  • Standard:

Commentaire

envoyer
Connectez-vous pour répondre. Se connecter | Enregistrer

Remarque Remarque : Afin de protéger vos droits et intérêts légitimes, ceux de la communauté et des tiers, ne divulguez aucun contenu qui pourrait présenter des risques juridiques pour toutes les parties. Le contenu interdit comprend, sans toutefois s'y limiter, le contenu politiquement sensible, le contenu lié à la pornographie, aux jeux d'argent, à l'abus et au trafic de drogues, le contenu qui peut divulguer ou enfreindre la propriété intellectuelle d'autrui, y compris les secrets professionnels, les marques commerciales, les droits d'auteur et les brevets, ainsi que la vie privée personnelle. Ne partagez pas votre nom d'utilisateur ou votre mot de passe avec d'autres personnes. Toutes les opérations effectuées à partir de votre compte seront considérées comme vos propres actions, et toutes les conséquences en découlant vous seront imputées. Pour plus de détails, voir « Politique de confidentialité ».
Si le bouton de la pièce-jointe n'est pas disponible, mettez à jour Adobe Flash Player à la dernière version.

My Followers

Connectez-vous pour participer à la communication et au partage

Connectez-vous pour participer à la communication et au partage

S'identifier