Partager via


Utiliser des modèles basés sur Azure Machine Learning

Les données unifiées dans Dynamics 365 Customer Insights-Data sont une source pour créer des modèles Machine Learning qui peuvent générer des informations métier supplémentaires. Customer Insights - Data s’intègre à Azure Machine Learning pour utiliser vos propres modèles personnalisés.

Conditions préalables

Configurer l’espace de travail Azure Machine Learning

  1. Consultez Créer un espace de travail Azure Machine Learning pour voir les différentes options de création de l’espace de travail. Pour optimiser les performances, créez l’espace de travail dans une région Azure qui est géographiquement la plus proche de votre environnement Customer Insights.

  2. Accédez à votre espace de travail via Azure Machine Learning Studio. Vous pouvez interagir avec votre espace de travail de plusieurs façons.

Utiliser le concepteur Azure Machine Learning

Le concepteur Azure Machine Learning fournit un canevas visuel dans lequel vous pouvez glisser-déplacer des ensembles de données et des modules. Un pipeline par lots créé à partir du concepteur peut être intégré à Customer Insights - Data s’il est configuré en conséquence.

Utilisation du SDK Azure Machine Learning

Les scientifiques de données et les développeurs de l’IA utilisent le SDK Azure Machine Learning pour créer des workflows Machine Learning. Actuellement, les modèles entraînés à l’aide du SDK ne peuvent pas être intégrés directement. Un pipeline d’inférence par lots qui utilise ce modèle est nécessaire pour l’intégration avec Customer Insights - Data.

Exigences du pipeline par lots pour l’intégration avec Customer Insights - Data

Configuration de l’ensemble de données

Créez des ensembles de données pour utiliser les données de table de Customer Insights pour votre pipeline d’inférence par lots. Enregistrez ces ensembles de données dans l’espace de travail. Actuellement, nous ne prenons en charge que les ensembles de données tabulaires au format .csv. Paramétrez les ensembles de données correspondant aux données de table en tant que paramètre de pipeline.

  • Paramètres de l’ensemble de données dans le concepteur

    Dans le concepteur, ouvrez Sélectionner des colonnes dans l’ensemble de données, sélectionnez Définir comme paramètre de pipeline et indiquez un nom pour le paramètre.

    Paramétrage de l’ensemble de données dans le concepteur.

  • Paramètres de l’ensemble de données dans le SDK (Python)

    HotelStayActivity_dataset = Dataset.get_by_name(ws, name='Hotel Stay Activity Data')
    HotelStayActivity_pipeline_param = PipelineParameter(name="HotelStayActivity_pipeline_param", default_value=HotelStayActivity_dataset)
    HotelStayActivity_ds_consumption = DatasetConsumptionConfig("HotelStayActivity_dataset", HotelStayActivity_pipeline_param)
    

Pipeline d’inférence par lots

  • Dans le concepteur, utilisez un pipeline de formation pour créer ou mettre à jour un pipeline d’inférence. Actuellement, seuls les pipelines d’inférence par lots sont pris en charge.

  • À l’aide du SDK, publiez le pipeline dans un point de terminaison. Actuellement, Customer Insights - Data s’intègre au pipeline par défaut dans un point de terminaison du pipeline par lots de l’espace de travail Machine Learning.

    published_pipeline = pipeline.publish(name="ChurnInferencePipeline", description="Published Churn Inference pipeline")
    pipeline_endpoint = PipelineEndpoint.get(workspace=ws, name="ChurnPipelineEndpoint") 
    pipeline_endpoint.add_default(pipeline=published_pipeline)
    

Importer les données du pipeline

  • Le concepteur fournit le Module d’exportation de données qui permet d’exporter la sortie d’un pipeline vers le stockage Azure. Actuellement, le module doit utiliser le type de magasin de données Stockage Blob Azure et paramétrer le Magasin de données et le Chemin d’accès relatif. Le système remplace ces deux paramètres lors de l’exécution du pipeline par un magasin de données et un chemin d’accès accessible à l’application.

    Configuration du module d’exportation de données.

  • Lors de l’écriture de la sortie d’inférence à l’aide de code, chargez la sortie dans un chemin d’accès d’un magasin de données enregistré de l’espace de travail. Si le chemin d’accès et le magasin de données sont paramétrés dans le pipeline, Customer Insights peut lire et importer la sortie d’inférence. Actuellement, une seule sortie tabulaire au format csv est prise en charge. Le chemin d’accès doit inclure le répertoire et le nom du fichier.

    # In Pipeline setup script
        OutputPathParameter = PipelineParameter(name="output_path", default_value="HotelChurnOutput/HotelChurnOutput.csv")
        OutputDatastoreParameter = PipelineParameter(name="output_datastore", default_value="workspaceblobstore")
    ...
    # In pipeline execution script
        run = Run.get_context()
        ws = run.experiment.workspace
        datastore = Datastore.get(ws, output_datastore) # output_datastore is parameterized
        directory_name =  os.path.dirname(output_path)  # output_path is parameterized.
    
        # Datastore.upload() or Dataset.File.upload_directory() are supported methods to uplaod the data
        # datastore.upload(src_dir=<<working directory>>, target_path=directory_name, overwrite=False, show_progress=True)
        output_dataset = Dataset.File.upload_directory(src_dir=<<working directory>>, target = (datastore, directory_name)) # Remove trailing "/" from directory_name