Prise en main du service Azure Machine Learning

Aujourd'hui, considérons notre cinquième itération de création d'un produit d'apprentissage automatique. Pour aborder ce sujet, rappelez brièvement les produits précédents et leur état actuel. Considérez uniquement des solutions entièrement intégrées qui vous permettent de passer du calcul du modèle à une utilisation dans des cas réels dans un produit complet.



Je donne la parole à l'auteur, notre MVP, Mikhail Komarov.

Cet article est sur notre portail d'actualités.

Nous ne couvrons pas HDInsight, la machine virtuelle DataScience et les autres composants d'apprentissage automatique indépendants ainsi que les services cognitifs.

  1. SQL Server 2005 a introduit le composant d'exploration de données, qui inclut le langage DMX, ainsi qu'une extension pour Excel. La dernière extension fonctionnait sur Excel. Actuellement, le produit n'est pas développé, bien qu'il soit dans les versions actuelles de SQL Sever et existe pour une compatibilité descendante.
  2. 10 ans se sont écoulés. En 2016, le projet Azure Machine Learning Studio a démarré. La dernière mise à jour cosmétique est octobre 2018, bibliothèque R. Elle n'est pas actuellement grand public. Parmi les principaux inconvénients figurent l'impossibilité d'exporter et d'importer des modèles, ainsi que les problèmes d'évolutivité. Un exemple d'utilisation peut être trouvé ici . Très probablement, après 2-3 ans, il quittera tranquillement la scène.
  3. SQLServer 2016 (prise en charge uniquement de R), SQL 2017,2019 (prise en charge de R et Python), ainsi qu'un serveur dédié pour l'apprentissage automatique. Le produit se développe activement en termes d'extension des capacités d'apprentissage automatique dans l'environnement d'entreprise (clustering et autres éléments à l'échelle de l'entreprise). Il y a des cas avec l'analyse d'une grande quantité de données en temps réel. Intéressant pour ceux qui ne sont pas prêts à partager des données avec le cloud.
  4. En 2017, Azure Machine Learning Workbench est apparu dans la version préliminaire, installé localement avec Python, mais nécessitait un compte dans Azure. Pour ceux qui sont intéressés, regardez ici . Le projet est actuellement fermé, mais de nombreuses idées ont été transférées au service Azure Machine Learning.

La version actuelle d'Azure Machine Learning Service est disponible pour une utilisation payante depuis décembre 2018, et il existe également une version gratuite limitée.

Microsoft décompose le service Azure Machine Learning en trois grandes étapes: la préparation des données, l'expérience elle-même avec la création de modèles et le déploiement. Dans le diagramme, cela ressemble à ceci:



Voici un diagramme légèrement plus détaillé, nous accordons une attention particulière au support Python et au manque de support R. Il nous donne des informations sur la façon dont tout se passe.



La dernière partie est une taxonomie, qui montre trois blocs de construction clés: créer et calculer un modèle (à gauche), collecter des données sur le processus de calcul du modèle (centre), déployer et prendre en charge un modèle déployé. Arrêtons-nous plus en détail sur chaque bloc clé.



Le travail commence par la création d'un compte dans Azure, s'il n'existe pas, puis à l'aide de combinaisons simples, nous créons un compte et allons sur portal.azure.com . Là, sélectionnez Créer une ressource, puis cliquez sur l'espace de travail du service d'apprentissage Azure Machine. Sélectionnez un abonnement, créez une région et un nouveau groupe de ressources.



Après quelques minutes de travail sur le cloud, nous obtiendrons le résultat suivant sur Dashboard, puis passerons à l'espace de travail du service Machine Learning.





Nous sélectionnons l'espace de travail du service Azure Machine Learning, là nous ouvrons les blocs-notes Microsoft Azure, où il est proposé de cloner un exemple, d'accord, sélectionnez le didacticiel - il contient un exemple de classification d'images.



Au démarrage, vérifiez que le noyau Python 3.6 est sélectionné et vous pouvez suivre les étapes. La description des étapes de l'exemple n'est pas incluse dans l'article.

L'idée en général est qu'en utilisant le navigateur et le bloc-notes Jupyter standard avec du code Python, nous pouvons créer, calculer et enregistrer le modèle. Il y a une autre façon - en utilisant Visual Studio Code, nous pouvons nous connecter à notre zone et voir les propriétés des objets, y écrire également du code, sans oublier d'installer le plugin Azure ML. En passant, nous notons que dès que nous avons commencé à utiliser Visual Studio Code, nous avons automatiquement obtenu un IDE normal avec contrôle de version.





A la fin de la section, nous attirons l'attention sur la possibilité de choisir un lieu de calcul et de déploiement de modèle.



Surveillance des processus et déploiement des services

Vous pouvez voir la section Expériences, où les paramètres du modèle calculé sont affichés.



Nous sommes intéressés par Image - Azure Container Instance, en d'autres termes, c'est

Conteneur Docker avec notre modèle, qui est situé dans le cloud.





Le processus de déploiement provient de Visual Studio Code ou de Microsoft Azure Notebooks. À la fin du déploiement du service, dont le cœur est notre instance de conteneur avec le modèle, nous obtenons l'image suivante:





Après avoir terminé l'expérience, n'oubliez pas de supprimer le service et toutes les ressources allouées afin qu'il n'y ait pas de débit automatique des fonds de votre carte bancaire. Il est plus facile de supprimer l'intégralité du groupe de ressources.



En conséquence, nous avons une solution à l'échelle de l'entreprise, avec la possibilité de calculer automatiquement le modèle, de déployer et de revenir automatiquement au modèle précédent en cas de résultat insatisfaisant des mesures.

Ressources:


azure.microsoft.com/en-us/services/machine-learning-service

À propos de l'auteur


Mikhail Komarov, MVP Microsoft

Plus de 20 ans dans le domaine informatique. Intérêts: virtualisation, infrastructure, analyse de données et apprentissage automatique. Il s'est engagé à soutenir les systèmes existants et à les mettre en œuvre afin d'augmenter l'efficacité du travail dans le segment des entreprises. A travaillé auparavant comme formateur en technologies de l'information.

Source: https://habr.com/ru/post/fr437622/


All Articles