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.
Misschien bent u bekend met hoe een typisch data science-proces 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 systeemeigen geïntegreerd onderdeel van Azure Synapse, is er een krachtige set hulpprogramma's beschikbaar voor pijplijnen voor gegevensopname en 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.
Apache Spark voor Azure Synapse biedt mogelijkheden om uw gegevens op schaal te transformeren, voor te bereiden en te verkennen. Deze Spark-pools bevatten tools zoals PySpark/Python, Scala en .NET voor gegevensverwerking op schaal. Met krachtige visualisatiebibliotheken kunt u de gegevens beter verkennen en begrijpen. Meer informatie over gegevens verkennen en visualiseren in Synapse met behulp van Spark.
Serverloze SQL-pools bieden een manier om gegevens rechtstreeks via het data lake te verkennen met behulp van TSQL. Serverloze SQL-pools bieden ook een aantal ingebouwde visualisaties in Synapse Studio. Meer informatie over hoe u gegevens kunt verkennen met serverloze SQL-pools.
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.
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 voor batchgewijs scoren in Azure Synapse is het gebruik van de Apache Spark-pools voor Azure Synapse. 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 dat wordt 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.