Database
 sql >> Base de données >  >> RDS >> Database

Introduction au ML{.NET}

L'apprentissage automatique (ML) est passé d'un mot à la mode qu'il est agréable d'avoir dans votre application à une fonctionnalité incontournable qui fonctionne et ajoute de la valeur. Les scientifiques des données développent des modèles ML dans divers frameworks ML tels que TensorFlow, Scikit-learn, PyTorch, Azure ML, etc. Avant que ML.NET ne soit disponible pour tous les développeurs, l'ajout de la fonctionnalité ML aux applications .NET nécessitait des connaissances dans certains frameworks ML pour construire et former des modèles ML. Il a également fallu du temps et des efforts supplémentaires pour intégrer ce modèle dans les applications .NET.

ML.NET a rendu ce travail beaucoup plus facile pour les développeurs .NET avec Model Builder, une extension graphique Visual Studio pour créer, former et déployer des modèles ML personnalisés. En utilisant le Model Builder de ML.NET et sa fonctionnalité AutoML, les développeurs qui n'ont pas d'expertise en machine learning, comme moi, peuvent toujours développer et utiliser des modèles ML en quelques minutes.

À propos de ML.NET

Avant de plonger dans notre exemple, parlons un peu de l'historique de ML.NET et de son état actuel.

ML.NET tire ses origines du projet Microsoft Research de 2002 nommé TMSN, qui signifie «test mining search and navigation». Plus tard, il a été renommé TLC, "le code d'apprentissage". Guerre ML.NET dérivée de la bibliothèque TLC. Initialement, il était utilisé sur les produits Microsoft internes.

La première version publiquement disponible de ML.NET 1.0 a été publiée en 2019. Elle comprenait le complément Model Builder et les fonctionnalités AutoML (Automated Machine Learning).

La version actuelle est la 1.6.0. Vous trouverez plus de détails sur toutes les versions sur la page officielle des versions de ML.NET.

Certaines tâches que nous pouvons effectuer avec ML.NET sont :

– Analyse des sentiments

– Recommandation de produit

– Prévision des prix

– Segmentation Client

– Détection d'objets

– Détection de fraude

– Détection des pics de vente

– Classement des images

– Prévision des ventes

Installer et configurer

La version minimale requise de Visual Studio est 16.6.1. Les étapes suivantes sont effectuées sur Visual Studio 16.9.2. Ainsi, si vous utilisez une version différente, certains détails peuvent être différents.

Installer le générateur de modèles ML.NET

  • Ouvrir le programme d'installation de Visual Studio
  • Vérifiez le développement du bureau .NET options
  • Dans le volet de droite, développez Développement de bureau .NET> développer Facultatif > consultez ML.NET Model Builder (préversion)

Remarque :ML.NET Model Builder est disponible sur le développement multiplateforme .NET option.

Activer le générateur de modèles ML.NET dans Visual Studio

  • Accéder à Outils > Options > Environnement > Aperçu des fonctionnalités
  • Cochez la case Activer ML.NET Model Builder case à cocher

Construire un modèle de ML

Faites un clic droit sur le projet et sélectionnez Ajouter > Apprentissage automatique

Sélectionnez un scénario

Sélectionnez Classification du texte – nous ajouterons une simple fonctionnalité d'analyse des sentiments :

Sélectionnez l'environnement de formation

Dans notre cas, il s'agit d'une machine locale.

Ajouter des données

Nous utiliserons le fichier ZIP de l'ensemble de données UCI Sentiment Labeled Sentences disponible en téléchargement.

Sélectionnez la sortie que vous souhaitez prédire

Dans notre cas, il s'agit de la deuxième colonne, nous allons donc sélectionner col1 . Les colonnes d'entrée sont sélectionnées automatiquement puisque nous n'avons que deux colonnes disponibles.

Former le modèle

Sélectionnez l'heure de l'entraînement et cliquez sur Commencer l'entraînement :

Les images ci-dessous montrent la sortie et les résultats de la formation :

Évaluer le modèle

Si nous entrons Janice était gentille dans l'exemple d'entrée de données, la sortie montre que cette phrase est positive avec une certitude à 100 % :

Si nous entrons Janice était impolie dans l'exemple d'entrée de données, la sortie montre que cette phrase n'est pas positive avec une certitude à 100 % :

Déployer et utiliser le modèle de ML

Il ne reste plus qu'à utiliser le modèle que nous avons construit dans notre application. Nous devons ajouter une référence à notre projet de modèle de ML.

De plus, nous devons installer Microsoft.ML à partir de NuGet.

Microsoft.ML prend uniquement en charge x64 et x86 architecture du processeur. Ainsi, assurez-vous d'en sélectionner un lors de la création de l'application.

Et c'est tout. Ici, nous pouvons voir notre code en action.

Conclusion

L'ensemble du processus, de l'installation de ML.NET à la première application avec la fonctionnalité ML, peut être effectué en quelques minutes. Bien sûr, il s'agit d'un exemple très basique dans le seul but de se familiariser avec le framework ML.NET. Cependant, même sans expérience préalable, je pourrais créer une application qui, avec quelques ajustements et améliorations, peut réellement fonctionner dans un scénario réel.

Cela dit, ML.NET est un outil. Vous pourrez l'utiliser plus efficacement avec plus de connaissances sur les algorithmes et les principes d'apprentissage automatique.

Merci de vous en tenir à la fin et j'espère que vous nous rejoindrez dans le prochain article sur ML.NET.