Mogelijkheden voor machine learning in Azure Synapse Analytics

Azure Synapse Analytics biedt verschillende machine learning-mogelijkheden Dit artikel geeft een overzicht van hoe u machine learning kunt toepassen in de context van Azure Synapse.

In dit overzicht worden de verschillende mogelijkheden van Synapse voor machine learning beschreven, vanuit het perspectief van een proces in de gegevenswetenschappen.

Mogelijk weet u al hoe een typisch proces in de gegevenswetenschappen eruitziet. Het gaat om een bekend proces dat de meeste machine learning-projecten volgen.

In grote lijnen bevat het proces de volgende stappen:

  • Bedrijfskennis (niet besproken in dit artikel)
  • Gegevens verzamelen en begrijpen
  • Modellen maken
  • Modelimplementatie en -score

In dit artikel worden de machine learning-mogelijkheden van Azure Synapse in verschillende analyse-engines beschreven, vanuit het perspectief van een proces in de gegevenswetenschappen. Voor elke stap in het proces in de gegevenswetenschappen kunnen de nuttige Azure Synapse-mogelijkheden worden samenvatten.

Gegevens verzamelen en begrijpen

De meeste machine learning-projecten omvatten gevestigde stappen, en een van die stappen is om die gegevens to openen en te begrijpen.

Gegevensbron en pijplijnen

Dankzij Azure Data Factory, een native geïntegreerd onderdeel van Azure Synapse, is er een krachtige set tools beschikbaar voor gegevensopname en pijplijnen voor gegevensindeling. Zo kunt u eenvoudig gegevenspijplijnen maken voor toegang tot en transformatie van de gegevens naar een indeling die kan worden gebruikt voor machine learning. Meer informatie over gegevenspijplijnen in Synapse.

Gegevensvoorbereiding en -ontwikkeling/visualisatie

Een belangrijk onderdeel van het machine learning-proces is om inzicht te krijgen in de gegevens via verkenning en visualisatie.

Afhankelijk van waar de gegevens zijn opgeslagen, biedt Synapse een aantal verschillende hulpmiddelen om deze te verkennen en voor te bereiden voor analyse en machine learning. Een van de snelste manieren om aan de slag te gaan met het verkennen van gegevens, is door serverloze pools van Apache Spark of SQL rechtstreeks te gebruiken op de gegevens in het data lake.

Modellen maken

In Azure Synapse kunt u machine learning-modellen trainen op de Apache Spark-pools met tools zoals PySpark/Python, Scala of .NET.

Modellen trainen in Spark-pools met MLlib

Machine learning-modellen kunnen worden getraind met behulp van verschillende algoritmen en bibliotheken. Spark MLlib bevat schaalbare machine learning-algoritmen die u kunnen helpen om de meeste klassieke machine learning-problemen op te lossen. Zie Een machine learning-app bouwen met Apache Spark MLlib en Azure Synapse Analytics voor een zelfstudie over het trainen van een model met behulp van MLlib in Synapse.

In aanvulling op MLlib kunnen populaire bibliotheken, zoals Scikit, ook worden gebruikt om modellen te ontwikkelen. Zie Bibliotheken beheren voor Apache Spark in Azure Synapse Analytics voor meer informatie over het installeren van bibliotheken in Synapse Spark-pools.

Modellen trainen met geautomatiseerde ML van Azure Machine Learning

Een andere manier om machine learning-modellen te trainen, waarvoor niet veel voorafgaande kennis van machine learning nodig is, is het gebruik van geautomatiseerde ML. Geautomatiseerde ML is een functie die automatisch een set machine learning-modellen traint, en de gebruiker in staat stelt om het beste model te selecteren op basis van specifieke metrische gegevens. Dankzij een naadloze integratie met Azure Machine Learning van Azure Synapse Notebooks kunnen gebruikers eenvoudig gebruikmaken van geautomatiseerde ML in Synapse met passthrough Microsoft Entra-verificatie. Dit betekent dat u alleen naar uw Azure Machine Learning-werkruimte hoeft te verwijzen en geen referenties moet invoeren. In de zelfstudie, Een model trainen in Python met geautomatiseerde machine learning, wordt beschreven hoe u modellen traint met behulp van geautomatiseerde ML van Azure Machine Learning in Synapse Spark-pools.

Waarschuwing

  • Vanaf 29 september 2023 wordt de officiële ondersteuning voor Spark 2.4 Runtimes stopgezet in Azure Synapse. Na 29 september 2023 behandelen we geen ondersteuningstickets met betrekking tot Spark 2.4. Er is geen release-pijplijn aanwezig voor bug- of beveiligingsoplossingen voor Spark 2.4. Het gebruik van Spark 2.4 na de datum waarop de ondersteuning wordt afgekapt, wordt op eigen risico uitgevoerd. We raden het gebruik ervan sterk af vanwege mogelijke beveiligings- en functionaliteitsproblemen.
  • Als onderdeel van het afschaffingsproces voor Apache Spark 2.4 willen we u laten weten dat AutoML in Azure Synapse Analytics ook wordt afgeschaft. Dit omvat zowel de interface met weinig code als de API's die worden gebruikt voor het maken van AutoML-proefversies via code.
  • Houd er rekening mee dat de AutoML-functionaliteit uitsluitend beschikbaar is via de Spark 2.4-runtime.
  • Voor klanten die gebruik willen blijven maken van AutoML-mogelijkheden, raden we u aan om uw gegevens op te slaan in uw ADLSg2-account (Azure Data Lake Storage Gen2). Van daaruit hebt u naadloos toegang tot de AutoML-ervaring via Azure Machine Learning (AzureML). Meer informatie over deze tijdelijke oplossing vindt u hier.

Modelimplementatie en -score

Modellen die binnen of buiten Azure Synapse zijn getraind kunnen eenvoudig worden gebruikt om in batch te scoren. Momenteel zijn er in Synapse twee manieren waarop u in batch kunt scoren.

  • U kunt de TSQL PREDICT-functie gebruiken in Synapse SQL-pools om uw voorspellingen te doen op dezelfde locatie als uw gegevens. Met deze krachtige en schaalbare functie kunt u uw gegevens verrijken zonder dat u gegevens uit uw data warehouse hoeft te verplaatsen. Er is een nieuwe begeleide machine learning-modelervaring in Synapse Studio beschikbaar, waarin u een ONNX-model kunt implementeren vanuit het Azure Machine Learning-modelregister in Synapse SQL-pools om in batch te scoren met behulp van PREDICT.

  • Een andere optie voor machine Learning-modellen om in batch te scoren in Azure Synapse, is om de Apache Spark-pools voor Azure Synapse te gebruiken. Afhankelijk van de bibliotheken die worden gebruikt voor het trainen van de modellen, kunt u een code-ervaring gebruiken om in batch te scoren.

SynapseML

SynapseML (voorheen bekend als MMLSpark) is een opensource-bibliotheek waarmee het maken van zeer schaalbare machine learning-pijplijnen (ML) wordt vereenvoudigd. Het is een ecosysteem van hulpprogramma's die worden gebruikt om het Apache Spark-framework in verschillende nieuwe richtingen uit te breiden. SynapseML integreert verschillende bestaande machine learning-frameworks en nieuwe Microsoft-algoritmen in één schaalbare API die kan worden gebruikt in Python, R, Scala, .NET en Java. Zie de belangrijkste functies van SynapseML voor meer informatie.

Volgende stappen