Condividi tramite


Utilizzare modelli basati su Azure Machine Learning

I dati unificati in Dynamics 365 Customer Insights- Data sono una fonte per la creazione di modelli di Machine Learning che possono generare ulteriori informazioni aziendali. Customer Insights - Data si integra con Azure Machine Learning per usare i tuoi modelli personalizzati.

Prerequisiti

Configurare l'area di lavoro di Azure Machine Learning

  1. Vedi Creare un'area di lavoro di Azure Machine Learning per diverse opzioni per creare l'area di lavoro. Per le migliori prestazioni, crea l'area di lavoro in un'area di Azure geograficamente più vicina al tuo ambiente Customer Insights.

  2. Accedi all'area di lavoro tramite Azure Machine Learning Studio. Esistono vari modi di interagire con l'area di lavoro.

Utilizzare la finestra di progettazione di Azure Machine Learning

La progettazione di Azure Machine Learning offre un'area di disegno visiva in cui è possibile trascinare e rilasciare set di dati e moduli. Una pipeline batch creata dalla finestra di progettazione può essere integrata in Customer Insights - Data, se configurata in modo appropriato.

Utilizzare l'SDK di Azure Machine Learning

I data scientist e gli sviluppatori di intelligenza artificiale utilizzano l'SDK di Azure Machine Learning per creare flussi di lavoro di apprendimento automatico. Attualmente, i modelli il cui training è stato eseguito con SDK non possono essere integrati direttamente. Una pipeline di inferenza batch che utilizza quel modello è necessaria per l'integrazione di Customer Insights - Data.

Requisiti della pipeline batch per l'integrazione con Customer Insights - Data

Configurazione set di dati

Crea set di dati per usare i dati delle tabelle di Customer Insights per la tua pipeline di inferenza batch. Registra questi set di dati nell'area di lavoro. Al momento, supportiamo solo set di dati tabulari in formato .csv. Parametrizza i set di dati che corrispondono ai dati della tabella come parametro della pipeline.

  • Parametri del set di dati nella finestra di progettazione

    Nella finestra di progettazione, apri Seleziona colonne in set di dati e seleziona Imposta come parametro di pipeline dove fornisci un nome per il parametro.

    Parametrizzazione del set di dati nella finestra di progettazione.

  • Parametro del set di dati nell'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 di inferenza batch

  • Nella finestra di progettazione, usa una pipeline di training per creare o aggiornare una pipeline di inferenza. Attualmente, sono supportate solo le pipeline di inferenza batch.

  • Con l'SDK, pubblica la pipeline su un endpoint. Attualmente Customer Insights - Data si integra con la pipeline predefinita in un endpoint di pipeline batch nell'area di lavoro di 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)
    

Importazione dei dati della pipeline

  • La finestra di progettazione fornisce il modulo Esporta dati che consente di esportare l'output di una pipeline nell'archiviazione di Azure. Attualmente, il modulo deve utilizzare il tipo di archivio dati Archivio BLOB di Azure e parametrizzare l'Archivio dati e il relativo Percorso. Il sistema sovrascrive entrambi questi parametri durante l'esecuzione della pipeline con un datastore e un percorso accessibile all'applicazione.

    Configurazione del modulo Esporta dati.

  • Quando scrivi l'output di inferenza utilizzando codice, carica l'output nel percorso in un archivio dati registrato nell'area di lavoro. Se il percorso e l'archivio dati sono parametrizzati nella pipeline, Customer Insights può leggere e importare l'output di inferenza. Attualmente è supportato un singolo output tabulare in formato csv. Il percorso deve includere la directory e il nome di file.

    # 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