Événements
Créer des applications et des agents IA
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantCe navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Dans ce tutoriel, vous allez apprendre à utiliser ML.NET Model Builder pour créer un modèle de régression pour prédire les prix. L’application console .NET que vous développez dans ce tutoriel prédit les tarifs des taxis en fonction des données historiques des tarifs des taxis de New York.
Le modèle de prédiction de prix Model Builder peut être utilisé pour n’importe quel scénario nécessitant une valeur de prédiction numérique. Parmi les exemples de scénarios, citons : prédiction des prix de maison, prédiction de la demande et prévision des ventes.
Pour obtenir la liste des prérequis et des instructions d’installation, consultez le guide d’installation Model Builder.
Créez une application console C# appelée « TaxiFarePrediction ». Vérifiez que l’option Placer la solution et le projet dans le même répertoire n’est pas cochée.
Créez un répertoire nommé Data dans votre projet pour stocker les fichiers du jeu de données.
Le jeu de données utilisé pour entraîner et évaluer le modèle Machine Learning est à l’origine à partir du jeu de données TLC Taxi Trip de NYC.
Pour télécharger le jeu de données, accédez au lien de téléchargement taxi-fare-train.csv.
Lorsque la page se charge, cliquez avec le bouton droit n’importe où sur la page et sélectionnez Enregistrer sous.
Utilisez la boîte de dialogue Enregistrer sous pour enregistrer le fichier dans le dossier Data que vous avez créé à l’étape précédente.
Dans Explorateur de solutions, cliquez avec le bouton droit sur le fichier taxi-fare-train.csv et sélectionnez Propriétés. Sous Avancé, définissez la valeur Copier dans le répertoire de sortie sur Copier si plus récent.
Chaque ligne du jeu de données taxi-fare-train.csv
contient les détails des trajets effectués par un taxi.
Ouvrir le jeu de données taxi-fare-train.csv
Le jeu de données fourni contient les colonnes suivantes :
La label
est la colonne que vous souhaitez prédire. Lors de l’exécution d’une tâche de régression, l’objectif est de prédire une valeur numérique. Dans ce scénario de prédiction de prix, le coût d’un trajet en taxi est prédit. Par conséquent, fare_amount est l’étiquette. Les features
identifiés sont les entrées que vous donnez au modèle pour prédire la label
. Dans ce cas, le reste des colonnes à l’exception de trip_time_in_secs sont utilisés comme caractéristiques ou entrées pour prédire le montant du tarif.
Lors de la première ajout du Générateur de modèles à la solution, il vous invite à créer un fichier mbconfig
. Le fichier mbconfig
effectue le suivi de tout ce que vous faites dans Model Builder pour vous permettre de rouvrir la session.
mbconfig
TaxiFarePrediction, puis cliquez sur le bouton Ajouter.Pour entraîner votre modèle, vous devez effectuer une sélection dans la liste des scénarios de Machine Learning disponibles fournis par Model Builder. Dans ce cas, le scénario est Value prediction
.
Model Builder peut exécuter l’entraînement sur différents environnements en fonction du scénario sélectionné.
Local (CPU)
est sélectionné, puis cliquez sur le bouton étape suivante.Model Builder accepte les données de deux sources, d’une base de données SQL Server ou d’un fichier local au format csv ou tsv.
La tâche Machine Learning utilisée pour entraîner le modèle de prédiction de prix dans ce didacticiel est la régression. Pendant le processus d’entraînement du modèle, Model Builder effectue l’apprentissage de modèles distincts à l’aide d’algorithmes et de paramètres de régression différents pour trouver le modèle le plus performant pour votre jeu de données.
Le temps nécessaire à l’apprentissage du modèle est proportionnel à la quantité de données. Model Builder sélectionne automatiquement une valeur par défaut pour délai d’apprentissage (secondes) en fonction de la taille de votre source de données.
Tout au long du processus d’apprentissage, les données de progression sont affichées dans la section Training results
de l’étape d'entraînement.
Une fois l’entraînement terminé, le fichier mbconfig
aura le modèle généré appelé TaxiFarePrediction.zip
après l’entraînement et deux fichiers C# avec celui-ci :
Cliquez sur le bouton étape suivante pour accéder à l’étape d’évaluation.
Le résultat de l’étape d’entraînement sera un modèle qui avait les meilleures performances. Dans l’étape d’évaluation de l’outil Model Builder, la section Meilleur modèle contient l’algorithme utilisé par le modèle le plus performant dans l’entrée Modèle ainsi que des métriques pour ce modèle dans RSquared.
En outre, dans la fenêtre Sortie de Visual Studio, il y aura un tableau de synthèse contenant les principaux modèles et leurs métriques.
Cette section vous permet également de tester votre modèle en effectuant une prédiction unique. Il offre des zones de texte pour remplir des valeurs et vous pouvez cliquer sur le bouton Prédire pour obtenir une prédiction à partir du meilleur modèle. Par défaut, cette opération est renseignée par une ligne aléatoire dans votre jeu de données.
Si vous n’êtes pas satisfait de vos métriques de précision, certaines façons simples d’essayer et d’améliorer la précision du modèle sont d’augmenter la durée d’apprentissage du modèle ou d’utiliser plus de données. Sinon, cliquez sur Étape Suivante pour se rendre à l’étape de consommation.
Cette étape aura des modèles de projet que vous pouvez utiliser pour consommer le modèle. Cette étape est facultative et vous pouvez choisir la méthode qui convient le mieux à vos besoins sur la façon de servir le modèle.
Lorsque vous ajoutez une application console à votre solution, vous serez invité à nommer le projet.
Nommez le projet de console TaxiFare_Console.
Cliquez sur Ajouter à la solution pour ajouter le projet à votre solution actuelle.
Exécutez l’application.
La sortie générée par le programme doit ressembler à l’extrait de code ci-dessous :
Predicted Fare: 15.020833
Lorsque vous ajoutez une API web à votre solution, vous serez invité à nommer le projet.
Nommez le projet d’API web TaxiFare_API.
Cliquez sur Ajouter à la solution* pour ajouter le projet à votre solution actuelle.
Exécutez l’application.
Ouvrez PowerShell et entrez le code suivant où PORT est le port sur lequel votre application écoute.
$body = @{
Vendor_id="CMT"
Rate_code=1.0
Passenger_count=1.0
Trip_distance=3.8
Payment_type="CRD"
}
Invoke-RestMethod "https://localhost:<PORT>/predict" -Method Post -Body ($body | ConvertTo-Json) -ContentType "application/json"
Si elle réussit, la sortie doit ressembler au texte ci-dessous :
score
-----
15.020833
Pour en savoir plus sur les rubriques mentionnées dans ce tutoriel, consultez les ressources suivantes :
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :
Événements
Créer des applications et des agents IA
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantEntrainement
Module
W tym module dowiesz się, jak używać narzędzia ML.NET Model Builder do trenowania i używania modelu uczenia maszynowego na potrzeby konserwacji predykcyjnej.
Certification
Certyfikat firmy Microsoft: Azure Data Scientist Associate - Certifications
Zarządzanie pozyskiwaniem i przygotowywaniem danych, trenowanie i wdrażanie modelu oraz monitorowaniem rozwiązań uczenia maszynowego za pomocą języka Python, usługi Azure Machine Learning i MLflow.