L'apprentissage automatique est une industrie énorme, et il bénéficie d'une large assistance sur AWS. Nous discuterons des meilleurs services pour la création, la formation et l'exécution de modèles de machine learning personnalisés et préconfigurés sur la plate-forme AWS.
SageMaker
SageMaker est la suite d'apprentissage automatique entièrement gérée d'AWS, conçue pour remplacer tout le travail manuel impliqué par la configuration des serveurs pour la formation et l'inférence. À partir de SageMaker, vous pouvez créer et entraîner des modèles à l'aide des ensembles de données que vous fournissez, tout votre travail étant enregistré dans un «bloc-notes». Il s'agit de l'expérience la plus complète que vous trouverez sur AWS pour exécuter des modèles de machine learning.
SageMaker gérera automatiquement la création d'instances de formation préconfigurées, ce qui peut vous faire économiser beaucoup d'argent sur le temps perdu à configurer une instance coûteuse pour la formation. SageMaker dispose également d'une place de marché pour les algorithmes, similaire à Amazon Machine Images, que vous pouvez exécuter sur la plate-forme. Certains sont gratuits, tandis que certains coûteront un tarif horaire pour fonctionner.
Une fois que vous avez un modèle, le déploiement est assez simple. Tout ce que vous avez à faire est d'ajouter votre modèle à la configuration de votre point de terminaison,
Et choisissez le type d'instance (et les accélérateurs Elastic Inference facultatifs) que vous souhaitez utiliser.
Vous pouvez également utiliser le modèle dans Transformation par lots jobs pour exécuter l'inférence sur un ensemble de données entier et stocker les résultats dans S3.
Cependant, si SageMaker est «gratuit à utiliser», il n’est pas vraiment gratuit. SageMaker vous permet uniquement de déployer sur des instances spéciales, désignées par «ml.
" préfixe. Celles-ci sont en fait les mêmes que les instances EC2 ordinaires, mais avec une différence essentielle: elles coûtent 40% de plus dans tous les domaines. Si vous utilisez SageMaker, ce sont les frais que vous devrez payer. SageMaker prend en charge les instances Spot, ce qui peut aider à réduire les coûts, mais cela sera toujours plus cher que EC2.
Bien que SageMaker autorise l'utilisation d'addons d'accélérateur Elastic Inference, ils sont également soumis à la même augmentation de prix de 40%.
Inférence élastique + EC2
Si vous préférez configurer les choses vous-même ou si vous souhaitez économiser de l’argent sur les instances SageMaker trop chères, il existe toujours un système EC2 classique. Cela vous donne la liberté de configurer vos serveurs comme vous le souhaitez et d'avoir un contrôle total sur les services qui y sont installés.
Les modèles de formation seront généralement un lot plus intensif que l’inférence. C’est là que SageMaker peut avoir un avantage: étant un service entièrement géré, vous ne payez que pour le temps que vous consacrez réellement à la formation, et non pour le temps passé à attendre le démarrage, à configurer les serveurs avec vos données et à terminer une fois terminé. Même quand même, EC2 peut être arrêté et démarré à volonté, et les instances Spot sont parfaites pour cette tâche, ce qui en fait pas vraiment un problème dans la pratique.
Cependant, l'exécution de l'inférence en production ne nécessite souvent pas la pleine puissance d'un GPU entier, ce qui est coûteux à exécuter. Pour lutter contre cela, AWS fournit un service appelé Elastic Inference qui vous permet de louer des modules complémentaires d'accélérateur GPU pour les instances EC2 existantes. Ceux-ci peuvent être attachés à des instances de tout type et se recharger à l'heure en fonction de la puissance de l'accélérateur, fournissant essentiellement un tout nouveau SKU d'instances GPU en dessous du puissant (et coûteux). p3
s'aligner.
Bien qu'Elastic Inference ne soit pas une plate-forme de calcul en soi, il vous permet d'accélérer considérablement votre inférence grâce à l'accélération GPU pour une fraction du coût. Le GPU complet le moins cher p3
exemple, le p3.2xlarge
, coûte 3,06 $ par heure pour s'exécuter et est livré avec 8 cœurs, 61 Go de RAM et 16 TFLOPS de performances GPU. Pour une comparaison précise avec les accélérateurs EI uniquement GPU, nous soustrayons les coûts de vCPU et de RAM. Le même spec’d m5.4xlarge
coûte 0,768 USD, donc le coût estimé qu'AWS semble vendre un seul GPU Tesla V100 est d'environ 2,292 USD, soit à peu près, soit environ 0,143 USD par TFLOP. L'accélérateur EI le moins cher, offrant un seul TFLOP de performances, coûte 0,120 USD, soit 16% diminution sur le prix EC2. L'option 4 TFLOP est encore meilleure: une diminution de 40% par rapport à EC2.
AWS fournit également des environnements préconfigurés pour exécuter l'apprentissage automatique avec AMI d'apprentissage en profondeur. Ceux-ci sont préinstallés avec des frameworks et des interfaces ML tels que TensorFlow, PyTorch, Apache MXNet et bien d'autres. Ils sont entièrement gratuits et disponibles sur Ubuntu et Amazon Linux.
Accélérateurs d'inférence élastique prend également en charge Auto Scaling, vous serez donc en mesure de les configurer pour évoluer pour répondre à une demande croissante, et réduire la nuit lorsqu'ils ne sont pas utilisés autant.
Propres services d'apprentissage automatique d'AWS
Bien que ces services ne vous permettent pas d'exécuter vos propres modèles personnalisés, ils fournissent de nombreuses fonctionnalités utiles pour les applications qui utilisent l'apprentissage automatique en dessous. En un sens, ces services sont une interface pour un modèle d'apprentissage automatique qu'AWS a déjà formé et programmé.
AWS Personalize est un moteur de recommandation à usage général. Vous lui donnez une liste de produits, services ou articles, et alimentez l'activité des utilisateurs. Il crache des recommandations pour de nouvelles choses à suggérer à cet utilisateur. Ceci est basé sur la même technologie qui alimente les recommandations sur Amazon.com.
AWS Lex est un service de chatbot entièrement géré qui peut être configuré avec des commandes et des routines personnalisées, alimenté par la même technologie derrière Alexa. Les chatbots peuvent être du texte uniquement ou peuvent être des robots vocaux entièrement interactifs utilisant AWS Transcribe pour la synthèse vocale et AWS Polly pour la synthèse vocale, qui sont également des services autonomes.
AWS Rekognition effectue la reconnaissance d'image dans les images et la vidéo, une tâche d'apprentissage automatique courante. Il est capable de reconnaître les objets les plus courants, de générer des mots-clés à partir d'images et peut même être configuré avec des étiquettes personnalisées pour étendre davantage les capacités de détection.