Kapitel 4. Prototyping

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Jetzt solltest du endlich genug theoretisches Hintergrundwissen haben, um einige KI-Anwendungsfälle in die Praxis umzusetzen. In diesem Kapitel erfährst du, wie du mit einer aus dem Produktmanagement entlehnten Prototyping-Technik schnell ML-Anwendungsfälle erstellen und in die Praxis umsetzen und deine Annahmen über Machbarkeit und Auswirkungen überprüfen kannst.

Erinnere dich, unser Ziel ist es, schnell herauszufinden, ob unsere KI-gestützte Idee einen Mehrwert schafft und ob wir in der Lage sind, eine erste Version der Lösung zu bauen, ohne zu viel Zeit oder andere Ressourcen zu verschwenden. In diesem Kapitel lernst du nicht nur die theoretischen Konzepte zum Prototyping kennen, sondern auch die konkreten Werkzeuge, die wir in den Beispielen in diesem Buch verwenden werden.

Was ist ein Prototyp, und warum ist er wichtig?

Sehen wir der harten Wahrheit ins Auge: Die meisten ML-Projekte schlagen fehl. Und das liegt nicht daran, dass die meisten Projekte unterfinanziert sind oder es ihnen an Talent mangelt (obwohl das auch häufige Probleme sind).

Der Hauptgrund, warum ML-Projekte fehlschlagen, ist die unglaubliche Ungewissheit, die sie umgibt: Anforderungen, Lösungsumfang, Nutzerakzeptanz, Infrastruktur, rechtliche Erwägungen und vor allem die Qualität des Ergebnisses lassen sich im Vorfeld einer neuen Initiative nur sehr schwer vorhersagen. Vor allem, wenn es um das Ergebnis geht, weißt du nie wirklich, ob deine Daten genügend Signale enthalten, bis du den Prozess der Datenerfassung, -aufbereitung und -bereinigung durchlaufen und das eigentliche Modell erstellt hast.

Viele Unternehmen starten ihre ersten KI/ML-Projekte mit viel Enthusiasmus. Dann stellen sie fest, dass sich die Projekte als Fass ohne Boden herausstellen. Monatelange Arbeit und Tausende von Dollar werden ausgegeben, nur um zu einem einfachen Ergebnis zu kommen: Es funktioniert nicht.

Prototyping ist eine Möglichkeit, das Risiko zu minimieren und die Auswirkungen und Machbarkeit deines ML-Anwendungsfalls zu bewerten, bevor du ihn skalierst. Mit Prototyping werden deine ML-Projekte schneller und billiger und liefern einen höheren Return on Investment.

Für dieses Buch ist ein Prototyp ein unfertiges Produkt mit einem einfachen Zweck: der Validierung. Konzepte wie ein PoC oder ein Minimum Viable Product (MVP) dienen demselben Zweck, aber diese Konzepte haben einen anderen Hintergrund und beinhalten mehr als nur Validierung. Die Idee der Validierung ist deshalb so wichtig, weil du keinen Prototyp bauen musst, wenn du nichts zu validieren hast.

In dem Kontext von KI- oder ML-Projekten willst du deinen Anwendungsfall in zwei Dimensionen validieren: Auswirkungen und Machbarkeit. Deshalb ist es so wichtig, dass du eine ungefähre Vorstellung von diesen Kategorien hast, bevor du loslegst und etwas baust.

Hier sind einige Beispiele für Dinge, die du im Zusammenhang mit ML und KI validieren kannst:

  • Bietet deine Lösung einen Mehrwert für den Nutzer?

  • Wird deine Lösung so genutzt, wie sie gedacht war?

  • Wird deine Lösung von den Nutzern akzeptiert?

  • Enthalten deine Daten genug Signale, um ein nützliches Modell zu erstellen?

  • Arbeitet ein KI-Dienst gut genug mit deinen Daten, um einen ausreichenden Mehrwert zu bieten?

Um ein effektives Validierungsinstrument zu sein, müssen ML-Prototypen durchgängig sein. Ein genaues Modell zu erstellen ist gut. Ein nützliches Modell zu erstellen ist noch besser. Und die einzige Möglichkeit, diese Informationen zu erhalten, ist, deine ML-Lösung mit echten Nutzern in Kontakt zu bringen. Du kannst das beste Modell zur Vorhersage der Kundenabwanderung entwickeln, aber wenn die Marketing- und Vertriebsmitarbeiter nicht bereit sind, die Vorhersagen in die Tat umzusetzen, ist dein Projekt tot. Deshalb brauchst du schnelles Nutzerfeedback.

Wenn du den Prototyp deiner ML-gestützten Lösung entwickelst, solltest du bei den Daten keine Kompromisse eingehen. Verwende keine Daten, die in der Produktion nicht zur Verfügung stehen würden. Führe keine manuellen Bereinigungen durch, die nicht skalierbar sind. Du kannst ein Modell reparieren, du kannst die Benutzeroberfläche reparieren. Aber du kannst die Daten nicht reparieren. Behandle sie so, wie du sie in einem Produktionsszenario behandeln würdest.

Ein Prototyp sollte in der Regel einen klar definierten Umfang haben, der Folgendes umfasst:

Klares Ziel
Zum Beispiel: "Können wir ein Modell erstellen, das bei bestimmten Daten x besser ist als unser Basismodell B, um y vorherzusagen?"
Strenger Zeitrahmen
Zum Beispiel: "Wir werden das beste Modell bauen, das wir in maximal zwei Wochen bauen können."
Akzeptanzkriterien
Zum Beispiel: "Unser Prototyp hat den Benutzerakzeptanztest bestanden, wenn Feedback F passiert ist."

Wenn es um Technologie geht, sollte ein Prototyp dir die Entscheidung überlassen, welcher Technologie-Stack am besten geeignet ist, um die Ziele innerhalb des Zeitrahmens zu erreichen. Prototypen geben dir wertvolle Einblicke in potenzielle Problembereiche (z. B. Probleme mit der Datenqualität), während du die Interessengruppen von Anfang an einbeziehst und ihre Erwartungen kontrollierst.

Prototyping in Business Intelligence

Jahrzehntelang war der typische Entwicklungsprozess für BI-Systeme die klassische Wasserfall-Methode: Projekte wurden als linearer Prozess geplant, der mit der Anforderungserfassung begann, dann zum Design überging, gefolgt von der Datenentwicklung, dem Testen und der Bereitstellung der vom Unternehmen gewünschten Berichte oder Metriken.

Auch ohne KI oder ML stößt die Wasserfallmethode an ihre Grenzen. Das liegt daran, dass mehrere Faktoren zusammenwirken. Die Geschäftsanforderungen werden immer unschärfer, da das Geschäft selbst immer komplexer wird. Darüber hinaus wird auch die Technologie immer komplexer. Während du vor 10 Jahren noch eine Handvoll Datenquellen integrieren musstest, müssen heute selbst kleine Unternehmen Dutzende von Systemen verwalten.

Wenn dein Projektplan für eine groß angelegte BI-Initiative fertig ist, wird er oft schon von der Realität überholt. Mit KI/ML und den damit verbundenen Unwägbarkeiten werden die Dinge nicht viel einfacher.

Um eine erfolgreiche KI-gesteuerte Lösung als Teil eines BI-Systems einzuführen, musst du dein BI-System im Wesentlichen wie ein Datenprodukt behandeln. Das bedeutet, dass du dir darüber im Klaren sein musst, dass du nicht weißt, ob deine Idee letztendlich wie geplant funktionieren wird, wie die endgültige Lösung aussehen wird und ob deine Nutzer/innen wie erwartet mit ihr interagieren werden. Techniken des Produktmanagements, wie das Prototyping, helfen dir, diese Risiken zu mindern und ermöglichen eine flexiblere Entwicklung. Aber wie genau kannst du das Prototyping im Bereich BI anwenden?

Von Berichten in BI-Produktionssystemen wird standardmäßig erwartet, dass sie zuverlässig und verfügbar sind und dass die darin enthaltenen Informationen korrekt sind. Dein Produktionssystem ist also nicht die beste Wahl, um etwas unter den Nutzern zu testen. Was haben wir sonst noch?

Unternehmen arbeiten normalerweise mit Testsystemen, um neue Funktionen auszuprobieren, bevor sie in die Produktion gehen. Das Problem bei Testsystemen ist jedoch, dass sie oft den gleichen technischen Aufwand und die gleichen Herausforderungen mit sich bringen wie das Produktionssystem. In der Regel wird die gesamte Produktionsumgebung zu Testzwecken nachgebildet: ein Test-Datawarehouse, ein Test-BI-Frontend und ein Testbereich für ETL-Prozesse, denn du willst sicherstellen, dass das, was auf dem Testsystem funktioniert, auch in der Produktion funktioniert.

Im Sinne unserer Definition findet ein Prototyp vor dem Testen statt, wie in Abbildung 4-1 dargestellt. Für den Prototyp brauchst du eine tiefe vertikale Integration von der Dateneingabe über die Analysedienste bis hin zur Benutzeroberfläche, wobei die technische Komplexität insgesamt gering gehalten werden muss.

Prototyping in the software development process
Abbildung 4-1. Prototyping im Softwareentwicklungsprozess

In den meisten Fällen, vor allem bei monolithischen BI-Systemen, eignen sich dein Produktions- und Test-Stack nicht für ein Prototyping in nur wenigen Tagen oder Wochen. Für unsere Zwecke brauchen wir etwas weniger Komplexes und Leichtgewichtiges.

Welchen Tech Stack du auch immer dafür verwendest, du solltest auf Folgendes achten:

  • Der Tech-Stack unterstützt alle drei Ebenen der KI-Anwendungsfall-Architektur (Daten, Analysen und Benutzeroberfläche), um sicherzustellen, dass die Daten verfügbar und einsatzfähig sind, dass deine Modelle mit deinen Daten gut genug funktionieren und dass die Benutzer deine Lösung akzeptieren und einen Nutzen darin sehen.

  • Dein Stack sollte offen sein und eine hohe Konnektivität bieten, um eine spätere Integration in das Test- und vielleicht sogar in das Produktionssystem zu ermöglichen. Dieser Aspekt ist wichtig, denn wenn die Tests erfolgreich sind, willst du einen reibungslosen Übergang von der Prototyping-Phase zur Testphase ermöglichen. Wenn du den Prototyp auf deinem lokalen Rechner entwickelst, ist es kompliziert, den Arbeitsablauf von deinem Computer auf einen entfernten Server zu übertragen und zu erwarten, dass er genauso reibungslos funktioniert. Tools wie Docker erleichtern dir den Übergang und sorgen für technische Reibungsverluste, die nichts mehr mit deiner ursprünglichen Validierungshypothese zu tun haben.

Die perfekte Prototyping-Plattform für KI-gestützte BI-Anwendungsfälle bietet daher eine hohe Konnektivität, viele verfügbare Integrationsdienste und niedrige Anfangsinvestitionskosten. Cloud-Plattformen haben bewiesen, dass sie diese Anforderungen gut erfüllen.

Außerdem solltest du eine Plattform nutzen, die dir einen einfachen Zugang zu den verschiedenen KI/ML-Diensten ermöglicht, die in Kapitel 2 behandelt werden. Wenn du die Daten zur Verfügung hast, sollte das Prototyping des ML-Modells nicht länger als zwei bis vier Wochen dauern, manchmal sogar nur ein paar Tage. Nutze AutoML für Regressions-/Klassifizierungsaufgaben, AIaaS für Standarddienste wie die Zeichenerkennung und vortrainierte Modelle für benutzerdefinierte Deep Learning-Anwendungen, anstatt sie von Grund auf zu trainieren.

Um zu vermeiden, dass du bei deinem nächsten ML-Projekt unnötig Zeit und Geld verschwendest, solltest du zuerst einen Prototyp bauen, bevor du dich voll ins Zeug legst.

Das KI-Prototyping-Toolkit für dieses Buch

In diesem Buch verwenden wir Microsoft Azure als Plattform für das Prototyping. Du könntest viele andere Tools verwenden, darunter AWS oder GCP. Diese Plattformen sind in ihren Funktionen vergleichbar, und was wir hier mit Azure machen, kannst du im Grunde auch mit jeder anderen Plattform machen.

Ich habe Azure aus den folgenden zwei Gründen gewählt:

  • Viele Unternehmen arbeiten mit einem Microsoft-Stack, und Azure ist für sie die bekannteste Cloud-Plattform.

  • Azure lässt sich nahtlos in Power BI integrieren, ein BI-Tool, das in vielen Unternehmen beliebt ist.

Du fragst dich vielleicht, wie eine vollwertige Cloud-Plattform wie Azure überhaupt leichtgewichtig genug für das Prototyping sein kann. Der Hauptgrund dafür ist, dass wir nicht die gesamte Azure-Plattform nutzen, sondern nur Teile davon, die "als Service" bereitgestellt werden, sodass wir uns nicht um die technischen Details unter der Haube kümmern müssen. Die wichtigsten Dienste, die wir nutzen werden, sind Azure Machine Learning Studio, Azure Blob Storage, eine Azure Rechenressource und eine Reihe von Azure Cognitive Services, Microsofts AIaaS-Angebot.

Das Gute daran ist, dass wir uns zwar noch in der Prototypenphase befinden, die Infrastruktur aber auch für ein Produktionsszenario geeignet wäre. Wir müssten die Prozesse, die Wartung, die Integrationen und die Verwaltung der Lösung ändern, aber die technische Grundlage wäre dieselbe. Darauf gehen wir in Kapitel 11 noch genauer ein.

Ich werde versuchen, mich nicht zu sehr auf Funktionen zu verlassen, die ausschließlich mit Azure und Power BI funktionieren, sondern sie offen genug zu halten, damit du deine eigenen KI-Modelle mit deiner eigenen BI verbinden kannst. Außerdem erfordern die meisten Azure-Integrationen in Power BI eine Pro-Lizenz, die ich dir nicht zumuten möchte. Beginnen wir mit der Einrichtung für Microsoft Azure.

Arbeiten mit Microsoft Azure

Dieser Abschnitt gibt dir eine kurze Einführung in Microsoft Azure und ermöglicht es dir, alle Tools zu aktivieren, die du für die Anwendungsfälle ab Kapitel 7 brauchst. Auch wenn du nicht alle diese Dienste sofort brauchst, empfehle ich dir, sie im Voraus einzurichten, damit du dich später auf die eigentlichen Anwendungsfälle konzentrieren kannst, anstatt dich mit dem technischen Overhead zu beschäftigen.

Anmeldung für Microsoft Azure

Um die KI-Dienste ab Kapitel 7 zu erstellen und zu nutzen, brauchst du ein Microsoft Azure-Konto. Wenn du neu auf der Plattform bist, erhältst du in den ersten 12 Monaten (zum Zeitpunkt der Erstellung dieses Buches) kostenlosen Zugang zu allen Diensten, die wir in diesem Buch behandeln. Außerdem erhältst du ein kostenloses Guthaben von 200 US-Dollar für Dienste, die nach Verbrauch abgerechnet werden, wie z. B. Rechenressourcen oder die Bereitstellung von KI-Modellen.

Um den kostenlosen Zugang zu erkunden und dich anzumelden, besuche https://azure.microsoft.com/free und beginne den Anmeldeprozess.

Hinweis

Wenn du bereits ein Azure-Konto hast, kannst du zu "Azure Rechenressource erstellen" übergehen. Sei dir bewusst, dass dir diese Dienste möglicherweise in Rechnung gestellt werden, wenn du keine kostenlose Testphase hast. Wenn du dir unsicher bist, kontaktiere deinen Azure-Administrator, bevor du fortfährst.

Um dich anzumelden, wirst du aufgefordert, ein Microsoft-Konto zu erstellen. Ich empfehle dir, zu Testzwecken ein neues Konto zu erstellen (und den kostenlosen Kreditbonus zu nutzen!). Wenn du ein Firmenkonto hast, kannst du versuchen, mit diesem weiterzumachen, aber dein Unternehmen könnte Einschränkungen haben. Deshalb ist es vielleicht am besten, wenn du ganz von vorne anfängst, ein bisschen herumspielst und dann mit dem Konto deines Unternehmens weitermachst, sobald du alles herausgefunden hast.

Auf der folgenden Seite klickst du auf "Erstelle einen!"(Abbildung 4-2).

Creating a new Microsoft account
Abbildung 4-2. Erstellen eines neuen Microsoft-Kontos

Gib als Nächstes deine E-Mail-Adresse ein und klicke auf Weiter. Erstelle ein Passwort und fahre fort. Nachdem du bestätigt hast, dass du kein Roboter bist, solltest du den Bildschirm in Abbildung 4-3 sehen.

Azure sign-up prompt
Abbildung 4-3. Eingabeaufforderung für die Azure-Anmeldung

Du musst dein Konto mit einer gültigen Telefonnummer bestätigen. Gib deine Daten ein und klicke auf "Text me" oder "Call me". Gib den Verifizierungscode ein und klicke auf "Code verifizieren". Prüfe nach erfolgreicher Verifizierung die Bedingungen und klicke auf "Weiter".

Du bist fast am Ziel! Bei der letzten Eingabeaufforderung wirst du aufgefordert, deine Kreditkartendaten einzugeben. Warum? Das ist bei allen großen Cloud-Plattformen so. Sobald dein kostenloses Guthaben aufgebraucht ist oder der kostenlose Zeitraum abläuft, wird dir die Nutzung dieser Dienste in Rechnung gestellt. Das Gute an Microsoft für Anfänger ist jedoch, dass du nicht automatisch belastet wirst. Wenn dein kostenloser Zeitraum endet, musst du dich für die Abrechnung nach Aufwand entscheiden.

Nach der erfolgreichen Anmeldung auf solltest du den in Abbildung 4-4 gezeigten Bildschirm des Azure-Portals sehen.

Azure portal dashboard
Abbildung 4-4. Azure Portal Dashboard

Willkommen bei Microsoft Azure! Du kannst diese Startseite jederzeit aufrufen, indem du portal.azure.com besuchst. Lass uns schnell die Startseite des Azure-Portals erkunden:

Navigationsleiste (1)
Du kannst das Portalmenü auf der linken Seite öffnen oder oben rechts zu deinen Kontoeinstellungen navigieren.
Azure Dienste (2)
Dies sind die empfohlenen Dienste für dich. Sie können für dich anders aussehen, vor allem, wenn du dich neu angemeldet hast.
Eine Ressource erstellen (3)
Dies ist eine der am häufigsten verwendeten Schaltflächen. Du verwendest sie, um neue Ressourcen wie Dienste auf Azure zu erstellen.
Navigieren (4)
Dieser Abschnitt enthält Werkzeuge und alle anderen Elemente, die dich zu verschiedenen Einstellungen führen. Du wirst sie im Moment nicht brauchen.

Wenn du diesen Bildschirm siehst, bist du mit der Einrichtung für Microsoft Azure fertig. Wenn du Probleme bei der Einrichtung deines Azure-Kontos hast, empfehle ich dir die folgenden Ressourcen:

Einen Azure Machine Learning Studio-Arbeitsbereich erstellen

Azure Machine Learning Studio ist unsere Werkbank in Microsoft Azure, mit der wir benutzerdefinierte ML-Modelle erstellen und einsetzen und Datensätze verwalten können. Als Erstes musst du einen Azure Machine Learning Workspace erstellen. Der Workspace ist eine grundlegende Ressource in deinem Azure-Konto, die alle deine Experimente, Trainings und eingesetzten ML-Modelle enthält.

Die Workspace-Ressource ist mit deinem Azure-Abonnement verbunden. Obwohl du diese Dienste auch programmatisch erstellen und verwalten kannst, werden wir das Azure-Portal nutzen, um durch den Prozess zu navigieren. Erinnere dich daran, dass alles, was du hier mit Maus und Tastatur machst, auch durch automatisierte Skripte erledigt werden kann, wenn du später möchtest.

Melde dich mit dem Microsoft-Konto an, das du für das Azure-Abonnement verwendet hast, und besuche portal.azure.com. Klicke auf die Schaltfläche "Eine Ressource erstellen"(Abbildung 4-5).

Creating a new resource in Azure
Abbildung 4-5. Erstellen einer neuen Ressource in Azure

Benutze jetzt die Suchleiste, um Folgendes zu finden machine learning und wähle sie aus(Abbildung 4-6).

Searching for the ML resource
Abbildung 4-6. Suche nach der ML-Ressource

Im Bereich Maschinelles Lernen klickst du auf Erstellen(Abbildung 4-7).

Creating a new ML resource
Abbildung 4-7. Erstellen einer neuen ML-Ressource

Du musst einige Informationen für deinen neuen Arbeitsbereich angeben, wie in Abbildung 4-8 dargestellt:

Name des Arbeitsbereichs
Wähle einen eindeutigen Namen für deinen Arbeitsbereich, der ihn von anderen Arbeitsbereichen, die du erstellst, unterscheidet. Projektnamen sind in der Regel gute Kandidaten für Arbeitsbereichsnamen. In diesem Beispiel wird auto-ml verwendet. Der Name muss innerhalb der ausgewählten Ressourcengruppe eindeutig sein.
Abonnement
Wähle das Azure-Abonnement aus, das du verwenden möchtest.
Ressourcengruppe
Eine Ressourcengruppe bündelt die Ressourcen in deinem Azure-Abonnement und könnte z.B. an deine Abteilung gebunden sein. Ich empfehle dir dringend, jetzt eine neue Ressourcengruppe zu erstellen und alle Dienste, die du für dieses Buch einrichten willst, dieser Ressourcengruppe zuzuordnen. Das macht die Bereinigung später viel einfacher. Klicke auf "Neu erstellen" und gib deiner neuen Ressourcengruppe einen Namen. In diesem Beispiel wird ai-powered-bi verwendet. Wann immer du diese Referenz irgendwo siehst, musst du sie durch den Namen deiner eigenen Ressourcengruppe ersetzen.
Standort
Wähle den Standort, der deinen Nutzern und deinen Datenressourcen am nächsten ist. Sei vorsichtig, wenn du Daten außerhalb von geschützten geografischen Gebieten wie der Europäischen Union (EU) überträgst. Die meisten Dienste sind in der Regel zuerst in den US-Regionen verfügbar.

Wenn du alles eingegeben hast, klicke auf "Überprüfen + Erstellen". Nachdem die erste Überprüfung stattgefunden hat, klicke erneut auf "Erstellen".

Configuring the ML resource
Abbildung 4-8. Konfigurieren der ML-Ressource

Die Erstellung deines Arbeitsbereichs in der Azure-Cloud kann einige Minuten dauern. Wenn der Prozess abgeschlossen ist, siehst du eine Erfolgsmeldung, wie in Abbildung 4-9.

ML resource successfully created
Abbildung 4-9. ML-Ressource erfolgreich erstellt

Um deinen neuen Arbeitsbereich zu sehen, klicke auf "Zur Ressource gehen". Dadurch gelangst du zur Seite mit den ML-Ressourcen(Abbildung 4-10).

ML resource overview
Abbildung 4-10. ML-Ressourcenübersicht

Du hast jetzt den zuvor erstellten Arbeitsbereich ausgewählt. Überprüfe dein Abonnement und deine Ressourcengruppe hier. Wenn du deine ML-Modelle programmatisch trainieren und einsetzen möchtest, kannst du jetzt auch zu deinem bevorzugten Code-Editor wechseln und von dort aus weitermachen.

Da wir aber unsere Reise ohne Code fortsetzen wollen, klicke auf "Studio starten", um ML-Modelle zu trainieren und einzusetzen, ohne eine einzige Codezeile zu schreiben. Dadurch gelangst du zum Willkommensbildschirm des Machine Learning Studios(Abbildung 4-11). Du kannst es auch direkt über ml.azure.com aufrufen.

Azure Machine Learning Studio home
Abbildung 4-11. Azure Machine Learning Studio Startseite

Das Machine Learning Studio ist eine Weboberfläche, die eine Vielzahl von ML-Tools enthält, um Data Science-Szenarien für Data Science-Praktiker aller Qualifikationsstufen durchzuführen. Das Studio wird von allen modernen Webbrowsern unterstützt (nein, das gilt nicht für den Internet Explorer).

Der Willkommensbildschirm ist in drei Hauptbereiche unterteilt:

  • Auf der linken Seite findest du die Menüleiste mit Zugang zu allen Diensten in ML Studio.

  • Oben findest du vorgeschlagene Dienste und kannst direkt weitere Dienste erstellen, indem du auf "Neu erstellen" klickst.

  • Unten siehst du eine Übersicht der kürzlich gestarteten Dienste oder Ressourcen in ML Studio (die jetzt noch leer sein sollte, da du dein Konto gerade erst eingerichtet hast).

Erstellen einer Azure Rechenressource

Du hast ein Azure-Abonnement und einen Arbeitsbereich für Machine Learning Studio erstellt. Du kannst diese Dinge noch als "Overhead" betrachten. Bis jetzt hast du noch keinen Dienst oder keine Ressource gestartet, die tatsächlich etwas tut.

Das wird sich jetzt ändern. In den folgenden Schritten wirst du eine Rechenressource erstellen. Du kannst dir eine Rechenressource als eine virtuelle Maschine (oder einen Cluster virtueller Maschinen) vorstellen, auf der die eigentliche Arbeitslast deiner Aufträge läuft. Auf können moderne Cloud-Plattformen wie Microsoft Azure Rechenressourcen mit wenigen Klicks (oder Eingabeaufforderungen in der Befehlszeile) erstellt und gelöscht werden und sind in wenigen Sekunden bereitgestellt oder heruntergefahren. Du kannst aus einer Vielzahl von Maschinenkonfigurationen wählen - von kleinen, billigen Computern bis hin zu leistungsstarken Maschinen mit Grafikprozessorunterstützung (GPU).

Warnung

Sobald du eine Rechenressource erstellst und diese Ressource online ist, wird dir der in der Liste der Rechenressourcen angegebene Preis in Rechnung gestellt (z. B. 0,6 USD/Stunde). Wenn du noch kostenloses Azure-Guthaben verwendest, wird dies von diesem abgezogen. Wenn nicht, wird deine Kreditkarte entsprechend belastet. Um unnötige Gebühren zu vermeiden, solltest du alle Rechenressourcen, die du nicht mehr brauchst, stoppen oder löschen.

Du wirst eine Rechenressource erstellen, die du für alle Beispiele in diesem Buch verwenden kannst. In der Praxis möchtest du vielleicht verschiedene Rechenressourcen für verschiedene Projekte einrichten, damit du mehr Transparenz darüber hast, welches Projekt welche Kosten verursacht. In unserem Prototyping-Beispiel reicht jedoch eine Ressource aus, und du kannst leicht nachverfolgen, ob die Ressource läuft, damit sie nicht dein Budget für kostenlose Tests auffrisst.

Du kannst eine Rechenressource direkt in Azure ML Studio erstellen. Klicke auf die Option "Compute" in der linken Navigationsleiste.

Dann klickst du auf "Neuen Rechner erstellen", woraufhin ein Bildschirm wie in Abbildung 4-12 erscheint. Um den Rechnertyp auszuwählen, wähle das Optionsfeld "Aus allen Optionen auswählen".

Creating a new compute instance.
Abbildung 4-12. Erstellen einer neuen Compute-Instanz

Hier kannst du alle verfügbaren Maschinentypen sehen(Abbildung 4-13). Je mehr Leistung du zuweist, desto schneller wird ein ML-Training in der Regel sein. Die billigste verfügbare Ressource ist eine Standard_DS1_v2-Maschine mit einem Kern, 3,5 GB RAM und 7 GB Speicherung, die in der Region USA-Ost etwa 0,06 $ pro Stunde kostet.

Gib Standard_DS1 in die Option "Nach VM-Namen suchen" ein und wähle die Maschine mit dem niedrigsten Preis aus, wie in Abbildung 4-13 gezeigt. Du kannst hier wirklich jede Art von Maschine auswählen; achte nur darauf, dass der Preis angemessen ist, denn wir brauchen im Moment keine hohe Leistung.

Choosing a Standard_DS11 machine
Abbildung 4-13. Auswahl einer Standard_DS11-Maschine

Klicke auf die Schaltfläche Erstellen. Du gelangst nun wieder zur Übersichtsseite deiner Rechenressourcen. Warte, bis die Ressource erstellt wurde. Das dauert in der Regel zwei bis fünf Minuten. Die Rechenressource wird automatisch gestartet, sobald sie bereitgestellt wurde (siehe Abbildung 4-14).

Compute resource running
Abbildung 4-14. Rechenressource läuft

Da du diese Ressource erst in Kapitel 7 benötigst, wähle die Ressource aus und klicke auf Anhalten, um zu verhindern, dass sie belastet wird. Am Ende sollte die Übersichtsseite deiner Rechenressource so aussehen wie in Abbildung 4-15. Deine Rechenressource sollte in der Liste auftauchen, aber der Status sollte "Angehalten" sein.

Compute resource stopped
Abbildung 4-15. Rechenressource gestoppt

Azure Blob Speicherung erstellen

Der letzte Baustein, den du für unser Prototyping-Setup brauchst, ist ein Ort zum Speichern und Hochladen von Dateien wie CSV-Tabellen oder Bildern. Der typische Ort für diese Binärdateien ist Azure Blob Storage; Blob steht für Binary Large Object - im Grunde genommeneine Speicherung für fast alles mit nahezu unbegrenztem Umfang. Wir werden diese Speicherung hauptsächlich zum Schreiben der Ergebnisse unserer KI-Modelle oder zum Bereitstellen von Bilddateien für die Anwendungsfälle ab Kapitel 7 nutzen.

Um eine Blob Speicherung in Azure zu erstellen, besuche portal.azure.com und suche nach storage accounts. Klicke auf Erstellen und erstelle ein neues Konto für die Speicherung in derselben Region, in der sich deine ML Studio-Ressource befindet. Gib diesem Konto einen eindeutigen Namen und wähle dann Standardleistung und lokal redundante Speicherung, wie in Abbildung 4-16 dargestellt. Da es sich hier nur um Testdaten handelt, brauchst du für höhere Datenverfügbarkeitsstandards nicht mehr zu bezahlen. Auch hier speicherst du die Daten nur vorübergehend, und die Kosten werden durch dein kostenloses Testbudget mehr als gedeckt.

Creating a storage account
Abbildung 4-16. Erstellen eines Speicherkontos

Sobald die Bereitstellung abgeschlossen ist, klicke auf "Zur Ressource gehen". Du siehst die in Abbildung 4-17 dargestellte Oberfläche.

Azure storage account overview
Abbildung 4-17. Übersicht über das Azure-Speicherkonto

Klicke auf "Zugriffsschlüssel" auf der linken Seite, um den in Abbildung 4-18 gezeigten Bildschirm zu öffnen. Du brauchst diese Zugriffsschlüssel, wenn du programmgesteuert auf Objekte in dieser Speicherung zugreifen willst.

Access keys for the Azure storage account
Abbildung 4-18. Zugriffsschlüssel für das Azure-Speicherkonto

Jetzt, wo du ein Speicherkonto und Schlüssel hast, um Daten zu manipulieren, musst du einen Container erstellen, der so etwas wie ein Dateiordner ist, in dem Dateien organisiert werden können. Klicke auf die Option Container im Menü auf der linken Seite und dann auf "+ Container" oben auf dem Bildschirm, wie in Abbildung 4-19 hervorgehoben.

Creating an Azure Blob Storage container
Abbildung 4-19. Erstellen eines Containers für Azure Blob Storage

Erstellen Sie einen Container namens tables. Setze die Zugriffsebene auf Container, damit du später mit externen Tools wie Power BI leichter auf die Dateien zugreifen kannst. Erstelle einen weiteren Container namens simulation mit denselben Einstellungen.

Wenn du mit sensiblen oder produktiven Daten arbeitest, wählst du hier natürlich "Privat", um sicherzustellen, dass eine Genehmigung erforderlich ist, bevor auf die Daten zugegriffen werden kann. Voilá, der neue Container sollte in der Liste erscheinen und ist nun bereit, einige Dateien zu hosten.

Arbeiten mit Microsoft Power BI

Für, die Benutzerebene, werden wir uns auf Microsoft Power BI verlassen, um Berichte, Dashboards und die Ergebnisse unserer KI-Modelle anzuzeigen. Power BI gibt es in zwei Versionen: Power BI Desktop und Power BI Service.

Power BI Desktop ist derzeit nur für Windows verfügbar. Diese Offline-Anwendung wird auf deinem Computer installiert und hat alle Funktionen, die du von Power BI erwarten kannst. Wenn du ein Microsoft Office-Abonnement hast, ist Power BI höchstwahrscheinlich ein Teil davon. Du kannst Power BI von der Microsoft Power BI Downloadseite herunterladen.

Power BI Service ist eine Online-Version von Power BI, die auf allen Plattformen, einschließlich Macs, läuft. Sie verfügt derzeit noch nicht über alle Funktionen der Desktop-Version, aber es kommen regelmäßig neue Funktionen hinzu. Ich kann dir nicht garantieren, dass alles, was wir in diesem Buch behandeln, auch mit Power BI Service funktioniert, aber es ist einen Versuch wert, wenn du Power BI nicht auf deinem Computer installieren kannst oder willst. Die ersten Schritte mit Power BI Service kannst du auf der Seite Erste Schritte machen.

Wenn du noch nie mit Power BI gearbeitet hast, solltest du dir den 45-minütigen Einführungskurs von Microsoft ansehen, der dir eine umfassende Einführung in die Funktionsweise des Tools bietet.

Warnung

Leider liefert Power BI nicht immer exakt reproduzierbare Ergebnisse. Wenn du den Anwendungsfällen in diesem Buch folgst, wirst du vielleicht feststellen, dass einige deiner Darstellungen und automatischen Vorschläge nicht mit den Screenshots in diesem Buch übereinstimmen. Lass dich davon nicht zu sehr verwirren, denn das Gesamtbild sollte immer noch dasselbe sein, auch wenn hier und da kleine Abweichungen auftreten.

Unter kannst du, falls du Power BI nicht magst oder dein eigenes BI-Tool verwenden möchtest, alles in den Fallstudien (mit Ausnahme der Kapitel 5 und 6) auch in jedem anderen BI-Tool nachbauen, solange es die Ausführung von Python- oder R-Skripten unterstützt.

Damit die Python- oder R-Skripte in Power BI ausführen kann, muss eine dieser Sprachen auf deinem Computer installiert sein und Power BI muss auf den entsprechenden Kernel verweisen. Überprüfe die folgenden Ressourcen, um sicherzustellen, dass Power BI und R bzw. Power BI und Python richtig eingerichtet sind:

Neben den sauberen Python- oder R-Engines brauchst du ein paar Pakete, um später an den Anwendungsfällen zu arbeiten. Für R sind das die folgenden Pakete:

  • httr (für die HTTP-Anfrage)

  • rjson (für die Verarbeitung der API-Antwort)

  • dplyr (für die Datenaufbereitung)

Für die Python-Skripte lauten die Entsprechungen wie folgt:

  • Anfragen

  • json

  • Pandas

Vergewissere dich, dass diese Pakete entweder für die R- oder die Python-Engine installiert sind, die Power BI in deinem Fall verwendet. Wenn du nicht weißt, wie man Pakete in R oder Python installiert, schau dir diese YouTube-Videos an:

Zusammenfassung

Ich hoffe, dieses Kapitel hat dir ein solides Verständnis für einen Prototyp im Kontext der Entwicklung von Datenprodukten vermittelt und erklärt, warum es sehr empfehlenswert ist, jedes KI/ML-Projekt zunächst mit einem Prototyp zu beginnen. Inzwischen solltest du auch dein persönliches Prototyping-Toolkit parat haben, damit du die praktischen Anwendungsfälle in den nächsten Kapiteln angehen kannst. Los geht's!

Get KI-gestützte Business Intelligence now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.