Die folgende Architektur erweitert das Szenario End-to-End-Analyse mit Azure Synapse. Sie ermöglicht es, ein benutzerdefiniertes Modell für maschinelles Lernen (ML) in Azure Machine Learning zu trainieren und mit einer benutzerdefinierten Anwendung zu implementieren, die mithilfe von Microsoft Power Platform erstellt wurde.
Aufbau
Laden Sie eine Visio-Datei dieser Architektur herunter.
Workflow
Der Workflow umfasst folgende Schritte:
- Erfassen
- Speicher
- Trainieren und Bereitstellen eines Modells
- Nutzen
Erfassen
Verwenden Sie Azure Synapse Pipelines, um Batchdaten aus verschiedenen lokalen und cloudbasierten Quellen abzurufen. Diese Lambdaarchitektur verfügt über zwei Datenerfassungsflüsse: Streaming und Batch. Diese werden im Folgenden beschrieben:
- Streaming: In der oberen Hälfte des Architekturdiagramms sehen Sie die Streamingdatenflüsse (z. B. Big-Data-Streams und IoT-Geräte).
- Sie können Azure Event Hubs oder Azure IoT Hub verwenden, um Datenströme zu erfassen, die von Clientanwendungen oder IoT-Geräten generiert wurden. Die Erfassung und Speicherung der Streamingdaten erfolgt über Event Hubs oder IoT Hub; die Reihenfolge der empfangenen Ereignisse wird beibehalten. Consumer können eine Verbindung mit Hubendpunkten herstellen, um Nachrichten zur Verarbeitung abzurufen.
- Batch: In der unteren Hälfte des Architekturdiagramms werden beispielsweise folgende Daten in Batches erfasst und verarbeitet:
Unstrukturierte Daten (z. B. Video, Bilder, Audio und Freitext)
Teilweise strukturierte Daten (z. B. JSON, XML, CSV und Protokolle)
Strukturierte Daten (z. B. relationale Datenbanken und Azure Data Services)
Azure Synapse Link sorgt für eine nahtlose Integration zwischen Azure Cosmos DB und Azure Synapse Analytics. Azure Synapse Pipelines können basierend auf einem vordefinierten Zeitplan oder als Reaktion auf ein Ereignis ausgelöst werden. Sie lassen sich auch über REST-APIs aufrufen.
Speicher
Erfasste Daten können direkt in unformatierter Form eingehen und werden dann im Azure Data Lake transformiert. Daten, die einmal zusammengestellt und in relationale Strukturen transformiert wurden, können zur Nutzung in Azure Synapse Analytics bereitgestellt werden.
Trainieren und Bereitstellen eines Modells
Azure Machine Learning ist ein Dienst für maschinelles Lernen auf Unternehmensniveau zum schnellen Erstellen und Bereitstellen von Modellen. Er bietet Benutzern aller Qualifikationsstufen einen Low-Code-Designer, automatisiertes ML und eine gehostete Jupyter-Notebook-Umgebung. Modelle können entweder als Echtzeitendpunkte in Azure Kubernetes Service oder als verwalteter Machine Learning-Endpunkt bereitgestellt werden. Für Batchrückschlüsse von ML-Modellen können Sie Machine Learning-Pipelines verwenden.
Nutzen
Ein in Machine Learning veröffentlichtes Modell – entweder Batch oder Echtzeit – kann einen REST-Endpunkt generieren, der in einer benutzerdefinierten Anwendung, die mit der Low-Code-Plattform Power Apps erstellt wurde, genutzt werden kann. Sie können auch einen Machine Learning-Echtzeitendpunkt aus einem Power BI Bericht aufrufen, um Vorhersagen in Geschäftsberichten zu präsentieren.
Hinweis
Sowohl der Machine Learning- als auch der Microsoft Power Platform-Stapel verfügen über eine Reihe integrierter Connectors, die bei der direkten Erfassung von Daten helfen können. Diese Connectors können für ein einmaliges Minimum Viable Product (MVP) nützlich sein. Aus den Abschnitten „Erfassen“ und „Speichern“ in der Architektur lassen sich jedoch Empfehlungen in Bezug auf die Rolle standardisierter Datenpipelines für die Beschaffung und Speicherung von Daten aus verschiedenen Quellen ableiten. Diese Muster werden in der Regel von den Teams der Unternehmensdatenplattform implementiert und verwaltet.
Komponenten
Sie können die folgenden Komponenten verwenden.
Microsoft Power Platform-Dienste
- Power Platform: Eine Reihe von Tools zum Analysieren von Daten, Erstellen von Lösungen, Automatisieren von Prozessen und Erstellen virtueller Agents. Es umfasst Power Apps, Power Automate, Power BI und Microsoft Copilot Studio (ehemals Power Virtual Agents).
- Power Apps: Eine Suite aus Apps, Diensten, Connectors und einer Datenplattform. Sie bietet eine Umgebung für die schnelle Entwicklung benutzerdefinierter Apps für Ihre individuellen Geschäftsanforderungen.
- Microsoft Power Automate: Ein Dienst, der Sie beim Erstellen automatisierter Workflows zwischen Ihren bevorzugten Apps und Diensten unterstützt. Verwenden Sie ihn, um Dateien zu synchronisieren, Benachrichtigungen abzurufen, Daten zu sammeln usw.
- Power BI: Eine Sammlung von Softwarediensten, Apps und Connectors, die ineinandergreifen, um Ihre unzusammenhängenden Datenquellen in kohärente, visuell ansprechende und interaktive Erkenntnisse zu verwandeln.
Azure-Dienste
- Machine Learning: Ein ML-Dienst auf Unternehmensniveau zum schnellen Erstellen und Bereitstellen von Modellen. Er bietet Benutzern aller Qualifikationsstufen einen Low-Code-Designer, automatisiertes ML und eine gehostete Jupyter-Notebook-Umgebung zur Unterstützung Ihrer eigenen bevorzugten IDE.
- Verwaltete Machine Learning-Endpunkte: Onlineendpunkte, die es Ihnen gestatten, Ihr Modell bereitzustellen, ohne die zugrunde liegende Infrastruktur erstellen und verwalten zu müssen.
- Azure Kubernetes Service: ML verfügt über unterschiedliche Unterstützung für verschiedene Computeziele. Azure Kubernetes Service ist ein solches Ziel, das sich hervorragend für Echtzeitmodellendpunkte auf Unternehmensniveau eignet.
- Azure Data Lake: Ein Hadoop-kompatibles Dateisystem. Es verfügt über einen integrierten hierarchischen Namespace und die enorme Skalierfähigkeit und Wirtschaftlichkeit von Azure Blob Storage.
- Azure Synapse Analytics: Ein uneingeschränkter Analysedienst, der Datenintegration, Data Warehousing für Unternehmen und Big Data-Analysen vereint.
- Event Hubs und IoT Hub: Beide Dienste erfassen Datenströme, die von Clientanwendungen oder IoT-Geräten generiert werden. Anschließend erfassen und speichern sie Streamingdaten, wobei die Abfolge der empfangenen Ereignisse beibehalten wird. Consumer können eine Verbindung mit den Hubendpunkten herstellen, um Nachrichten zur Verarbeitung abzurufen.
Plattformdienste
Um die Qualität Ihrer Azure-Lösungen zu verbessern, befolgen Sie die Empfehlungen und Richtlinien im Azure Well-Architected Framework. Das Framework besteht aus fünf Säulen der Architekturexzellenz:
- Kostenoptimierung
- Betriebliche Effizienz
- Effiziente Leistung
- Zuverlässigkeit
- Sicherheit
Um einen Entwurf zu erstellen, der diese Empfehlungen berücksichtigt, berücksichtigen Sie die folgenden Dienste:
- Microsoft Entra ID: Identitätsdienste, einmaliges Anmelden (Single Sign-On, SSO) und Multi-Faktor-Authentifizierung für alle Azure-Workloads.
- Microsoft Cost Management: Finanzielle Governance über Ihre Azure-Workloads.
- Azure Key Vault: Sichere Verwaltung von Anmeldeinformationen und Zertifikaten.
- Azure Monitor: Sammlung, Analyse und Anzeige von Telemetriedaten aus Ihren Azure-Ressourcen. Verwenden Sie Monitor, um Probleme proaktiv zu identifizieren und so die Leistung und Zuverlässigkeit zu maximieren.
- Microsoft Defender für Cloud: Stärkung und Überwachung des Sicherheitsstatus Ihrer Azure-Workloads.
- Azure DevOps und GitHub: Implementieren Sie DevOps-Verfahren, um die Automatisierung und Compliance Ihrer Pipelines für Workloadentwicklung und -bereitstellung für Azure Synapse Analytics und Machine Learning zu erzwingen.
- Azure Policy: Implementierung von Unternehmensstandards und Governance für Ressourcenkonsistenz, Einhaltung gesetzlicher Bestimmungen, Sicherheit, Kosten und Verwaltung.
Alternativen
Ein MVP für maschinelles Lernen profitiert von schnelleren Ergebnissen. In einigen Fällen können die Anforderungen eines benutzerdefinierten Modells durch vortrainierte Azure Cognitive Services oder Azure Applied AI Services erfüllt werden. In anderen Fällen eignet sich Power Apps AI Builder besser für ein bestimmtes Modell.
Szenariodetails
Ein allgemeiner Technologietrend ist die wachsende Beliebtheit von Citizen KI-Rollen. Bei diesen Rollen handelt es sich um Personen aus Geschäftsbereichen, die Geschäftsprozesse durch die Anwendung von ML- und KI-Technologien verbessern möchten. Ein wichtiger Faktor, der diesen Trend befeuert, ist die wachsende Reife und Verfügbarkeit von Low-Code-Tools zur Entwicklung von ML-Modellen.
Da solche Initiativen bekanntermaßen eine hohe Fehlerrate aufweisen, wird die Fähigkeit, schnell einen Prototypen für eine KI-Anwendung zu erstellen und in einer realen Umgebung zu validieren, zu einer wichtigen Voraussetzung für einen Fail-Fast-Ansatz. Es gibt zwei wesentliche Tools zum Entwickeln von Modellen, die Prozesse modernisieren und transformative Ergebnisse fördern:
- Ein ML-Toolkit für alle Qualifikationsstufen
- Unterstützt die ML-Entwicklung ganz ohne Code oder vollständig programmiert und alle Stufen dazwischen.
- Verfügt über eine flexible grafische Benutzeroberfläche mit wenig Code (GUI)
- Ermöglicht Benutzern das schnelle Einbinden und Vorbereiten von Daten.
- Ermöglicht Benutzern das schnelle Erstellen und Bereitstellen von Modellen.
- Verfügt über erweiterte, automatisierte ML-Funktionen für die Entwicklung von ML-Algorithmen.
- Ein Toolkit für die Low-Code Anwendungsentwicklung
- Ermöglicht Benutzern das Erstellen benutzerdefinierter Anwendungen und Automatisierungsworkflows.
- Erstellt Workflows, sodass Consumer und Geschäftsprozesse mit einem ML-Modell interagieren können.
Machine Learning erfüllt die Rolle einer grafischen Low-Code-Benutzeroberfläche für die ML-Entwicklung. Es verfügt über automatisierte Funktionen für ML und die Bereitstellung für Batch- oder Echtzeitendpunkte. Power Platform, das Power Apps und Power Automate umfasst, stellt die Toolkits bereit, mit denen Sie schnell eine benutzerdefinierte Anwendung und einen benutzerdefinierten Workflow erstellen können, die Ihren ML-Algorithmus implementieren. Geschäftsbenutzer*innen können jetzt ML-Anwendungen für die Produktion erstellen, um Legacygeschäftsprozesse zu transformieren.
Mögliche Anwendungsfälle
Diese Toolkits minimieren die Zeit und den Aufwand, die zum Erstellen eines Prototyps der Vorteile eines ML-Modells für einen Geschäftsprozess erforderlich sind. Sie können einen Prototyp problemlos auf eine Produktionsanwendung ausdehnen. Zu den Verwendungsmöglichkeiten für diese Methoden gehören:
- Fertigungsbetriebe mit Legacyanwendungen, die veraltete deterministische Vorhersagen verwenden. Solche Situationen können von der verbesserten Genauigkeit eines ML-Modells profitieren. Der Nachweis einer verbesserten Genauigkeit erfordert sowohl einen Modell- als auch Entwicklungsaufwand für die Integration in lokale Legacysysteme.
- Callcenter-Betriebe mit Legacyanwendungen, die sich bei Datendrift nicht anpassen. Modelle, die sich automatisch neu trainieren, können eine erhebliche Verbesserung bei der Vorhersage von Churns oder der Genauigkeit der Risikoprofilerstellung ermöglichen. Die Validierung erfordert eine Integration in vorhandene CRM- und Ticketverwaltungssysteme. Die Integration könnte teuer sein.
Überlegungen
Diese Überlegungen beruhen auf den Säulen des Azure Well-Architected Frameworks, d. h. einer Reihe von Grundsätzen, mit denen die Qualität von Workloads verbessert werden kann. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.
Zuverlässigkeit
Zuverlässigkeit stellt sicher, dass Ihre Anwendung Ihre Verpflichtungen gegenüber den Kunden erfüllen kann. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Zuverlässigkeit.
Bei den meisten Komponenten dieses Szenarios handelt es sich um verwaltete Dienste mit automatischer Skalierung. Die Verfügbarkeit der in diesem Beispiel verwendeten Dienste variiert je nach Region.
Apps, die auf Machine Learning (ML) basieren, erfordern in der Regel Ressourcen für das Training und weitere Ressourcen für die Bereitstellung. Für Trainingsressourcen ist in der Regel keine Hochverfügbarkeit erforderlich, da diese Ressourcen nicht direkt von Liveanforderungen aus der Produktionsumgebung betroffen sind. Ressourcen, die für die Bereitstellung von Anforderungen erforderlich sind, benötigen Hochverfügbarkeit.
Kostenoptimierung
Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Kostenoptimierung.
Azure-Preise: Erstanbieter-IaaS-Dienste (Infrastructure-as-a-Service) und Erstanbieter-PaaS-Dienste (Platform-as-a-Service) in Azure verwenden ein nutzungsbasiertes Preismodell. Sie erfordern keine Lizenz- oder Abonnementgebühr. Im Allgemeinen sollten Sie den Azure-Preisrechner verwenden, um Ihre Kosten zu ermitteln. Weitere Überlegungen finden Sie unter Kostenoptimierung im Well-Architected Framework.
Power Platform-Preise: Power Apps, Power Automate und Power BI sind SaaS-Anwendungen (Software-as-a-Service) und verfügen über eigene Preismodelle, einschließlich Plänen pro App und pro Benutzer.
Optimaler Betrieb
„Optimaler Betrieb“ deckt die Betriebsprozesse ab, die für die Bereitstellung einer Anwendung und deren Ausführung in der Produktion sorgen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung des optimalen Betriebs.
DevOps-Methoden werden verwendet, um den in diesem Beispiel verwendeten End-to-End-Ansatz zu orchestrieren. Im Machine Learning DevOps-Leitfaden werden bewährte Methoden und Erkenntnisse aus der Einführung von ML-Vorgängen (MLOps) im Unternehmen mithilfe von Machine Learning präsentiert.
DevOps-Automatisierung lässt sich auf die in diesem Beispiel bereitgestellte Microsoft Power Platform-Lösung anwenden. Weitere Informationen zu Microsoft Power Platform DevOps finden Sie unter Microsoft Power Platform Build Tools für Azure DevOps – Power Platform.
Bereitstellen dieses Szenarios
Sehen Sie sich dieses Szenario an: Eine Außendienstmitarbeiterin verwendet eine App, die den Marktpreis eines Autos schätzt. Sie können Machine Learning verwenden, um schnell einen Prototyp für ein ML-Modell dieser App zu erstellen. Sie verwenden einen Low-Code-Designer und ML-Merkmale, um das Modell zu erstellen und es dann als REST-Echtzeitendpunkt bereitzustellen.
Das Modell belegt vielleicht die Machbarkeit, aber Benutzer*innen haben keine einfache Möglichkeit, ein Modell zu nutzen, das als REST-API implementiert ist. Microsoft Power Platform kann dabei helfen, diese „letzte Meile“ zu überbrücken, wie hier dargestellt.
Hier sehen Sie eine Benutzeroberfläche für die App, die in Power Apps mithilfe der Low-Code-Benutzeroberfläche erstellt wurde, die von Power Apps bereitgestellt wird.
Sie können Power Automate verwenden, um einen Low-Code-Workflow zu erstellen, mit dem die Eingabe des Benutzers analysiert, an den Machine Learning-Endpunkt übergeben und die Vorhersage abgerufen wird. Sie können auch Power BI verwenden, um mit dem Machine Learning-Modell zu interagieren und benutzerdefinierte Geschäftsberichte und Dashboards zu erstellen.
Um dieses End-to-End-Beispiel bereitzustellen, befolgen Sie schritt-für-Schritt-Anweisungen in Car Price Predictor – Azure Machine Learning + Power App-Lösung.
Erweiterte Szenarien
Betrachten Sie folgende Szenarien:
Bereitstellen in Teams
Die im obigen Beispiel bereitgestellte Beispiel-App kann auch in Microsoft Teams bereitgestellt werden. Teams stellt einen hervorragenden Verteilungskanal für Ihre Apps dar und bietet Ihren Benutzern eine App-Zusammenarbeitserfahrung. Weitere Informationen zum Bereitstellen einer App in Teams mithilfe von Power Apps finden Sie unter Veröffentlichen Ihrer App mithilfe von Power Apps in Teams: Power Apps.
Nutzen der API aus mehreren Apps und Automatisierungen
In diesem Beispiel konfigurieren wir einen Power Automate-Cloudflow so, dass er den REST-Endpunkt als HTTP-Aktion nutzt. Wir können stattdessen einen benutzerdefinierten Connector für den REST-Endpunkt einrichten und ihn direkt über Power Apps oder aus Power Automate nutzen. Dieser Ansatz ist nützlich, wenn mehrere Apps denselben Endpunkt nutzen sollen. Durch Verwendung der DLP-Richtlinie (Data Loss Prevention, Verhinderung von Datenverlust) für Connectors im Microsoft Power Platform Admin Center bietet der Ansatz auch Governance. Informationen zum Erstellen eines benutzerdefinierten Connectors finden Sie unter Verwenden eines benutzerdefinierten Connectors aus einer Power Apps-App. Weitere Informationen zum Microsoft Power Platform-Connector DLP finden Sie unter Richtlinien zur Verhinderung von Datenverlust – Power Platform.
Beitragende
Dieser Artikel wird von Microsoft gepflegt. Es wurde ursprünglich geschrieben von:
- Vyas Dev Venugopalan | Sr. Specialist – Azure Data & AI
Nächste Schritte
- So funktioniert Azure Machine Learning: Architektur und Konzepte
- Erstellen intelligenter Anwendungen in Kombination mit erstklassiger KI