Bearbeiten

Erstellen einer Architektur mit Echtzeit-Machine Learning-Rückschluss und Low-Code-Webanwendungs-UI in Azure

Azure Machine Learning
Microsoft Power Platform
Power Apps
Power Automate
Power BI

In dieser Lösung wird die Citizen AI mit der Power Platform erläutert, die ein hohes Beispiel für eine End-to-End-Lambda-Architektur für Echtzeit- und Batchdatenstreaming bietet. Er befasst sich mit der Bereitstellung von Machine Learning-Modellen für Echtzeit- und Batchrückschlüssen. In diesem Artikel wird auch beschrieben, wie Sie diese Modelle mithilfe einer Endbenutzeranwendung nutzen oder Ergebnisse in Power BI analysieren.

Aufbau

Diagram that shows a machine learning model created in Machine Learning that obtains car data from Data Lake Storage and provides inferences to an endpoint.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Datenfluss

In diesem Artikel werden Sie durch eine MVP-Architektur (Model-View-Presenter) geführt, indem Sie semistrukturierte Daten verwenden, die in Azure Data Lake Storage gespeichert sind. Sie verwenden diese Daten in Azure Machine Learning zum Trainieren eines Machine Learning-Modells. Sie stellen das Modell auf einem Echtzeitendpunkt bereit, der in einer Azure-Containerinstanz oder Azure Kubernetes Service (AKS)-Cluster bereitgestellt wird. Schließlich nutzt Power Apps das Modell mithilfe einer benutzerdefinierten Benutzer-App mit wenig Code.

  1. Erfassen: Semistrukturierte Daten wie JSON, XML, CSV und Protokolle werden in Data Lake Storage geladen. Sie können den Umfang der Datenerfassung erweitern, indem Sie Azure Synapse Pipelines verwenden, um Batchdaten aus einer Vielzahl von Quellen abzurufen. Sie können den Bereich auf weitere Datentypen erweitern – ohne den Architekturentwurf zu ändern – sowohl lokal als auch in der Cloud. Diese Daten umfassen Folgendes:

    • Unstrukturierte Daten wie Video, Bilder, Audio und Freitext.
    • Strukturierte Daten wie relationale Datenbanken und Azure-Datendienste.
  2. Store: Sie können Daten in einem rohen Format erfassen und dann in Data Lake Storage transformieren.

  3. Modell trainieren und bereitstellen: Machine Learning bietet einen Dienst für das maschinelle Lernen auf Unternehmensniveau, um schnell Modelle zu erstellen und bereitzustellen. Es bietet Benutzern aller Kenntnisstufen einen Low-Code-Designer, automatisiertes maschinelles Lernen und eine gehostete Jupyter-Notebook-Umgebung, die verschiedene IDEs unterstützt. Sie können Modelle als Echtzeitendpunkte auf AKS oder als verwalteter Onlineendpunkt bereitstellen. Für Batchrückschlüsse von Machine Learning-Modellen können Sie Machine Learning-Pipelines verwenden.

  4. Nutzung: 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 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 Produkt nützlich sein. Die Abschnitte Erfassen und Store der Architektur fördern jedoch die Rolle standardisierter Datenpipelines für die Beschaffung und Speicherung von Daten aus verschiedenen Quellen in großem Umfang. Diese Muster werden in der Regel von den Teams der Unternehmensdatenplattform implementiert und verwaltet.

Komponenten

  • Azure Data Lake Storage: Ein Hadoop-kompatibles Dateisystem. Es verfügt über einen integrierten hierarchischen Namespace und die enorme Skalierfähigkeit und Wirtschaftlichkeit von Azure Blob Storage.

  • Azure Machine Learning: Ein Dienst für das maschinelle Lernen auf Unternehmensniveau, der zum schnellen Erstellen und Bereitstellen von Modellen verwendet wird. Er bietet Benutzern aller Kenntnisstufen einen Low-Code-Designer, automatisiertes maschinelles Lernen und eine gehostete Jupyter-Notebook-Umgebung, um Ihre bevorzugte Entwicklungsumgebung zu unterstützen.

  • Azure Kubernetes Service: Machine Learning bietet unterschiedliche Unterstützung für verschiedene Computeziele. Azure Kubernetes Service ist ein solches Ziel, und es eignet sich hervorragend für hochskalige Produktionsbereitstellungen. Er bietet schnelle Antwortzeiten und die automatische Skalierung von bereitgestellten Diensten.

  • Azure Container Instances: Container Instances eignet sich hervorragend für echtzeitbasierte Rückschlüsse, und es wird nur für Entwicklungs- und Testzwecke empfohlen. Wenn Sie keinen Cluster verwalten müssen, verwenden Sie es für CPU-basierte Workloads mit niedriger Skalierung, die weniger als 48 GB RAM erfordern.

  • Microsoft Power Platform: Ein Satz von Tools zum Analysieren von Daten, Erstellen von Lösungen, Automatisieren von Prozessen und Erstellen virtueller Agents. Dazu gehören Power App, Power Automate, Power BI und Power Virtual Agents.

  • Power Apps ist eine Datenplattform und eine Suite von Apps, Diensten und Connectors. 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.

Alternativen

Die Lösung in diesem Artikel konzentriert sich auf eine Architektur, die von der Geschwindigkeit zum Ergebnis profitiert. 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 kann Power Apps AI Builder ein für den Zweck geeignetes Modell bereitstellen.

Szenariodetails

Die Fähigkeit, schnell einen Prototyp zu erstellen und eine KI-Anwendung in einer realen Umgebung zu überprüfen, ist wichtig, um einem Fail-Fast-Ansatz zu folgen. Die folgenden Dienste können bei dieser Entwicklung helfen:

Machine Learning

  • Unterstützt codefreie bis vollständig codierte Machine Learning-Entwicklung
  • Verfügt über eine flexible grafische Low-Code-Benutzeroberfläche (GUI).
  • Ermöglicht Benutzern das schnelle Einbinden und Vorbereiten von Daten.
  • Ermöglicht Benutzern das schnelle Erstellen und Bereitstellen von Modellen.
  • Hat erweiterte, automatisierte Machine Learning-Funktionen für die Entwicklung von Machine Learning-Algorithmus

Power Apps und Power Automate

  • Ermöglicht Benutzern das Erstellen benutzerdefinierter Anwendungen und Automatisierungsworkflows.
  • Erstellt Workflows, sodass Consumer und Geschäftsprozesse mit einem Machine Learning-Modell interagieren können

End-to-End-Analysen

Diese Architektur erweitert Analytics-End-to-End mit Azure Synapse, einem Beispielszenario. In diesem Szenario kann ein benutzerdefiniertes Machine Learning-Modell in Machine Learning trainieren. Anschließend können Sie das Modell mit einer benutzerdefinierten Anwendung implementieren, die mithilfe von Microsoft Power Platform erstellt wurde.

Machine Learning erfüllt die Rolle einer grafischen Low-Code-Benutzeroberfläche (GUI) für die Machine Learning-Entwicklung. Es verfügt über automatisiertes Machine Learning und die Bereitstellung für Batch- oder Echtzeitendpunkte. Microsoft Power Platform, das Microsoft Power Apps und Microsoft Power Automate umfasst, stellt die Toolkits bereit, um schnell eine benutzerdefinierte Anwendung und einen Workflow zu erstellen, die Ihren Machine Learning-Algorithmus implementieren. Jetzt können Ihre Endbenutzer Machine Learning-Anwendungen mit Produktionsniveau erstellen, um ihre älteren Geschäftsprozesse zu transformieren.

Mögliche Anwendungsfälle

Diese Beispielauslastung soll einem Käufer oder einem Einkaufsmitarbeiter in der Automobilindustrie helfen, den Marktpreis eines Autos zu schätzen. Ein Benutzer kann eine Power App verwenden, um Fahrzeugdetails an ein Modell zu übermitteln, das auf Marktdaten trainiert ist und eine Preisvorhersage zurückgibt.

Die Anwendbarkeit dieser Beispielauslastung ist nicht auf eine bestimmte Branche beschränkt und kann auf eine Vielzahl von Anwendungsfällen angewendet werden. Jeder Anwendungsfälle, der Daten verwendet, die auf einem Datensee für Modellschulungen und -bereitstellungen für eine Echtzeitwebanwendung gespeichert sind, kann auch für unstrukturierte oder strukturierte Daten verwendet werden.

  • Kundensegmentierung: Identifizieren Sie Zielmärkte basierend auf Echtzeitdaten und Indikatoren. Beispielsweise können Sie die Werbung vorhersagen, auf die ein Käufer basierend auf Kaufdaten und Kundendetails reagieren kann.
    • Schlüsselindustrien: Banken, Versicherungen, Einzelhandel und Telekommunikation.
  • Verhinderung von Kundenabwanderung: Erkennen Sie Anzeichen von Unzufriedenheit unter den Kunden und identifizieren Sie Kunden, die Gefahr laufen, das Unternehmen zu verlassen.
    • Schlüsselindustrien: Banken, Versicherungen, Automobil und Einzelhandel
  • Predictive Maintenance: Mit betrieblicher Berichterstattung und durch Analyse von Metriken und Echtzeitdaten im Zusammenhang mit der Lebenszykluswartung technischer Geräte können Unternehmen Zeitachsen, potenzielle Wartungsereignisse und bevorstehende Ausgabenanforderungen vorhersagen. Diese Vorhersagen helfen, Wartungskosten zu optimieren und kritische Ausfallzeiten zu vermeiden.
    • Schlüsselindustrien: Automobilindustrie, Fertigung, Logistik und Öl und Gas
  • Echtzeit-Personalisierung: Generieren sie personalisierte Empfehlungen für Kunden in Echtzeit.
    • Schlüsselindustrien: Einzelhandel und E-Commerce.

Überlegungen

Diese Überlegungen bilden die Säulen des Azure Well-Architected Framework, einer Reihe von Leitprinzipien, die Sie zur Verbesserung der Qualität eines Workloads verwenden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

In der Welt der Machine Learning- und benutzerdefinierten Modelltrainings und -bereitstellung sollten Sie mehr Governance implementieren und Praktiken für Vorgänge wie MLOps, DevOps und kontinuierliche Integration/kontinuierliche Bereitstellung (CI/CD) implementieren.

Zuverlässigkeit

Zuverlässigkeit stellt sicher, dass Ihre Anwendung Ihre Verpflichtungen gegenüber den Kunden erfüllen kann. Weitere Informationen finden Sie in der Überblick über die Säule „Zuverlässigkeit“.

Bei den meisten Komponenten dieses Szenarios handelt es sich größtenteils um verwaltete Dienste mit automatischer Skalierung. Die Verfügbarkeit dieser Dienste ist je nach Region unterschiedlich.

Apps, die auf Machine Learning 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 Produktionsanforderungen erforderlich sind, benötigen jedoch eine hohe Verfü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 Übersicht über die Säule „Kostenoptimierung“.

Azure-Preise: Dienste von Erstanbietern, die Infrastructure-as-a-Service (IaaS) und Platform as a Service (PaaS) auf Azure anbieten, verwenden ein verbrauchsabhängiges Preismodell. Sie erfordern keine Lizenz- oder Abonnementgebühr. Sie können den Azure-Preisrechner verwenden, um die Kosten für die Verwendung der Dienste mit Ihrer bestimmten Datengröße und -workloads zu schätzen.

Weitere Azure-Dienstpreisressourcen finden Sie unter den folgenden Links:

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.

Bereitstellen dieses Szenarios

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.

Screenshot that shows the UI controls, like buttons, and drop-down lists for the user to enter car data.

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. Weitere Informationen finden Sie unter Tutorial: Nutzen der Azure Machine Learning-Modelle in Power BI.

Diagram that shows the dashboard workflow.

Um dieses End-to-End-Beispiel bereitzustellen, befolgen Sie Schritt-für-Schritt-Anleitungen in Car Price Predictor – Azure ML + Power App-Lösung.

Beitragende

Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:

Hauptautor:

Andere Mitwirkende:

Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.

Nächste Schritte